「Amazon CloudWatch Synthetics」で始める性能監視「合成モニタリング」入門AWSチートシート

AWS活用における便利な小技を簡潔に紹介する連載「AWSチートシート」。今回は、AWSで合成モニタリングができるマネージドサービス「Amazon CloudWatch Synthetics」を紹介する。

» 2022年07月07日 05時00分 公開
[沼崎伸洋東京ITスクール]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 「Amazon Web Services」(AWS)活用における便利な小技を簡潔に紹介する連載「AWSチートシート」。今回は、AWSで合成モニタリングができるマネージドサービス「Amazon CloudWatch Synthetics」についての簡単に紹介し、AWS提供のテンプレートから合成モニタリングをどのように設定、動作するかの一例を解説します。

 なお、利用料金に関しては公式情報をご参照ください。

「Amazon CloudWatch Synthetics」とは

 Amazon CloudWatch Synthetics(以下、Synthetics)とは、合成モニタリングを行うマネージドサービスです。

 合成モニタリングの定義は「Synthetic monitoring(合成モニタリング)- MDN Web Docs 用語集」によると、下記のようになっています。

合成モニタリングは、可能な限り一貫性のある環境で、通常は自動化ツールを使用して、「実験室」環境でページの性能をモニタリングすることです。一貫性のあるベースラインがあれば、合成モニタリングはコード変更が性能に及ぼす影響を測定するのに適しています。しかし、必ずしもユーザーが体験していることを反映しているとは限りません。

合成モニタリングでは、エンドユーザーがWebアプリケーションを介して進む経路をシミュレートするためのスクリプトを展開し、シミュレーターが体験した性能をレポートします。一般的な合成モニタリングツールの例としては、WebPageTestやLighthouseなどがあります。測定されるトラフィックは、ユーザーのものではなく、ページの性能に関するデータを収集するために合成して生成されたトラフィックです。

RUM(Real user monitoring)とは異なり、合成モニタリングはユーザーの違いを考慮せず、性能の狭い範囲のビューを提供するため、アプリケーションの性能に関する基本的なデータを取得したり、開発環境で性能をスポットチェックしたりするのに役立ちます。ネットワークスロットリングなどの他のツールと組み合わせることで、潜在的な問題領域についての優れた洞察を提供することができます。

 Syntheticsを利用することによって、AWSが用意したテンプレートで簡単に合成モニタリングを設定できます。自身でのカスタマイズも可能です。Syntheticsのテンプレートを利用せず自分で一から同等の仕組みを作ろうとした場合、次の3点が必要です。

  • 監視用スクリプトの準備
  • スクリプトを動かす端末(サーバ)の準備
  • 上記2つの保守管理

 できるだけ簡単に合成モニタリングを運用したい場合、Syntheticsは良い選択肢といえるでしょう。

Amazon CloudWatch Syntheticsハンズオン

 今回は下記のようなWebサーバ1台を公開していると仮定して、そのサーバに対してSyntheticsによるハートビート監視を設定します。

 手順としては次の4ステップです。

  • STEP1:Webサーバ用「Amazon EC2」の構築
  • STEP2:Webサーバへの「Apache」のインストール
  • STEP3:Syntheticsの設定
  • STEP4:Syntheticsの動作確認

 なお今回は「バージニア北部」リージョンを利用しています。

STEP1:Webサーバ用EC2の構築

 「マネージメントコンソール」で「EC2」サービスを選択して「インスタンスの起動」を選択します。インスタンス起動画面で下記のように値を入力、選択します。

  • 「名前とタグ」の「名前」に「synthetics-test-web-server」(図の【1】)

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。