システムの可用性を、論理的に高めるだけではなく データセンターレベルで可用性を維持したい、
といった要求事項に対応するパターンです。
K5では、環境レベルでの物理的な信頼性を高める方式として、以下の 2種類のロケーションサービスがあります。
リージョン | 地域 を分ける方式 地域的な災害対策(DR)に活用します |
---|---|
アベイラビリティ ゾーン(AZ) | リージョン内で物理的に完全に独立した環境を分ける方式 ファシリティの故障時の影響を最小限にとどめます |
このパターンでは、リージョン内でアベイラビリティゾーン(AZ)を分ける構成を採用した場合に、
個々のAZに設置したネットワークを低遅延のネットワークで接続して1つのシステムとして使用できるようにする、
AZ間のネットワーク設定について記載します。
(1) 内部ネットワーク、サブネット、セキュリティグループ、仮想サーバの作成(ポータル)
ルール | 方向 | 接続先 | セキュリティグループ | IPバージョン |
---|---|---|---|---|
ALL ICMP | 受信 | セキュリティグループ | SG_Multi_AZ | IPv4 |
ALL ICMP | 送信 | セキュリティグループ | SG_Multi_AZ | IPv4 |
(2) 各種値の取得
項目 | 設定値 | 内容 | |
---|---|---|---|
AZ1用 | AZ2用 | ||
AZ名称 | "jp-east-1a" | "jp-east-1b" | "jp-east-1a", "jp-east-1b" 等 |
内部ネットワークID | (生成されたID) | (生成されたID) | それぞれのAZで生成されたID |
サブネットID | (生成されたID) | (生成されたID) | それぞれのAZで生成されたID |
サブネット | "192.168.1.0/24" | "192.168.20.0/24" | サンプルで左記を使用 |
サブネットのデフォルトゲートウェイIP | "192.168.1.1" | "192.168.20.1" | サンプルで左記を使用 |
セキュリティグループID | (生成されたID) | AZ間の通信制御用セキュリティグループID |
(3) 各種値の決定
項目 | 設定値 | 内容 | |
---|---|---|---|
AZ1用 | AZ2用 | ||
ネットワークコネクター名称 | "demo-nwc" | サンプルで左記を使用 | |
コネクターエンドポイント名称 | "demo-nwcep-az1" | "demo-nwcep-az2" | サンプルで左記を使用 |
ポート名称 | "demo-port-az1" | "demo-port-az2" | サンプルで左記を使用 |
ポート作成時のIPアドレス | "192.168.1.100" | "192.168.20.100" | サンプルで左記を使用 |
(1) ネットワークコネクターの作成
以下のAPIに、設定項目(json)を設定し、実行してください。
項目 | 設定値 | 内容 |
---|---|---|
$NAME | "demo-nwc" | ネットワークコネクター名称(任意) |
(2) ネットワークコネクターの確認
(1) コネクターエンドポイントの作成
以下のAPIに、設定項目(json)を設定し、AZ1、AZ2でそれぞれ実行してください。
項目 | 設定値 | 内容 | |
---|---|---|---|
AZ1用 | AZ2用 | ||
$NAME | "demo-nwcep-az1" | "demo-nwcep-az2" | コネクターエンドポイント名称(任意) |
$NETCON_ID | (生成されたID) | 生成されたネットワークコネクターのID | |
$EP_TYPE | "availability_zone" | "availability_zone":K5内接続 | |
$AZ | "jp-east-1a" | "jp-east-1b" | "jp-east-1a"、"jp-east-1b" 等 |
(2) 作成したコネクターエンドポイントの確認
以下のAPIに、設定項目(json)を設定し、AZ1、AZ2でそれぞれ実行してください。
項目 | 設定値 | 内容 | |
---|---|---|---|
AZ1用 | AZ2用 | ||
$PORT_NAME | "demo-port-az1" | "demo-port-az2" | ポート名称(任意) |
$NETWORK_ID | (生成されたID) | (生成されたID) | それぞれのAZの内部ネットワークID |
$SUBNET_ID | (生成されたID) | (生成されたID) | それぞれのAZのサブネットID |
$FIXED_IP_ADDRESS | "192.168.1.100" | "192.168.20.100" | サンプルで左記を使用 |
$SG_ID | (生成されたID) | セキュリティグループID | |
$AZ | "jp-east-1a" | "jp-east-1b" | "jp-east-1a"、"jp-east-1b" 等 |
設定項目(REST API)で生成したAPIに、設定項目(json)を設定し、AZ1、AZ2でそれぞれ実行してください。
項目 | 内容 |
---|---|
$NETCON_EP_ID | それぞれのAZで作成したコネクターエンドポイントID |
項目 | 内容 |
---|---|
$PORT_ID | それぞれのAZで作成したポートID |
対向のAZ向けのルーティング情報を仮想サーバが取得できるよう、サブネットの情報を更新します。
設定項目(REST API)で生成したAPIに、設定項目(json)を設定し、AZ1、AZ2でそれぞれ実行してください。
項目 | 内容 |
---|---|
$SUBNET_ID_AZ1 | AZ1のサブネットID |
$SUBNET_ID_AZ2 | AZ2のサブネットID |
項目(AZ1) | 内容 |
---|---|
$SUBNET_AZ1 | AZ1用:192.168.1.0/24 |
$DEFAULT_GATEWAY_IP_AZ1 | AZ1用:192.168.1.1 |
$FIXED_IP_ADDRESS_AZ1 | AZ1用:192.168.1.100 |
$HOST_ROUTES_AZ1 | {\"nexthop\":\"$FIXED_IP_ADDRESS_AZ1\",\"destination\":\"$SUBNET_AZ2\"},{\"nexthop\":\"$DEFAULT_GATEWAY_IP_AZ1\",\"destination\":\"0.0.0.0/0\"} |
項目(AZ2) | 内容 |
---|---|
$SUBNET_AZ2 | AZ2用:192.168.20.0/24 |
$DEFAULT_GATEWAY_IP_AZ2 | AZ2用:192.168.20.1 |
$FIXED_IP_ADDRESS_AZ2 | AZ2用:192.168.20.100 |
$HOST_ROUTES_AZ2 | {\"nexthop\":\"$FIXED_IP_ADDRESS_AZ2\",\"destination\":\"$SUBNET_AZ1\"},{\"nexthop\":\"$DEFAULT_GATEWAY_IP_AZ2\",\"destination\":\"0.0.0.0/0\"} |
項目 | 設定の展開例 |
---|---|
$HOST_ROUTES_AZ1 | {\"nexthop\":\"192.168.1.100\",\"destination\":\"192.168.20.0/24\"}, {\"nexthop\":\"192.168.1.1\",\"destination\":\"0.0.0.0/0\"} |
$HOST_ROUTES_AZ2 | {\"nexthop\":\"192.168.20.100\",\"destination\":\"192.168.1.0/24\"}, {\"nexthop\":\"192.168.20.1\",\"destination\":\"0.0.0.0/0\"} |
サブネットの更新後に、仮想サーバをそれぞれ再起動してください。
AZ間の接続を利用した場合のメリット・効果は以下の通りです。
•本パターンは2017年6月時点のK5(IaaS)で動作検証しています。
*AZ間接続は同一プロジェクトにのみ設定可能です。
*ネットワークコネクターはプロジェクトに対して 1つ、コネクターエンドポイントはAZに対して 1つ設定可能です。
*コネクターエンドポイントで接続したネットワーク以外のルーティングは行えません。
*AZ間で接続するサブネットは、同一のサブネットにすることは出来ません。
複数のセグメントをマルチAZ接続で接続したい場合は、以下の図のように、コネクターエンドポイントに複数のセグメントを接続します。