streampack の Tana です。
今日のネタは ECS Container メトリックスモニタリングについてです。
ちょっと前までのECSのメトリックスでは、
- CPU Utilization
- Memory Utilization
のみしか取得できませんでしたが、つい先日Preview版が発表され
より詳細なメトリックスが取得できるようになりました。
何が取得できて便利なの?
実際に取得できるメトリックス情報をみていきましょう。
CloudWatch の画面へ遷移し、
トップに表示されている CloudWatch: Overview のプルダウンから
Container Insights を選択すると下記のような情報が表示されます。
Number of Pending Task や Number of Desired Task から何かしらの理由で
アプリケーションが落ちたり、立ち上がらなかったことがグラフから読み取れそうです。
タスクごとの平均メモリ使用率を参考にし、タスク毎のメモリ割り当ての検討材料になりそうです。
どうやって設定するの?
クラスター作成時に Enable にするだけです。
既に動いている場合は、適用できないようなので、
もし適用したい場合は新規クラスターが必要です。
設定されたら、Default Monitoring ではなく Container Insights と表示されます。
結論
既存クラスターに適用できない点は不便に感じましたが、
新規にクラスター作って、ALBに新旧クラスターにぶら下げて、
古いクラスターを削除すれば、サービスダウンなく移行は簡単でした。
今後はより詳細な情報が取得でき、より便利な方向になっていくと思われますので、
今後のアップデートに期待です。