電通総研 テックブログ

電通総研が運営する技術ブログ

【超絶図解】EC2×Datadogでモニタリング入門

はじめに

初めまして。エンタープライズ第一本部、2年目の佐藤悠です。

Datadogは様々な環境でのモニタリングが可能で、監視対象の統合に向いておりオンプレミスとクラウド環境のハイブリッドの場合や複数クラウドの組み合わせなど、インテグレーションの多様さで柔軟に対応できるのが強みであると思います。

個人的には使いやすくて、デザインが好きなので気に入っています。

この記事ではAmazonLinuxのマシンイメージを使用したEC2インスタンスのメトリクスを、手順のスクショや図解をもとにダッシュボードに表示するところまで実施します。

作業手順

無料トライアルを開始します。

以下のサイトにアクセスし、画面中央にある無料トライアルボタンを押下します。

https://www.datadoghq.com/

以下の画面で必要事項の入力が求められるので、これを埋めます。

一応、リージョンが日本になっていることを確認してください。


入力後サインアップのボタンを押下することで以下のアンケートの画面に遷移します。

全て任意の内容なので実施はお任せします。画面下部までスクロールしNextのボタンを押下します。


遷移先では以下の画面になります。

今回はAWS上のマシンイメージがAmazonLinuxのEC2インスタンスを立ち上げて監視対象にします。

左側のLinuxを選択して、コマンドをコピーしておきます。

では、AWSでEC2を立ち上げます。

今回はコマンドをEC2上で実行する必要があるので、セッションマネージャー(以降:SSM)でEC2に接続する設定も同時に行います。

インスタンス名などは任意のものを使用しますが、OSに関しては指定します。

インスタンスタイプもデモなので最も小さいサイズのものにしています。


ネットワーク設定はSSMを使用するため、アウトバウンドの443ポートを許可しています。

Datadogのネットワークトラフィックの資料を参考にするとAgentを使用するユースケースに限定すれば、アウトバウンドの443ポートの解放のみで動作します。

ネットワーク設定に関する詳細はリンク先の資料をご確認ください。

次に、以下の部分の高度な設定を編集して、SSMに必要なロールを持つインスタンスプロファイルをアタッチします。

ない場合には赤枠の部分から作成します。

遷移先の画面でロールの作成を押下して以下の画面に遷移します。

ラジオボタンユースケースを選択して、System Manager用のロールを作成出来ればOKです。


ここで任意のロール名をつけて先ほどのEC2インスタンスの画面でインスタンスプロフィールに作成したものを選択すれば、準備完了です。

プロフィールが表示されない場合は少し時間をあけてリロードボタンを押下すれば出ます。

インスタンスが立ち上がったことを確認し、作成したインスタンスIDを押下し、インスタンス概要の画面で右上の接続ボタンを押下します。

タブの切り替えでセッションマネージャーを選択し、接続を押下します。

(接続ボタンがグレーになっているときは、ネットワークの設定、ロール、またはポリシーの設定ができていない場合が多いです)


インスタンスに接続後はCUIの画面で先ほどのDatadogで表示されていたコマンドを実行します。

このままコピー&ペーストして実行でOKです。

これでDatadogのエージェントがEC2インスタンスにインストールできました。

現時点での構成を図にして解説します。

今回はデモなので図のような構成になっています。

実際にはEC2をプライベートサブネットに配置し、NATゲートウェイを使用して外部と通信するのが望ましいですが、コストの関係で実施していません。

では、Datadog画面左下のIntegrationsにカーソルを合わせ赤枠のView Agentsを押下して実際にデータが取得できているかを確認しましょう。


遷移先でView Agentsを選択し表示を見ると以下のとおりでAgentをインストールしたEC2インスタンスがDataDogと接続できていることが確認できました。

以下の画像で考えるとインスタンスIDがHOSTNAMEと一致しているかで確認できます。

次に画面左側のツールの赤枠、Infrastructureを押下します。

ここで遷移した先に、監視対象のEC2インスタンスが表示されています。

右赤枠のどこでもいいので押下すると詳細な表示を確認することができます。

表示されるインスタンスに関する詳しいメトリクスは以下のようになっています。

ここで取得した内容をダッシュボードに表示します。

これは環境ごとのダッシュボードを作成し、一元管理することによって見通しが良くなることが期待できます。

以下の画像のように、開発・STG・PRODのように分離することが実際の運用ではありそうですね。


では実際に作成します。

左側ツール赤枠にカーソルを合わせNew Dashboardを押下します。


以下の表示で名前とDashboardの概観を決定します。
以下の画面に遷移したら右側上赤枠の検索窓でHOSTと検索し、右下赤枠のHosts Overviewを押下します。
以下の画面で左側赤枠のPowerpack filtersで先ほどのhostを選択します。

右下のconfirmを押下してDashboardウィジェットに追加します。

画面のようにモニタリング内容をDashboardに追加することができました。


モニタリングしているCPUの使用率を高めて、画面に反映されるか確認します。

EC2インスタンスに接続して以下のコマンドを実行します。

sudo yum install stress
stress -c 1

CPUに負荷をかけるstressをインストールして、実際にCPUに負荷をかけます。
この結果がすぐにモニターに反映されUsageが上昇しました。

これでEC2 AmazonLinuxを監視し、選択した内容をダッシュボードに追加することができましたね!

まとめ

複雑化し続けるクラウドアーキテクチャーをDatadogで一元管理!

14日間はホスト数に制限はありますが、全ての機能が無料で使えます。

以降は機能に制限はかかりますが検証用には使えるのでありがたいですね!

無料期間のスタートダッシュに本記事を参考にしていただければ幸いです。

私たちは一緒に働いてくれる仲間を募集しています!

電通総研 キャリア採用サイト 電通総研 新卒採用サイト

執筆:@sato.yu、レビュー:@yamada.y
Shodoで執筆されました