Amazon Web Services ブログ

オブザーバビリティが強化された Container Insights が Amazon ECS で利用可能に

2023 年、 Amazon CloudWatch Container Insights におけるオブザーバビリティの強化を発表しました。これは、Amazon Elastic Kubernetes Service (Amazon EKS) のオブザーバビリティを向上させるための新機能です。この機能は、詳細なパフォーマンスメトリクスとログを提供することで、コンテナの問題をより迅速に検出して修正するのに役立ちます。

この機能を拡張して、12 月 1 日、Amazon Elastic Container Service (Amazon ECS) で実行されるコンテナワークロードのオブザーバビリティの強化を開始します。この新機能により、アプリケーション全体の平均検出時間 (MTTD) と平均修復時間 (MTTR) が短縮され、ユーザーエクスペリエンスに悪影響を及ぼす可能性のある問題を防ぐことができます。

Amazon ECS のオブザーバビリティが強化された Container Insights を簡単に見てみましょう。

オブザーバビリティが強化された Container Insights は、コンテナモニタリングにおける重大なギャップを解消します。以前は、メトリクスをログやイベントに関連付けるには時間がかかり、多くの場合、手動での検索とアプリケーションアーキテクチャの専門知識が必要でした。この機能により、CloudWatch と Amazon ECS は、タスクレベルとコンテナレベルの両方で CPU 使用率などの詳細なパフォーマンスメトリクスを自動的に収集すると同時に、視覚的にドリルダウンして根本原因の分析を簡単に行うことができます。

この新機能により、次のユースケースが可能になります。

  • 詳細なリソース使用パターンを確認し、テレメトリデータを関連付けることで、根本原因を迅速に特定できます。
  • AWS ベストプラクティスに基づいて厳選されたダッシュボードを使用して ECS リソースをプロアクティブに管理します。
  • 最新のデプロイとデプロイ失敗の根本原因をトラッキングし、一致するインフラストラクチャの異常を特定することで、より迅速に問題を検出し、必要に応じて迅速なロールバックを行えます。
  • 手動で設定しなくても、複数のアカウントのリソースを簡単に監視できます。組み込みのクロスアカウントサポートにより、一元的なオブザーバビリティを得て運用上のオーバーヘッドを削減できます。
  • Application Signals や CloudWatch Logs といった他の CloudWatch サービスと統合することで、インフラストラクチャと実行中のサービスを相互に関連付け、影響を受けるサービスを特定するシームレスな体験が得られます。

Amazon ECS でオブザーバビリティが強化された Container Insights を使用する
オブザーバビリティが強化された Container Insights を有効にするには、次の 2 つの方法があります。

  1. クラスターレベルのオンボーディング – 特定のクラスターに対して個別に有効化できます。
  2. アカウントレベルのオンボーディング – アカウントレベルで有効にすることもできます。これにより、アカウントで作成されたすべての新しいクラスターでオブザーバビリティが自動的に有効になります。この方法では、新しいクラスターごとに手動で有効化する必要がなくなるため、時間と労力を節約できます。

この機能をアカウントレベルで有効にするには、Amazon ECS コンソールに移動して [Account settings] (アカウント設定) を選択します。[CloudWatch Container Insights observability] (CloudWatch Container Insights のオブザーバビリティ) セクションで、現在無効になっていることがわかります。[Update] (更新) をクリックします。

このページには、[Container Insights with enhanced observability] (オブザーバビリティが強化された Container Insights) という新しいオプションがあります。このオプションを選択し、[Save changes] (変更を保存) を選択します。

クラスターレベルでこの機能を有効にする必要がある場合は、新しいクラスターを作成するときに有効にできます。

既存のクラスターでもこの機能を有効にできます。そのためには、[Update cluster] (クラスターを更新) を選択し、オプションを選択します。

有効にすると、クラスター概要コンソールの [Metrics] (メトリクス) タブに移動すると、タスクレベルのメトリクスを確認できます。クラスター全体の状態およびパフォーマンスメトリクスにアクセスするには、[View Container Insights] (Container Insights を表示) を選択します。これにより、Container Insights ページにリダイレクトされます。

さまざまなクラスターにわたるすべてのワークロードの全体像を把握するには、Amazon CloudWatch に移動してから Container Insights に移動します。

このビューは、クラスターの状態を直感的かつ高レベルで要約できるハニカムビジュアライゼーションを提供することで、クラスター、サービス、タスク、およびコンテナを効果的に監視するという課題に対処します。ダッシュボードはデュアルステートモニタリングアプローチを採用しています。

  1. アラーム状態 (赤または緑) – お客様が定義したしきい値とアラートを反映し、チームが特定の要件に基づいて監視を設定できるようにします
  2. 使用状況 (濃い青または水色) – CloudWatch に組み込まれているベストプラクティスを使用して、コンテナ全体のリソース使用パターンを監視します。濃い青色はクラスターの使用率が高いことを示しているため、チームはパフォーマンスに影響が出る前に潜在的なリソースの制約を事前に特定できます

クラスターの 1 つに問題があるとしましょう。クラスターにカーソルを合わせると、そのクラスターの下に作成されたすべてのアラームが、クラスターレイヤーからコンテナレイヤーまで、さまざまなレイヤーで表示されます。

また、すべてのクラスターをリスト形式で表示することもできます。アカウント ID とクラスター所有権のラベルを表示するリスト形式は、アカウント間のオブザーバビリティに不可欠です。これにより、DevOps エンジニアは潜在的なアプリケーションの問題をすばやく特定してアカウント所有者と協力して解決できます。

では、さらに詳しく見ていきましょう。クラスターリンクを選択すると、Container Insights の詳細ダッシュボードビューにリダイレクトされます。ここで、このクラスターのメモリ使用率が急上昇していることがわかります。

コンテナレベルの詳細を詳しく調べることができるため、この問題の原因となっているサービスをすばやく特定できます。

便利だと思われるもう 1 つの機能は、フィルターオプションです。これは、このクラスター内のコンテナ、サービス、またはタスクについてより詳細な調査を行うのに役立ちます。

この問題の根本原因を理解するためにアプリケーションログを詳しく調べる必要がある場合は、タスクを選択し、[Actions] (アクション) を選択し、表示するログを選択できます。

AWS X-Ray トレースを使用する以外に、ここでは別の 2 種類のログを調べることができます。まず、パフォーマンスログ (メトリクスデータを含む構造化されたログ) を使用して、コンテナレベルの根本原因を掘り下げて特定できます。次に、収集したアプリケーションまたはコンテナのログを調べます。これらのログにより、コンテナ内のアプリケーションの動作に関する詳細なインサイトが得られ、問題の原因となった一連のイベントを追跡するのに役立ちます。

ここでは、アプリケーションログを使用します。

これにより、アプリケーションのトラブルシューティング過程が効率化されます。この場合、問題はサードパーティーアプリケーションへのダウンストリームの呼び出しにあり、タイムアウトが返されます。

この拡張機能も Amazon CloudWatch Application Signals と連携して、アプリケーションを自動的にインストルメント化します。現在のアプリケーションの状態を監視し、サービスレベル目標に対する長期的なアプリケーションパフォーマンスを追跡できます。

[Application Signals] タブを選択します。

この Amazon CloudWatch Application Signals との統合により、エンドツーエンドの可視性が得られ、コンテナのパフォーマンスをエンドユーザーエクスペリエンスと関連付けるのに役立ちます。

グラフでデータポイントを選択すると、関連するトレースが表示され、相関しているすべてのサービスとその影響が表示されます。関連するログにアクセスして根本原因を理解することもできます。

その他の情報
ここで、重要な点をいくつかご紹介します。

  • 利用できるリージョン – ECS 向けのオブザーバビリティが強化された Container Insights が、中国リージョンを含むすべての AWS リージョンでご利用いただけるようになりました。
  • 料金 – ECS 向けのオブザーバビリティが強化された Container Insights には、メトリクスの定額料金がかかります。Amazon CloudWatch の料金ページをご覧ください。

今すぐ始めて、コンテナワークロードのオブザーバビリティの向上をご体験ください。詳細については、Amazon CloudWatch のドキュメントページをご覧ください。

監視がうまくいきますように。
Donnie Prakoso

原文はこちらです。