Posted at

CloudWatch Container Insights Preview を本番に導入してみた

streampack の Tana です。

今日のネタは ECS Container メトリックスモニタリングについてです。

ちょっと前までのECSのメトリックスでは、


  • CPU Utilization

  • Memory Utilization

のみしか取得できませんでしたが、つい先日Preview版が発表され

より詳細なメトリックスが取得できるようになりました。

https://aws.amazon.com/about-aws/whats-new/2019/07/introducing-container-insights-for-ecs-and-aws-fargate-in-preview/


何が取得できて便利なの?

実際に取得できるメトリックス情報をみていきましょう。

CloudWatch の画面へ遷移し、

トップに表示されている CloudWatch: Overview のプルダウンから

Container Insights を選択すると下記のような情報が表示されます。

Service情報

insights-service.png

Number of Pending Task や Number of Desired Task から何かしらの理由で

アプリケーションが落ちたり、立ち上がらなかったことがグラフから読み取れそうです。

Task情報

insights-tasks.png

タスクごとの平均メモリ使用率を参考にし、タスク毎のメモリ割り当ての検討材料になりそうです。


どうやって設定するの?

クラスター作成時に Enable にするだけです。

スクリーンショット 2019-07-25 17.51.40.png

既に動いている場合は、適用できないようなので、

もし適用したい場合は新規クラスターが必要です。

設定されたら、Default Monitoring ではなく Container Insights と表示されます。

ecs-insights-check.p![uploading-0]()<br>
<br />ng


結論

既存クラスターに適用できない点は不便に感じましたが、

新規にクラスター作って、ALBに新旧クラスターにぶら下げて、

古いクラスターを削除すれば、サービスダウンなく移行は簡単でした。

今後はより詳細な情報が取得でき、より便利な方向になっていくと思われますので、

今後のアップデートに期待です。