LoginSignup
7
6

More than 5 years have passed since last update.

オートスケールするEC2インスタンスをDatadogで監視する

Last updated at Posted at 2018-11-19

なぜかくのか

Auto ScaleするAWS EC2インスタンスの監視運用をするにあたって
気になることが多々あるかと思います。

  • スケールアウトするたびに増えたサーバーの監視設定はしたくない
  • スケールインするたびに死活監視のアラートが飛んできたらつらい
  • スケールアウトしたホストの数全部課金されるようだときびしい

Datadogでは上記の問題たちを特に気にしなくて済んでとてもよかったです。
という覚書です。

かいつまんで、Datadogのいいところ

スケールアウト都度の監視設定追加は不要

Dataodogの監視アラート設定はホスト単位ではなく
監視対象のサーバに付与したタグを使ってグルーピングした単位で行うので、
監視対象のインスタンスに適切なタグの設定さえされていれば
サーバが増えようとも都度の監視設定は不要です。

スケールインで消えたサーバのアラートは自動ミュート

Integrationを設定したAWSアカウント内のスケールイベント発生状況を検知し、
スケールインにより削除されたサーバは自動でアラートをミュートしてくれます。
なので、いちいち死活監視のアラートを気にすることはありません。

(そして一定時間経過後、それまでのモニタリングデータは残したまま管理ホスト一覧から退場もしてくれてお掃除要らず)

課金について

サーバが停止し、メトリクスの送信がなくなった時点で課金対象からは除外されるようです。
また、スケールアウト→スケールインを繰り返してサーバの延べ台数が増えてしまった場合も
課金対象は起動したサーバ台数の合計ではなく、月内で監視対象サーバ数が最大だったタイミングの台数です。

汚い図で恐縮ですがこんな感じ
image.png

課金の判定基準は、メトリクスデータをDatadog側で受信しているかどうかです。

The billable count of hosts and containers is calculated at the end of the month using the maximum count (high-water mark) of the lower 99 percent of usage for those hours.

作業概要メモ

各項目、具体的な実装手順は説明せず公式ドキュメントを貼るのみにとどめます。

AutoScalingグループを作成

スクリーンショット 2018-11-17 21.20.10.png

AWS Integration設定

AutoScaleイベントの発生を検知するため、
以下手順でDatadogにAWS Integrationを設定します。
https://docs.datadoghq.com/integrations/amazon_web_services/#installation

Monitoring(監視アラート)設定

DatadogのMonitoring設定は、ホストごとではなくタグを使ってグルーピングします。
ここで指定したタグと同じタグさえついていれば、
スケールアウトでLaunchされた新規ホストも自動で監視対象に組み込まれます。

例えば死活監視の設定画面は以下のような感じです。
(赤枠部分が対象ホストの指定)
image.png

オートスケールイベントを起こしてみる

ここまで設定したら、動作確認をします。

サーバに負荷をかけてスケールアウトさせてみます。
(初期状態のスクショを撮り忘れました…)

スケールアウトした結果

  • インスタンスが2台に増えました(Launchしたサーバは i-052e6ba9b9f614f04)
    スクリーンショット 2018-11-20 0.45.44.png

  • Datadogのイベントストリーム画面にて新たなインスタンスがLaunchされたことを確認できます
    image.png

  • Datadog Monitor対象も自動で2台に増えました!手動での監視設定追加はいりません。
    image.png

スケールインした結果

今度は負荷をかけるのをやめて、サーバ台数を縮小させます。

  • インスタンスがスケールインしました(i-0db34e11110846f54 がTerminate)
    image.png

  • Datadogのイベントストリーム画面にてインスタンスのTerminateを確認できます
    image.png

  • 対象サーバがアラート状態になりますが、自動でミュートされるので通知は飛びません

    • 赤がアラート、網掛けがミュートを表します image.png

まとめ

この辺りの自動化は何かしら工夫すればできるだろうとは思っていましたが、
デフォルトでここまでやってくれると思いませんでした。Datadog好き!!

7
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
6