ページの先頭行へ戻る
PRIMECLUSTER 導入運用手引書 4.7<Cloud Services 編>

A.1.3 ネットワークの設計

スマートワークロードリカバリを運用するために必要なネットワーク構成について、以下の内容を説明します。ネットワーク構成をもとにネットワークの設計を実施してください。

注意

スマートワークロードリカバリ機能は切替え時にインスタンスを作成するため、AWS環境でAZ資源枯渇が発生した場合、切替えが中断される可能性があります。

AZ資源枯渇は事前に予測することができないため、以下の項目に対して、切替え先にするアベイラビリティゾーンを1つに限定するのではなく、リージョン内のすべてのアベイラビリティゾーンを考慮して設計することを推奨します。

  • サブネットの設計

  • APIエンドポイントとの接続性確保

  • EFSのマウントターゲットの確認

  • ネットワークの引継ぎ

なお、AZ資源枯渇が発生した場合、“A.3.2.3 切替え先AZの設定変更”に従って、新たな切替え先AZを追加する対処が必要です。

A.1.3.1 VPCとサブネットの設計

VPCを用意して、切替え対象にするアベイラビリティゾーンごとにサブネットを作成します。

VPCでDNSが使用できるように設定してください。VPCを作成する場合は、以下のオプションを指定します。詳細は、AWSの公式ドキュメントを参照してください。

設定項目

DNSホスト名

有効

DNS解決

有効

図A.3 アベイラビリティゾーンごとのサブネットの作成

A.1.3.2 APIエンドポイントとの接続性確保

APIエンドポイントにアクセスするために、クラスタノードを配備するすべてのアベイラビリティゾーンにAWS PrivateLinkのVPCエンドポイントを導入します。

インスタンスにインストールしたCloudWatchエージェントは、Amazon CloudWatchのAPIエンドポイントにメトリクスとログを転送します。

PrivateLinkのVPCエンドポイントを作成する場合は、以下を指定します。詳細は、AWSの公式ドキュメントを参照してください。

設定項目

説明

サービス名

monitoring

ec2

logs

CloudWatchエージェントが使用するサービスを指定します。

プライベートDNS名を有効にする

有効

DNSが使用できるように設定します。

図A.4 AWS PrivateLinkによる接続性確保

A.1.3.3 EFSのマウントターゲットの確認

クラスタノードのインスタンスからEFSを使用するためには、クラスタノードを配備するすべてのアベイラビリティゾーンのサブネットにEFSのマウントターゲットが必要です。

スマートワークロードリカバリを運用するために必要なEFSのファイルシステムごとに、EFSのマウントターゲットが用意されているかを確認してください。スマートワークロードリカバリを運用するために必要なEFSのファイルシステムについては、“A.1.4 ディスクの設計”を参照してください。

A.1.3.4 ネットワークの引継ぎ

ネットワークの引継ぎのためには、ELBのNLBまたはALBを使用してください。

切替機構は、異常発生時にインスタンスを削除して、別のアベイラビリティゾーンでインスタンスを起動します。その時に、ターゲットグループのインスタンスを削除して、新しく起動したインスタンスを追加しています。

クライアントは、AWSの仕様に基づいてNLBやALBにアクセスしてください。クラスタノードの異常発生時に、NLBまたはALBの転送先のインスタンスが自動的に切り替えられ継続してアクセスできます。アクセスする方法の詳細は、AWSの公式ドキュメントを参照してください。

図A.5 ELBによるネットワーク引継ぎ

上図ではNLBの例を示していますが、ALBで構成することも可能です。ALBで構成する場合はネットワーク、セキュリティ要件に合わせてセキュリティグループなどを適切に設定してください。

ELBやALBのターゲットグループは、ターゲットをインスタンスにしてください。ターゲットグループを作成する場合は、以下のオプションを指定します。

設定項目

ターゲットの種類

インスタンス

注意

切替え対象として複数のインスタンスを扱う場合、インスタンスごとにELB(NLBまたはALB)を分け、インスタンスごとにネットワーク引継ぎの設定を実施します。

A.1.3.5 セキュリティグループの設計

セキュリティグループのルールの設定について説明します。

ここに記載したルールに加え、ユーザのセキュリティ要件に応じてルールを追加することで、セキュリティグループを設計してください。

A.1.3.5.1 インスタンスに適用するルール

クラスタノードに適用するセキュリティルールを設計します。

アプリケーションの動作に必要なルール、および以下のルールを追加してください。

インバウンドルール

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マウントターゲットへアクセスするために使用します。

A.1.3.5.2 VPCエンドポイントに適用するルール

VPCエンドポイントに適用するセキュリティルールを設計します。

セキュリティグループに、以下のルールを追加してください。

インバウンドルール

通信先

プロトコル

ポート範囲

説明

クラスタノードのインスタンスに設定するセキュリティグループ

tcp

443

クラスタノードのインスタンスからのアクセスを許可してください。通信先には“A.1.3.5.1 インスタンスに適用するルール”のセキュリティグループを指定します。

アウトバウンドルール

なし

A.1.3.5.3 EFSのマウントターゲットに適用するルール

EFSのマウントターゲットに適用するセキュリティルールを設計します。

セキュリティグループに、以下のルールを追加してください。

インバウンドルール

通信先

プロトコル

ポート範囲

説明

クラスタノードのインスタンスに設定するセキュリティグループ

tcp

2049

クラスタノードのインスタンスからのアクセスを許可してください。通信先には“A.1.3.5.1 インスタンスに適用するルール”のセキュリティグループを指定します。

アウトバウンドルール

なし

A.1.3.5.4 ブラックホールセキュリティグループに適用するルール

すべてのトラフィックを遮断するセキュリティグループとして、ブラックホールセキュリティグループを用意します。ブラックホールセキュリティグループは切替機構が使用します。

ブラックホールセキュリティグループは、以下のルールで作成します。

インバウンドルール

なし

アウトバウンドルール

なし