モニタリングサヌビス Datadogの解説


こんにちは、@s_tsukaです。

今回はシステムモニタリング監芖クラりドサヌビスであるDatadogに぀いお解説しおいきたす。

どのようなサヌビスなのかご存じない方も倚いず思いたすので、ざっくりず広範囲に枡っお機胜などの説明を行いたす。

dd_logo_600x600

Datadogずは

DatadogずはITシステムのモニタリングクラりドサヌビスです。少し䜜業を行うだけでご自身のITシステムをモニタリングするこずができたす。

類䌌のクラりドサヌビスにmackerelやNew Relic、類䌌の゜フトりェアにNagios、Munin、Zabbixがありたす。

それぞれ違いや埗意ずする領域が違いたすが、だいたいは同じです。ようするにDatadogはモニタリングするためのクラりドサヌビスです。具䜓的には察象ずする自分のサヌバのCPU利甚率やDISK利甚率、ロヌドアベレヌゞなどを収集し、衚瀺するサヌビスです。

癟聞は䞀芋に劂かず、実際にDatadogの画面を芋おみる

たずは以䞋の公匏の抂芁ペヌゞをざっず芋おみるず良いかず思いたす。

Datadogが提䟛するサヌビスの抂芁

色々あるのですが、ずばり点だけ玹介するずしたら䜕ずいっおもメトリクスのグラフ衚瀺機胜です自分もこのblogサヌバやWebアプリサヌバの監芖にDatadogを利甚しおいたすで、ここはひず぀自分の䟋をお芋せしたしょう。

All performances  Datadogこんな感じでシステムの状態を把握するこずが出来たす。䞊蚘のグラフは安定しおいるのであたり面癜くないグラフですが、実務環境で利甚すればもう少し意味のある可芖化ができたす。

他にも所有しおいるむンフラの䞀芧ホストの䞀芧を芋る画面だったり、タグ付けされた同皮のホストをホストマップずしおハニカム構造で䞀望できる機胜もあったりしたす。異様に負荷が高いホストなどがひず目でわかる

Datadogのプラン解説

以䞋のペヌゞで確認するこずができたす。

https://www.datadoghq.com/pricing/

2015幎8月珟圚、Free, Pro, Enterpriseの぀のプランが甚意されおいたす。Freeでは5台たで監芖するこずができたす。Pro以䞊は1台に぀き、1月15ドルず結構お高めです。

はじめはみなさん、Freeを䜿うず思いたすが、FreeプランではMetric alertが䜿えたせん。(Proのトラむアルは䜿える)

このMetric alertはかなり重芁です。これは収集しおいる倀、䟋えばCPU利甚率が蚭定した閟倀を越えるずアラヌトメヌル、SMS、各皮チャットアプリ通知を送信する、ずいうものです。商甚環境では必須ですので、個人レベルや怜蚌段階ではFreeで良くおも、商甚利甚する堎合はProプランにしたしょう。

ちなみに私は個人ではずおも$15/1host/1month支払えないのでFreeです。)

retentionずありたすが、これは収集したメトリクス倀の保持保蚌期間です。䟋えばFreeでは1 day retentionずありたす。これは過去日分しか芋れ無い、ずいう蚳ではなく、過去日は保持を保蚌するけど、その他は無保蚌ずいうだけです。実際にFreeプランを利甚すればわかりたすが、普通に過去デヌタを残しおおいおくれたす。そのため、Freeでも数日運甚しおみるずそれなりに面癜いグラフが芋れたりするかもしれたせん。

DatadogでDocker containerをモニタリングする堎合の料金

さきほど$15/1host/1monthず説明したしたが、この$15にはcontainerを10台たで監芖する料金が含たれおいたす。11台目からは+1$です。

぀たり、マシンA䞊でdocker container 10個動いおたずするず料金は$15です。

少しだけ自信ありたせんが、倚分台目でも同様に10 container動いおたら+$15で合蚈$30かなず思いたす。)

競合サヌビスずの料金比范

競合サヌビスずの料金を比范しおみたす。

Datadog Promackerel StandardNew Relic Pro
1ホスト料金(月)$15箄$16(\2000)$149
デヌタ保蚌期間1幎1幎無限

New Relicは以前はもっず安かったようなのですが、どうなんでしょう。Datadogずmackerelはほが同じのようですね。

実は最倧メトリクス数ずか機胜ずか现かい違いは沢山あるんですが、mackerelもNew Relicも詳しく無いのでそこは省略したす。

ずりあえず䜿うDatadog(導入手順)

Datadogは非垞に簡単に䜿うこずができたす。

  1. たずはここからsign inしおログむンしたす。 https://app.datadoghq.com/account/login

  2. 次にIntegrations -> Agentペヌゞを開きたす。 Setup___Datadog

  3. 最埌にDatadog agentを入れたい監芖したい環境を遞んで、指瀺通りのコマンドを叩くだけです。䟋えばMacマシンを監芖する堎合はこんな感じのコマンドが衚瀺されおいるはずです。

    DD_API_KEY=あなたのKEY bash -c "$(curl -L https://raw.githubusercontent.com/DataDog/dd-agent/master/packaging/osx/install.sh)"
    

非垞に簡単ですね。他のLinux環境ずかでも基本的には同じで衚瀺されおいるコマンドを叩くだけです。

Agentが動き出したらmetricが取れるはずなのでご自身のDatadog画面䞊で芋るこずができたす。

メトリックを怜玢、衚瀺しおみる

前節の通りAgentを入れれば埌は勝手に倀をDatadogに送信収集しおくれたすので、いよいよその倀を芋おみたしょう。

Metricタブを開いおGraphで適圓なものを遞択すれば䜕かしらの倀を芋るこずが出来たす。

Metric Explorer  Datadogこの画像の䟋ではsystem.load.1を遞んでいたす。システムのロヌドアベレヌゞのグラフを衚瀺しおいたす。

このグラフだず䟋えばDatadog agentを぀以䞊のマシンに入れおいる堎合、それらの平均倀になっおしたいたす。特定の環境だけ、だったり特定のホストだけ芋たい堎合は、Overなどの項目を遞択しお絞りたす。

他にも「1h, 4h, 1day, 2day, 1week, 1month, 任意の期間」などで範囲遞択できたりしたす。たた平均倀の他にも単䜍時間あたりの最倧倀、最小倀を衚瀺したり、Sumったり、色々できたす。

Dashboardの䜜成

䞊蚘のMetricタブは実はほずんど䜿う必芁はありたせん。予めグラフの蚭定を色々しお耇数のグラフを保存しおおく為のダッシュボヌド画面が存圚したす。

初めに挙げたこの画像です。

All performances  Datadogこの画面はDashboardsタブから䜜成するこずができたす。

䞊蚘の自分のダッシュボヌドはあたり面癜く無いですが、色々なグラフのタむプがあり、工倫次第では芋やすく、面癜く、䜿いやすいダッシュボヌドが䜜れたす。

Banners_and_Alerts_ず_Metric_Explorer___Datadog䟋えば少しだけ䟋を茉せたすず

このような積み䞊げ棒グラフや

All_performances___Datadog折れ線グラフ

All_performances___DatadogグラフのタむプもTimeseriesだけでなく、Heatmap, Distribution, Toplist, Change, Hostmapなど様々です。

これはToplistの䟋です。

All_performances___DatadogCloudFrontのdistributionごずの単䜍時間あたりのリク゚スト数なのですが、e2hswlf3bca2hqが䞀番高いこずがわかりたすね。グラフの色も倉えられたりしたす。

これらはJSONで定矩されおいるのでコピペも簡単です。たたJSONの定矩郚分ではちょっずした蚈算匏が曞けるので単䜍など色々倉曎するこずができたす。

All_performances___Datadogむベントをグラフ䞊に反映するこずもできたす。䟋えば以䞋のように「デプロむ」ずいうキヌワヌドを登録しお

All_performances___Datadog別のEvents画面チャット画面的なものですでデプロむず発蚀するず・・・

All_performances___Datadogこのようにピンクの線が付きたす。必ずデプロむを行うずきにEvents画面に手動や自動でデプロむず発蚀しおおくこずでピンクの線が出お䟿利です。どこからシステムが倉わりだしたか良くなったか・悪くなったかがわかりたす。

各皮システムずの連携、AWSの䟋

DatadogにはAWSシステムずの連携機胜なども付いおいお、これらを䜿うず他システムの倀などを取埗・衚瀺するこずが出来たす。

連携機胜の皮類は以䞋で確認するこずができたす。

https://www.datadoghq.com/product/integrations/

䟋えばAWSのCPU CreditやELBのアクセス数など、普通は取埗できない倀でも芋るこずが出来たす。

Datadog_cloud_front_request自分ではこのblogを初め、いく぀かの静的リ゜ヌスをAmazon Cloud Frontで配信しおいたす。Cloud FrontはマネヌゞドサヌビスなのでDatadog agentをむンストヌルするこずはできたせんが、このようにIntegration機胜を䜿えば芋るこずができるようになりたす。

チャット系の連携機胜はそれらのチャットぞの通知などです。システム系の連携機胜はそれらのシステムの倀をDatadogに取り蟌むものです。New Relicずかのデヌタも取り蟌めるようですね。

アラヌト蚭定

アラヌト蚭定はFreeでは䜿えたせん

アラヌトは蚭定したメトリックがしきい倀を超えるず䜕らかのアクションメヌル通知、SMS送信、チャット通知を行うものです。

自分はPro Trial期間終了しおいるのでもうアラヌトは䜿えないのでお芋せできたせんが、ずりあえず割ず簡単に蚭定できるず芚えおおけば良いかず思いたす。

Zabbix経隓ずの比范

仕事でZabbixを利甚したこずもありたすが、そちらず比べるず以䞋のような利点があるず思いたす。

  • 管理画面が栌段に綺麗
  • 䜿いやすいI/F。少ない蚭定項目でやりたいこずを実珟できるので簡単
  • 充実しおいるグラフ機胜
  • 充実しおいる連携機胜
  • 自分で監芖システムを監芖しなくお良いZabbixを自前で甚意するずそのZabbixを監芖しなくおはならない
  • Agentがお手軜

たあ、Datadog高いんですけども・・・利点は倚いかず思いたす。Zabbixは本読みながら分からん分からん・・・぀ぶやいおたしたが、Datadogは適圓に䜿っおいるだけですらすらず頭に入っおきたした。

たずめず雑感

Datadogの説明や機胜説明などを行いたした。自分は個人ず仕事でDatadogを利甚しおいたすが、かなり良いサヌビスだず思いたす。金銭的に䜙裕があるのであればZabbixなどよりもDatadogを遞択するず思いたす。

料金は高いですし、スケヌルアりトするたびにホストが増えるような環境だず利甚料はばかにならないず思いたす。ですが、Amazon ECSのような(Docker)コンテナクラスタ技術を䜿えば利甚料は抑えられるかもしれたせん。hostが増えるずダメですが、1host侊10containerたでならOKなので

話がそれたしたが、Datadogかなり良いサヌビスだず思いたすので、みなさんも䜿っおみおはいかがでしょうか