翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
マルチリージョン: 分離
マルチリージョン: 分離テストは、ネットワークトラフィック、クロスリージョンデータレプリケーション、選択した依存関係など、2 つのリージョン間の接続をブロックします。これは、別のリージョンのリソースにアクセスできない場合にサービスが独立して動作することを検証し、可用性に影響を与える可能性のあるリージョン間の依存関係を明らかにするのに役立ちます。
このテストを一意にする理由
-
別のリージョンへの復旧ではなく、リージョンの分離 (クロスリージョン接続が失われる) に焦点を当てます。
-
ネットワークトラフィックをブロックし、クロスリージョンレプリケーション (Amazon S3、DynamoDB、MemoryDB) を一時停止し、オプションで 2 つのリージョン間の依存関係をブロックします。
-
リージョンが単独で機能できることを検証します。
このテストに合格する方法
-
これは持続的なテストです。テストアクションが終了するまですべての成功アラームが
OK状態のままの場合、テストは合格です。
考慮すべき事項
-
分離されたリージョンの状態を測定する成功アラームを選択します。トラフィックを個別に処理し続けることを確認します。
-
このテストは、アクティブ/アクティブアーキテクチャとアクティブ/パッシブアーキテクチャの両方に適用されます。
-
主なユースケース: 復旧リージョンがスタンドアロンで動作できることを検証します。たとえば、プライマリが
us-east-1でセカンダリが の場合us-west-2、これを使用して、 から分離されたときに が独立してus-west-2動作することを検証しますus-east-1。 -
このテストは、マルチリージョン: 復旧 - 完全なフェイルオーバーをテストする前に独立性を検証するのにも適しています。このテストは、重要なリージョン間の依存関係を検出するのに役立ちます。
-
テスト中に依存関係がアクティブに使用されている (トラフィックがアクティブに流れている) ことを確認します。これにより、ブロックが効果を持っていることが検証されます。依存関係の使用状況 (リクエスト数や接続エラーなど) を追跡するアラームやメトリクスを追加して、テスト中に依存関係が実行されていることを確認することを検討してください。
-
依存関係は解決可能な DNS エンドポイントである必要があります。
-
ヘルスチェックの失敗をトリガーする依存関係をブロックすると、コンピューティング (Amazon ECS タスクなど) が置き換えられる可能性があります。パケット損失アクションは置き換えタスクに再適用されず、失敗としてレポートされる場合があります。
主要なテストパラメータ
-
分離されたリージョン – 独立したオペレーションのためにテストするリージョン。
-
送信先リージョン – ブロックされているリージョン (このリージョンへの接続が切断されました)。
-
Duration – テストアクションが実行される時間の長さ。テストが終了する前に、最終結果を収集するまでに数分かかります。テストを初めて作成するときのデフォルトは 3 時間です。
-
ブロックする依存関係 (オプション) – 依存関係検出が有効になっている場合、リストには分離されたリージョンから送信先リージョンへの依存関係が表示されます。このリストから選択することも、DNS ドメイン名で手動で追加することもできます。デフォルトでは、依存関係は選択されません。このテストの他のアクション (ネットワーク接続、レプリケーションの一時停止) は、 に関係なく実行されます。ここで追加された追加の依存関係は、このテストにのみ使用され、サービスの依存関係検出には保存されません。これらのデフォルトは コンソールで適用されます。API を使用する場合は、依存関係を明示的に指定します。
アクション
このテストでは、次の AWS FIS アクションを実行して、選択した依存関係にトラフィックをドロップします。アクションは、Amazon EC2 インスタンス、Amazon ECS タスク (Amazon EC2 および Fargate)、Amazon EKS ポッド (Amazon EC2) に 100% のパケット損失を発生させます。サービスにアクションのターゲットタイプに一致するリソースがない場合、そのアクションはスキップされます。
注記
依存関係をブロックするために使用されるアクションには、Amazon EC2 インスタンスにインストールされた SSM エージェント、Amazon ECS タスク定義の SSM エージェントコンテナ、Amazon EKS ポッドの Kubernetes サービスアカウントなど、追加の設定が必要です。
| [アクション] | 説明 |
|---|---|
aws:network:transit-gateway-disrupt-cross-region-connectivity |
Transit Gateway ピア接続を介して送信先リージョンへのクロスリージョントラフィックをブロックします。 |
aws:network:route-table-disrupt-cross-region-connectivity |
サブネットから送信先リージョンへのクロスリージョントラフィックをブロックします。 |
aws:network:disrupt-vpc-endpoint |
クロスリージョン VPC エンドポイントから送信先リージョンへのトラフィックをブロックします。 |
aws:s3:bucket-pause-replication |
送信先リージョンへの Amazon S3 クロスリージョンレプリケーションを一時停止します。 |
aws:dynamodb:global-table-pause-replication |
DynamoDB グローバルテーブルレプリケーションを一時停止します。 |
aws:memorydb:multi-region-cluster-pause-replication |
MemoryDB マルチリージョンクラスターレプリケーションを一時停止します。 |
aws:ssm:send-command |
Amazon EC2 インスタンスから選択した依存関係にトラフィックをドロップします。 |
aws:ecs:task-network-packet-loss |
Amazon ECS タスクからのトラフィックを選択した依存関係にドロップします。 |
aws:eks:pod-network-packet-loss |
Amazon EKS ポッドからのトラフィックを選択した依存関係にドロップします。 |
このテストのパラメータとそのデフォルト値を表示するには、 を使用しますget-test-template。