マルチロケーション Canary
Amazon CloudWatch Synthetics を使用すると、単一の管理ポイントから複数の AWS リージョンで同じ Canary を同時に実行できます。これらはマルチロケーション Canary と呼ばれます。1 つのリージョン (プライマリロケーション) で Canary を作成および管理すると、CloudWatch Synthetics は選択した追加のリージョン (レプリカロケーション) に自動的にレプリケートします。すべての実行、メトリクス、アーティファクトはプライマリリージョンに統合されるため、世界中のアプリケーションのパフォーマンスと可用性を一元的に把握できます。
マルチロケーション Canary を使用すると、次の利点が得られます。
-
一貫したユーザーエクスペリエンスを確保する — 世界中のさまざまな場所から Canary を実行して、ユーザーがどこにいても一貫した高品質のエクスペリエンスを享受していることを確認します。
-
ロケーション固有のベースラインを確立する — ネットワークレイテンシーやデータセンターの近接性などの要因により、各リージョンのパフォーマンス特性が異なる場合があります。Canary を複数のロケーションから実行すると、ロケーションごとにパフォーマンスベースラインが作成され、通常の変動と異常を区別できます。
-
リージョンのパフォーマンスの問題を特定する — パフォーマンスと可用性は、ネットワークレイテンシー、ISP スロットリング、またはリージョンの停止により、ロケーションによって大きく異なる場合があります。さまざまなグローバルロケーションからテストすると、単一のロケーションからでは明らかにならない可能性のあるリージョン固有のボトルネックを特定するのに役立ちます。
-
サードパーティーサービスと CDN の検証 — 支払いプロセッサ、コンテンツ配信ネットワーク、広告サービスなど、サードパーティーに依存する機能がすべてのリージョンで動作していることを確認します。データを使用して、ベンダーに SLA について責任を持たせます。
-
誤検出を減らす — 複数のロケーションから問題が検出された場合にのみアクティブ化するアラームを設定します。このアプローチにより、限定されたロケーションの一時的なネットワーク障害による不要な通知を回避できるため、チームは重大な問題に集中できます。
マルチロケーション Canary の仕組み
マルチロケーション Canary は、プライマリとレプリカのモデルを使用します。プライマリリージョンの Canary は、設定の信頼できる情報源として機能します。CloudWatch Synthetics は選択したリージョンにレプリカを自動的に作成し、各レプリカは同じスクリプト、スケジュール、環境変数を使用して個別に実行されます。すべての変更オペレーション (作成、更新、開始、停止、削除) は、プライマリリージョンから実行され、レプリカに非同期的に伝播します。すべてのロケーションからの実行データはプライマリリージョンに統合されます。
前提条件
マルチロケーション Canary を作成する前に、次の要件を考慮してください。
-
マルチロケーション Canary にはランタイムバージョン
syn-nodejs-puppeteer-16.0以降、またはsyn-nodejs-playwright-7.0以降が必要です。 -
すべての AWS 商用リージョンで使用できます。AWS GovCloud (米国) リージョンまたは中国リージョンでは利用できません。
-
最大 50 のレプリカロケーションを追加できます。
-
タグはレプリカリージョンにレプリケートされません。レプリカにタグを追加するには、レプリカリージョンに移動し、タグを直接追加します。
-
プライマリ Canary の環境変数は、すべてのレプリカに適用されます。
-
すべてのロケーションが同じスクリプトとスケジュールを使用します。
-
VPC 接続が必要な場合は、各レプリカに独自の VPC 設定が必要です。VPC 設定はプライマリリージョンから継承されません。
-
コストはレプリカの数に比例します。各レプリカには、スタンドアロン Canary と同じコストが発生します。