スマートワークロードリカバリを運用するために必要なネットワーク構成について、以下の内容を説明します。ネットワーク構成をもとにネットワークの設計を実施してください。
VPCとサブネットの設計
APIエンドポイントとの接続性確保
EFSのマウントターゲットの確認
ネットワークの引継ぎ
セキュリティグループの設計
注意
スマートワークロードリカバリ機能は切替え時にインスタンスを作成するため、AWS環境でAZ資源枯渇が発生した場合、切替えが中断される可能性があります。
AZ資源枯渇は事前に予測することができないため、以下の項目に対して、切替え先にするアベイラビリティゾーンを1つに限定するのではなく、リージョン内のすべてのアベイラビリティゾーンを考慮して設計することを推奨します。
サブネットの設計
APIエンドポイントとの接続性確保
EFSのマウントターゲットの確認
ネットワークの引継ぎ
なお、AZ資源枯渇が発生した場合、“A.3.2.3 切替え先AZの設定変更”に従って、新たな切替え先AZを追加する対処が必要です。
VPCを用意して、切替え対象にするアベイラビリティゾーンごとにサブネットを作成します。
VPCでDNSが使用できるように設定してください。VPCを作成する場合は、以下のオプションを指定します。詳細は、AWSの公式ドキュメントを参照してください。
設定項目 | 値 |
---|---|
DNSホスト名 | 有効 |
DNS解決 | 有効 |
図A.3 アベイラビリティゾーンごとのサブネットの作成
APIエンドポイントにアクセスするために、クラスタノードを配備するすべてのアベイラビリティゾーンにAWS PrivateLinkのVPCエンドポイントを導入します。
インスタンスにインストールしたCloudWatchエージェントは、Amazon CloudWatchのAPIエンドポイントにメトリクスとログを転送します。
PrivateLinkのVPCエンドポイントを作成する場合は、以下を指定します。詳細は、AWSの公式ドキュメントを参照してください。
設定項目 | 値 | 説明 |
---|---|---|
サービス名 | monitoring ec2 logs | CloudWatchエージェントが使用するサービスを指定します。 |
プライベートDNS名を有効にする | 有効 | DNSが使用できるように設定します。 |
図A.4 AWS PrivateLinkによる接続性確保
クラスタノードのインスタンスからEFSを使用するためには、クラスタノードを配備するすべてのアベイラビリティゾーンのサブネットにEFSのマウントターゲットが必要です。
スマートワークロードリカバリを運用するために必要なEFSのファイルシステムごとに、EFSのマウントターゲットが用意されているかを確認してください。スマートワークロードリカバリを運用するために必要なEFSのファイルシステムについては、“A.1.4 ディスクの設計”を参照してください。
ネットワークの引継ぎのためには、ELBのNLBまたはALBを使用してください。
切替機構は、異常発生時にインスタンスを削除して、別のアベイラビリティゾーンでインスタンスを起動します。その時に、ターゲットグループのインスタンスを削除して、新しく起動したインスタンスを追加しています。
クライアントは、AWSの仕様に基づいてNLBやALBにアクセスしてください。クラスタノードの異常発生時に、NLBまたはALBの転送先のインスタンスが自動的に切り替えられ継続してアクセスできます。アクセスする方法の詳細は、AWSの公式ドキュメントを参照してください。
図A.5 ELBによるネットワーク引継ぎ
上図ではNLBの例を示していますが、ALBで構成することも可能です。ALBで構成する場合はネットワーク、セキュリティ要件に合わせてセキュリティグループなどを適切に設定してください。
ELBやALBのターゲットグループは、ターゲットをインスタンスにしてください。ターゲットグループを作成する場合は、以下のオプションを指定します。
設定項目 | 値 |
---|---|
ターゲットの種類 | インスタンス |
注意
切替え対象として複数のインスタンスを扱う場合、インスタンスごとにELB(NLBまたはALB)を分け、インスタンスごとにネットワーク引継ぎの設定を実施します。
セキュリティグループのルールの設定について説明します。
ここに記載したルールに加え、ユーザのセキュリティ要件に応じてルールを追加することで、セキュリティグループを設計してください。
クラスタノードに適用するセキュリティルールを設計します。
アプリケーションの動作に必要なルール、および以下のルールを追加してください。
NLBまたはALBからのアクセスを許可してください。詳細は、AWSの公式ドキュメントを参照してください。
通信先 | プロトコル | ポート範囲 | 説明 |
---|---|---|---|
VPCエンドポイントのセキュリティグループ | tcp | 443 | CloudWatchエージェントがAPIエンドポイントへアクセスするために使用します。 通信先には“A.1.3.5.2 VPCエンドポイントに適用するルール”のセキュリティグループを指定します。 |
Route 53 Resolverの予約済みIPアドレス | tcp | 53 | AWSリソースのDNSサーバへアクセスするために使用します。 |
EFSマウントターゲットのセキュリティグループ | tcp | 2049 | EFSマウントターゲットへアクセスするために使用します。 |
VPCエンドポイントに適用するセキュリティルールを設計します。
セキュリティグループに、以下のルールを追加してください。
通信先 | プロトコル | ポート範囲 | 説明 |
---|---|---|---|
クラスタノードのインスタンスに設定するセキュリティグループ | tcp | 443 | クラスタノードのインスタンスからのアクセスを許可してください。通信先には“A.1.3.5.1 インスタンスに適用するルール”のセキュリティグループを指定します。 |
なし
EFSのマウントターゲットに適用するセキュリティルールを設計します。
セキュリティグループに、以下のルールを追加してください。
通信先 | プロトコル | ポート範囲 | 説明 |
---|---|---|---|
クラスタノードのインスタンスに設定するセキュリティグループ | tcp | 2049 | クラスタノードのインスタンスからのアクセスを許可してください。通信先には“A.1.3.5.1 インスタンスに適用するルール”のセキュリティグループを指定します。 |
なし
すべてのトラフィックを遮断するセキュリティグループとして、ブラックホールセキュリティグループを用意します。ブラックホールセキュリティグループは切替機構が使用します。
ブラックホールセキュリティグループは、以下のルールで作成します。
なし
なし