こんにちは角田(tsunoda)です。
今回はDatadogを触ってみたので、グラフの設定の方法など基本的な使い方をざっくりご紹介します。
Datadogってこんな感じかというイメージをもって頂ければ幸いです。
Datadogとは
Datadogとは、モニタリングクラウドサービスです。
サーバのリソースやミドルウェアのもモニタリングが可能です。
install
Datadogによる監視を有効にするには、
Datadog-agentを対象サーバにinstallする必要があります。
まずはDatadogにサインアップ!
[Datadog] (https://www.datadoghq.com/)
自分は2週間のフリートライアルを試しました。
Datadogにログインしたら、メニューバーから以下にアクセス。
Integrations→Agent→installするサーバのOSを選択
するとDD_API_KEYなるものが付与されたinstallコマンドがありますので、
対象サーバで実行します。
今回は以下の環境を用意しました。
gcp環境
CentOS7
n1-standard-1
installが完了すると、 /etc/datadog-agent/
配下に色々できます。/etc/datadog-agent/datadog.yaml
はconfigファイルです。/etc/datadog-agent/conf.d/
配下にはミドルウェアを監視するためのyamlファイルがあります。
起動systemctl start datadog-agent
監視設定の色々
グラフの設定などをご紹介します。
dashboard
DashboardsメニューからDashboard Listを選択すると、
Dashboard一覧が出てきます。
表示も作成順やname順など設定可能です。
また、自分用のListも作成することができ、
よく使うDashboardはそのListにまとめておくと便利です。
Dashboard グラフの設定
●dashboardの鉛筆マークで編集できます。
Metricで色々とリソースを選べます。
cpustats,loadavg,memstats,io,などなど…
●fromでタグが選べ、そのタグでグラフを出せます。
host指定はもちろん、region、zone、project指定なんかも可能です。
●+ボタンを押してRollup/Avarageを選択
periodに60と入れると、60秒ごとにrollupするように設定できます。
この設定で更新頻度を変更可能です。
●Add Query+を押すとMetricを追加できます。
左にaとかbとかMetricごとに出ます。
ここをクリックすると表示、非表示も可能です。
このa、bを使って、算術でグラフを作成できます。
Add Formula+を押すと算術を書く欄が出るので、そこにa、bを使って算術を書きます。
例えば、a – b
aのMetricの値からbを引いた値のグラフを出せます。
これだけ表示したければ、aとかbをクリックして非表示にすれば良し。
掛け算などもできるので、取得できない数値を算術で出す事もできますね!
middlewareのoverview
まずはIntegrationsメニューからIntegrationsを選択します。
必要なmiddlewareのoverviewをDatadogへinstallできます。
overviewに値を入れるには、
ミドルウェアの設定ファイルとdatadogの conf.d/midleware.d/XX.yaml
を設定する必要があります。
例) nginxの監視をoverviewに入れる。
まずはnginxの設定で以下のような設定を追加します。
自分はlocalhost.confに追記しています。
# nginx status
location /nginx_status {
root /status/check/pass/;
stub_status on;
access_log off;
allow 127.0.0.1;
allow XXX.XX.XX.XX;
deny all;
}
次に、datadogの設定をします。/etc/datadog-agent/conf.d/nginx.d/conf.yaml.example
というファイルがあるので、それを同じdirにcpします。
$ cp conf.yaml.example nginx.yaml
$ vi nginx.yaml
・・・
- nginx_status_url: http://127.0.0.1/nginx_status/
# - nginx_status_url: http://localhost/nginx_status/
# tags:
# - instance:foo
#
# - nginx_status_url: http://example2.com:1234/nginx_status/
# ssl_validation: False
・・・
先ほど設定したlocationを設定します。datadog-agent status
コマンドで設定の確認ができます。
$ datadog-agent status
nginx (3.1.0)
-------------
Instance ID: nginx:hogehoe [OK]
Total Runs: XXX
Metric Samples: Last Run: X, Total: XXX
Events: Last Run: X, Total: X
Service Checks: Last Run: , Total: XXX
Average Execution Time : Xms
そして systemctl restart datadog-agent
done!
こんな感じで、middlewareとDatadogの設定で監視も可能になります。
Datadogには基本的なmiddlewareだけじゃなく、
gcp,awsといったクラウドの監視項目も充実しています。
各メニュー
よく使うであろう左メニュー項目の役割をまとめてみました。
●Events
何が再起動したのか、どんなalertが飛んだのかなど、
その時に起こった出来事を確認できます。
ここはmonitorのアラートと連携しています。
FROM欄で表示するものを絞る事も可能です。
●Dashbords
グラフを確認できます。
New Dashbord+を押せば新しいDashboardも作成可能です。
新しいListを作成でき、そこに自分がよく見るdashboardを登録できます。
Integrationsでinstallしておけばそのmiddlewareのoverviewはここで確認可能です。
●Infrastructure
Hostmapでdatadog-agentが起動しているインスタンスを確認できます。
さらにインスタンスを選択すると、
その中でどんなmiddlewareが起動してるか、監視tagsは何が対象になっているか、
datadog-agentのバージョン、systemc(スペック)など確認できます。
●monitor
ここでアラートの設定ができます。 datadog-agent自体も監視しています。
監視設定してあるものはEventsの他にも好きなアドレスへ飛ばせます。
●Metrics
ここで閲覧したいグラフを確認できます。
summaryでMetric Nameの詳細情報が確認できます。
MetricのMetadataを編集できます。
どのhostか、tagはなにかなど確認することができます。
●Integrations
middlewareのmetricをinstallできます。
APIsでKeyの確認だできたり、keyの削除もできます。
Events API Emailでmailを送る事も可能です。
AgentでOSを選んでdatadog-agnetのinstall方法を確認できます。
●Notebooks
グラフの添付、メモの追加ができます。
何か障害のあった時のグラフをメモ付きで残しておくことができます。
まとめ
サービス構成の初期段階、1台サーバの監視目的の為にDatadogを触ってみました。
機能が細かく分かれているので、詳細な監視ができそうなツールです。
最後に料金体系ですが、3つぐらい料金体系があって、
それぞれメトリックの保持期間などが違います。
ざっくりいうと $15/host
という感じ。
datadog_pricing
Datadogの使用感イメージをもって頂ければ幸いです。
あとは触ってみると色んな機能が見えてきて面白いですよ☆
株式会社grasys(グラシス)は、技術が好きで一緒に夢中になれる仲間を募集しています。
grasysは、大規模・高負荷・高集積・高密度なシステムを多く扱っているITインフラの会社です。Google Cloud (GCP)、Amazon Web Services (AWS)、Microsoft Azureの最先端技術を活用してクラウドインフラやデータ分析基盤など、ITシステムの重要な基盤を設計・構築し、改善を続けながら運用しています。
お客様の課題解決をしながら技術を広げたい方、攻めのインフラ技術を習得したい方、とことん技術を追求したい方にとって素晴らしい環境が、grasysにはあります。
お気軽にご連絡ください。