こんにちは。マネージドサービス部の谷内です。
2回目のre:Inventですが、今年は WorkShop と Builder's Session ばかりに参加しておりました。
本ブログでは、以下 WorkShop についてまとめます。
- COP303 | Hands-on experience with Amazon CloudWatch
- Your enterprise’s agility, customer satisfaction, and business growth depend on setting up great observability. In order to help you build high-performing and reliable applications, AWS provides a variety of turnkey AWS native observability services and solutions. In this workshop, learn how to monitor AWS services with Amazon CloudWatch, get hands-on experience with the most common use cases, and learn about and implement the newest features available. You must bring your laptop to participate.
WorkShop の概要
概要
Amazon CloudWatch と AWS X-Ray を利用することで、ネットワーク・インフラ・アプリの情報の収集・分析が容易に実現でき、システム全体のパフォーマンスや正常性の把握、問題が発生した際のより迅速な検出・調査・復旧が可能となります。
この WorkShop では、3層アプリケーションのサンプル環境(構成参照)において、オブザーバビリティの3つの柱(メトリクス、ログ、トレース)を以下4つのステップに沿ってハンズオン形式で体験できました。
- WorkShop 環境を構築する複数のAWSサービスの仕組みやアプリケーションのパフォーマンス問題のトラブルシューティングの学習
- Lambda Power Tools を活用したサーバーレスアプリケーションをインストルメント化する方法
- Amazon CloudWatch RUM を用いたウェブサイトやアプリケーションにおける実際のユーザーインタラクションの監視やパフォーマンスに関する問題やエラーの検出方法
- EKS と ECS クラスターにおけるコンテナインサイトを有効化するプロセス
構成
利用したAWSサービス
- Amazon CloudWatch
- Amazon CloudWatch Dashboard
- Amazon CloudWatch Alarm
- Amazon CloudWatch Logs
- Amazon CloudWatch Synthetics
- Amazon CloudWatch Lambda Insights
- Amazon CloudWatch RUM
- Amazon CloudWatch Container Insights
- AWS X-Ray
WorkShop のポイント
オブザーバビリティについて
オブザーバビリティ(可観測性)はシステムで何が起こっているのか・何故起こっているのかを理解するうえで重要な概念です。
従来までの監視は、システム状態に関する様々なデータを収集し、必要に応じてアラートを報告します。
一方、オブザーバビリティでは、監視によって取集されたデータだけでなく、システム間の関連性も含めたより広範囲の可視性を提供することができます。
オブザーバビリティによるシステム全体の洞察により、障害の根本原因の調査や複数システムの相互作用によって発生する問題の調査が可能となります。
オブザーバビリティ実現に重要となるAWSサービス
CloudWatch では AWS インフラレイヤーの状況をモニタリングできますが、より上位レイヤーのモニタリングのためには以下のような AWS サービスが重要となります。
Amazon CloudWatch Synthetics
Amazon CloudWatch Synthetics は、API エンドポイントや Web ページに対してステータスやレイテンシー等をモニタリングできるマネージドサービスです。
Canary と呼ばれるスクリプトを設定することで、任意のスケジュールに沿って自動で実行できるようになります。
これにより、利用者による実際のトラフィックがない場合でも、システムのモニタリングを継続的に実施でき、利用者が実際に直面する前にシステムの問題を検出可能となります。
AWS X-Ray
AWS X-Ray は、アプリケーションが処理するリクエストに関するデータを収集するマネージドサービスです。
AWS X-Ray を利用するとアプリケーション側のパフォーマンスをモニタリングすることができ、収集されたアプリケーション側のデータとCloudWatch によって得られたインフラ側のデータを用いて、システム全体の問題箇所特定や最適化が可能となります。
また、Amazon CloudWatch Synthetics と AWS X-Ray は連携することができ、エンドツーエンドでのサービス確認・パフォーマンスボトルネック特定の効率化・影響を受けるユーザーの把握が可能となります。
Amazon CloudWatch RUM
Amazon CloudWatch RUM は、実際のシステム利用者の動きをほぼリアルタイムで収集し、ページの読み込み時間、エラーのあるセッション、使用されたブラウザとデバイス、利用者の地理的情報等のアプリケーションのパフォーマンスに関するデータを可視化・分析できる機能です。
これにより、アプリケーションのパフォーマンス異常を可視化でき、収集されたデータによって問題の素早い特定・デバッグに役立ちます。
感想
ここ数年で「オブザーバビリティ」という言葉をよく耳にするようになりましたね。
当社では SaaS を利用したオブザーバビリティ実現に注力しており、実は AWS ネイティブサービスの活用はあまり積極的ではありませんでした。
この WorkShop を通じて、これまで積極的に利用していなかった AWS サービスを改めて触り、AWSネイティブのオブザーバビリティ実現を体系的に経験できたことは非常に有意義でした。
個人的にはプレゼン形式よりも Workshop や Builders' Session 等のハンズオン形式のセッションの方が楽しめたので、来年の re:Invent へ参加される方は是非ハンズオン形式のセッションへの参加を積極的にご検討いただければと。