AWSは、ラスベガスで開催されるre:Inventの2023年版に向け、モニタリングとオブザーバビリティをテーマにしたいくつかの改良をリリースした。このリリースには、EC2上のAmazon EKSの強化されたオブザーバビリティを持つAmazon CloudWatch Container Insightsが含まれる。このリリースは、コンテナ化されたワークロードの可視性を提供するフルマネージドサービスである。その他のリリースには、Prometheusコレクターの新しいAmazon Managed Service とAmazon Managed Grafanaコミュニティ・プラグインが含まれる。
Amazon CloudWatch Container Insights with Enhanced Observability for Amazon EKSのリリースでは、APIサーバーやetcdを含むKubernetesコントロールプレーンコンポーネントからのテレメトリが追加される。このサービスはまた、ポッド単位、コンテナ単位、Kube-Stateメトリクスを含む、健全性とパフォーマンスのメトリクスを提供する。
Container Insightsダッシュボードは、CPUとメモリの事前定義されたしきい値を使用して、サポートが必要な可能性のあるリソースを表示する。ダッシュボードには、クラスタ、ノード、ポッド、ワークロード、コンテナ別にトップ10リストを表示するオプションが用意されている。
特定のリソースにドリルインすると、パフォーマンス・モニタリング・ダッシュボードが開く。このダッシュボードには、クラスタ全体のリソース利用率、ノード・レベルのメトリクス、ポッドレベルのメトリクス、コンテナ・レベルの利用率メトリクスなど、トラブルシューティングを支援するための詳細情報が追加されている。
The Amazon CloudWatch Container Insights containers performance monitoring dashboard (credit: AWS)
システムとアプリケーションのログは、Amazon CloudWatch Container Insightsからアクセスでき、データのクエリを簡素化するために事前に入力されたクエリが提供されている。また、既存のダッシュボードに新しいグラフを追加したり、ダッシュボードのビューに基づいてアラームも作成できる。
強化されたオブザーバビリティは、Amazon CloudWatch Observability EKSアドオンを使用して有効にできる。アドオンはCloudWatchエージェントとFluent Bitをインストールする。アドオンをインストールするには、IAMパーミッションを調整する必要がある。
aws iam attach-role-policy --role-name my-worker-node-role --policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy
aws eks create-addon --cluster-name my-cluster-name --addon-name amazon-cloudwatch-observability
このリリースには、メトリック・ストレージとログ・インジェストを1つの価格帯にまとめた新しい価格モデルが含まれている。US Eastリージョンでは、100万オブザベーションあたりのコストは、最初の10億オブザベーションで0.21ドルである。
Amazon Managed Service for Prometheusコレクターは、エージェントなしでAmazon EKSからPrometheusメトリクスを発見し収集できる。コレクターはマネージド・サービスであり、スケーリングを自動的に処理する。このリリースは、これまで利用可能だった顧客管理による収集方法に追加される。
コレクターは、Amazon EKSアプリケーションからメトリクスを自動的に検出・収集できるスクレーパーを活用している。スクレーパーは、その動作方法を制御するように設定できる。マネージド・コレクタは、コンソールまたはCLIを介して作成できる。以下は、CLIを使用してスクレーパーを作成する例である。
aws amp create-scraper \
--source eksConfiguration="{clusterArn=<EKS-CLUSTER-ARN>,securityGroupIds=[<SG-SECURITY-GROUP-ID>],subnetIds=[<SUBNET-ID>]}" \
--scrape-configuration configurationBlob=<BASE64-CONFIGURATION-BLOB> \
--destination ampConfiguration={workspaceArn="<WORKSPACE_ARN>"}
Amazon Managed Grafanaは、Grafanaコミュニティプラグインをサポートするセルフサービスプラグインマネージメントエクスペリエンスを追加した。このリリースには、パネルプラグイン、データソースプラグイン、アプリプラグインの3種類のプラグインのサポートが含まれている。AWSのマルウェアスキャンに合格したプラグインだけが利用可能になる。AWSは、脆弱性が発見された場合、バージョンのアップグレードやインストールをブロックする可能性があることを示唆している。
これらの機能だけでなく、モニタリングやオブザーバビリティの追加リリースに関する詳細は、AWSの総括ブログ、またはInfoQのre:Inventの総括で見ることができる。