環境
インストールを行った環境は、以下の通りです。
- OS:CentOS 7.5
インストールするものは、以下です。
- Datadog Agent 6.11.2
Datadog Agentのインストール
インストールスクリプトを実行する。
このページから、インストール対象となるOSを選択します。
今回は「CentOS/RedHat」を選びました。
ここに、以下のようなインストールコマンドが記載されていますので、そのままコピペして実行しましょう。
DD_API_KEY=******** bash -c "$(curl -L https://raw.githubusercontent.com/DataDog/datadog-agent/master/cmd/agent/install_script.sh)"
「********」の部分は、各自のDatadog環境にあったAPIキーが表示されていると思います。
# DD_API_KEY=******** bash -c "$(curl -L https://raw.githubusercontent.com/DataDog/datadog-agent/master/cmd/agent/install_script.sh)" % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 11365 100 11365 0 0 73187 0 --:--:-- --:--:-- --:--:-- 73322 * Installing YUM sources for Datadog * Installing the Datadog Agent package Loaded plugins: fastestmirror, langpacks Cleaning repos: base datadog epel extras influxdb treasuredata updates zabbix : zabbix-non-supported 30 metadata files removed 17 sqlite files removed 0 metadata files removed Loaded plugins: fastestmirror, langpacks Determining fastest mirrors Resolving Dependencies There are unfinished transactions remaining. You might consider running yum-complete-transaction, or "yum-complete-transaction --cleanup-only" and "yum history redo last", first to finish them. If those don't work you'll have to try removing/installing packages by hand (maybe package-cleanup can help). --> Running transaction check ---> Package datadog-agent.x86_64 1:6.11.2-1 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: datadog-agent x86_64 1:6.11.2-1 datadog 124 M Transaction Summary ================================================================================ Install 1 Package Total download size: 124 M Installed size: 407 M Downloading packages: warning: /var/cache/yum/x86_64/7/datadog/packages/datadog-agent-6.11.2-1.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 4172a230: NOKEY Public key for datadog-agent-6.11.2-1.x86_64.rpm is not installed Retrieving key from https://yum.datadoghq.com/DATADOG_RPM_KEY.public Importing GPG key 0x4172A230: Userid : "Datadog Packages <package@datadoghq.com>" Fingerprint: 60a3 89a4 4a0c 32ba e3c0 3f0b 069b 56f5 4172 a230 From : https://yum.datadoghq.com/DATADOG_RPM_KEY.public Retrieving key from https://yum.datadoghq.com/DATADOG_RPM_KEY_E09422B3.public Importing GPG key 0xE09422B3: Userid : "Datadog, Inc <package@datadoghq.com>" Fingerprint: a4c0 b90d 7443 cf6e 4e8a a341 f106 8e14 e094 22b3 From : https://yum.datadoghq.com/DATADOG_RPM_KEY_E09422B3.public Running transaction check Running transaction test Transaction test succeeded Running transaction Warning: RPMDB altered outside of yum. Installing : 1:datadog-agent-6.11.2-1.x86_64 1/1 Enabling service datadog-agent Created symlink from /etc/systemd/system/multi-user.target.wants/datadog-agent.service to /usr/lib/systemd/system/datadog-agent.service. No datadog.yaml file detected, not starting the agent Verifying : 1:datadog-agent-6.11.2-1.x86_64 1/1 Installed: datadog-agent.x86_64 1:6.11.2-1 Complete! * Keeping old datadog.yaml configuration file /bin/systemctl * Starting the Agent... Your Agent is running and functioning properly. It will continue to run in the background and submit metrics to Datadog. If you ever want to stop the Agent, run: systemctl stop datadog-agent And to run it again run: systemctl start datadog-agent
インストールは以上で完了です。
Datadog Agentも自動的に起動していました。
# ps -ef | grep datadog dd-agent 29949 1 0 21:38 ? 00:00:03 /opt/datadog-agent/bin/agent/agent run -p /opt/datadog-agent/run/agent.pid dd-agent 29951 1 0 21:38 ? 00:00:00 /opt/datadog-agent/embedded/bin/trace-agent --config /etc/datadog-agent datadog.yaml --pid /opt/datadog-agent/run/trace-agent.pid
確認
systemdからどう見えているのか確認してみました。
# systemctl list-unit-files | grep -i datadog datadog-agent-network.service static datadog-agent-process.service disabled datadog-agent-trace.service disabled datadog-agent.service enabled
process と trace は無効になっています。
これは改めて調べてみることにします。
Datadogの Infrastructure List を見てみると、今回Datadog Agentをインストールしたホストが表示されていました。
(Datadog Agentのインストール・起動が終わってから、Listに表示されるまでに数分程度かかると思います。)
環境
設定ファイル
Datadog Agentの設定ファイルは以下のディレクトリ配下にあります。
/etc/datadog-agent/
実際に見てみると、こんな感じでした。
# ls -l /etc/datadog-agent/ total 76 -rw------- 1 dd-agent dd-agent 64 May 24 21:10 auth_token drwxr-xr-x 2 dd-agent dd-agent 6 May 21 23:46 checks.d drwxr-xr-x 116 dd-agent dd-agent 4096 May 24 21:16 conf.d -rw-r----- 1 dd-agent dd-agent 31307 May 24 21:37 datadog.yaml -rw-r--r-- 1 dd-agent dd-agent 31274 May 21 23:46 datadog.yaml.example -r--r----- 1 dd-agent dd-agent 421 May 21 23:46 network-tracer.yaml.example
ログ
Datadog Agentのログは、以下のディレクトリ配下に出力されます。
/var/log/datadog
実際に見てみると、こんな感じでした。
$ ls -l /var/log/datadog/ total 56 -rw-r--r-- 1 dd-agent dd-agent 49519 May 24 21:22 agent.log -rw-r--r-- 1 dd-agent dd-agent 1509 May 24 21:17 process-agent.log
その他
Datadogの監視においてどのように情報をやり取りするのか気になっていたのですが、ドキュメントに以下のような記載がありました。
Datadog Agent は、次の3つの要素で構成されています: Collector, DogStatsD, Forwarder
・Collector は、ターゲットホストのCPU やメモリ等の一般的なシステムメトリクスを取得すると共に、インストールされているIntegrations の情報を取得します。
・DogStatsD は、ターゲットホストで実行されているアプリケーションやコマンドラインスクリプトからカスタムメトリクスを送信することができるstatsdのサーバです。
・Forwader は、dogstatsd とCollector の両方からデータを受け取り、queueの順番に従ってDatadogに送信します。
Zabbix AgentのActiveチェックと同じような動きになっているようです。
Manager側からデータを取りに行く動きは存在しないのかどうかまでは、ドキュメントを読み切れていないので、引き続き確認してみようと思いす。