CloudWAN③セグメント一つ、VPCアタッチメントによるマルチリージョン構成の構築

前回はCloudWANの初期設定を行いました。
今回からは、CloudWANの具体的な構築を行っていきます。
CloudWANのコンソールは少し癖があり、TransitGatewayの構築とは異なる部分が多くあります。
この記事で構築の際の注意点などをお伝えしていこうと思います。ぜひ最後までお付き合いください。

# 設定内容
今回の設定内容を構成図で確認します。
前回作成した「COMMON」というセグメントに、東京リージョン・パリリージョンのVPCを接続します。
東京リージョンのEC2から、パリリージョンのEC2へpingが通ることを確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/114144b8-593b-0142-9613-a3fb5dc818b7.png)

# 構築の流れ
先ほどの構成図を少し詳細にした図がこちらです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/020e7735-77d7-197d-82f7-9edb4cc4cbd5.png)

番号が振られている部分が設定箇所となります。

①グローバルネットワーク
②コアネットワーク
③セグメント
④アタッチメントポリシー
⑤CloudWANのVPCアタッチメント
⑥VPCのルートテーブル

VPC・EC2の作成については割愛し、CloudWANの手順のみを確認していきます。
VPCアタッチメントはプライベートサブネットにしか設定できないため、疎通確認をする場合は踏み台を作成しておくか、SSMでEC2ログインができるように設定しておいてください。
①～③までは前回の記事で手順を確認したため、今回は④～⑥の手順を確認していきます。

## アタッチメントポリシーの設定
まずはアタッチメントポリシーの設定を行います。
NetworkManagerのページからグローバルネットワークを選択し、左メニューからコアネットワーク＞ポリシーのバージョンへ移動します。

Policy-version-1のリンクを押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/f43a7e2a-eac1-a700-5795-ef0f6fd99088.png)

Policy-version-1の詳細画面に移動したら、「編集」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/e2610eca-c2ea-397c-5b86-f74b377b6ee0.png)

ポリシーの作成画面が表示されます。「セグメント」タブを選択し、「COMMON」セグメントのチェックボックスにチェックを入れ、「編集」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/b9aea110-51ac-eec9-ca4b-cee4fbfb7f4f.png)

セグメントの編集画面が表示されます。この画面から、エッジロケーション（リージョン）の追加などが行えます。今回は検証の為、「承諾を必須にする」のチェックを外し、「セグメントの変更」を押下します。「承諾を必須にする」のチェックを入れた状態だと、アタッチメントを作成する度にアタッチメントの承認作業が必要となります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/18af6bc7-79c0-d933-ed24-6800d11a82b5.png)


次にアタッチメントポリシーの作成を行います。
アタッチメントポリシーとは、「どのアタッチメントをどのセグメントに所属させるか」を決めるルールです。アタッチメントポリシーのタブに移動し、「作成」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/232f930c-63bb-fe2e-4270-b6ce2195dd8b.png)

アタッチメントポリシーの作成画面が表示されます。
ルール番号・説明を入力し、「セグメントオプションへのアタッチ」に「セグメント名」を指定します。
「セグメントにアタッチする」のプルダウンメニューから「COMMON」を選択し、「条件ロジック」には「または」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/082b0541-b250-c396-14dd-7970d271b0ba.png)

下にスクロールし、「タイプ」「オペレーター」「条件値」を指定します。
今回は「タイプ」に「TagValue」を、「オペレーター」に「Equals」を指定しました。
これで、「条件値で指定したタグの値が一致する場合にアタッチメントを特定のセグメントに所属させる」というルールになります。
今回はタグに「Environment」を、値に「COMMON」を指定しました。
これで、「EnvironmentタグがCOMMONのアタッチメントはCOMMONセグメントに所属させる」というアタッチメントポリシーになります。
「アタッチメントポリシーの作成」を押下します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/5a0e0e0b-7846-af17-4b12-c15b4900fd55.png)

「ポリシーの作成」画面に戻ります。
右下の「ポリシーの作成」ボタンを押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/c0c74c69-6b45-da1a-dbce-ea6351661e36.png)

「ポリシーバージョンが正常に作成されました」と表示されることを確認します。
Policy-version-1の下にPolicy-version-2が表示されています。
まだポリシーは適用されていないので注意してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/229fbbc5-4d78-84c1-997a-f0b1f5c11a21.png)

Policy-version-2のチェックボックスにチェックを入れ、「変更セットの表示または適用」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/6c84fc0c-a940-e063-ab2f-9aaa48710ca9.png)

変更セットが表示されます。
内容を確認し、「変更セットの適用」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/461d4f00-f6f8-12f0-b8d6-352654c2c73b.png)

ポリシーバージョンの画面に戻ります。
画面上部に「ポリシー変更セットの実行が正常に開始されました」と表示されることを確認します。
Policy-version-2の状態が「Execution succeeded」と表示されたら、変更セットの適用は完了です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/3b853776-6f58-faa9-f1ad-8de8199ca5ad.png)

# アタッチメントの作成
アタッチメントポリシーの変更ができたらアタッチメントを作成します。
左メニューから「アタッチメント」に移動し、「アタッチメントの作成」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/325d272f-c356-e100-1bd1-d448ab735fcf.png)

アタッチメントの作成画面が表示されます。
アタッチメントの名前を入力し、エッジロケーションのプルダウンメニューからアタッチメントを作成したいリージョンを選択します。今回は東京リージョンのVPCにアタッチメントを設定する為、「アジアパシフィック（東京）」を選択します。
アタッチメントタイプには「VPC」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/288cbac8-01c1-2151-fa02-c501a16eb091.png)

スクロールし、VPCIDのプルダウンメニューからVPCアタッチメントを作成したいVPCを選択します。
サブネットIDとして、アタッチメントを作成するサブネットを選択します。この時、パブリックサブネットは指定できない点に注意してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/4c8c809d-97a0-22a7-acac-10b7d8594265.png)

スクロールし、タグを入力します。
先ほどのアタッチメントポリシーでは「EnvironmentタグがCOMMONのアタッチメントは
COMMONセグメントに所属させる」というルールを作りました。なので、こちらのアタッチメントには「Environment」キーを付与し「COMMON」の値を設定しました。
アタッチメントのタグが正しく設定されていないと、アタッチメントをセグメントに所属させることができないので注意してください。
全ての設定項目を入力したら、「アタッチメントの作成」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/5b294d63-236f-a7d0-8539-d8d1f394915c.png)

画面上部に「アタッチメントが正常に作成されました」と表示されることを確認します。
タグが正しく設定されていれば、「セグメント」に所属セグメントが反映されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/33883b34-5b40-d417-396f-5a18fea77443.png)

同じ要領でパリ側にもVPCアタッチメントを追加します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/1ea4b3fb-01a3-caaf-7dfd-5ff93df57af2.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/91c92de3-c350-f6a3-2b82-9ccb08a8fe84.png)



これで、アタッチメントの作成作業は完了です。


# VPC側ルートテーブルの設定
アタッチメントポリシーとアタッチメントの作成が完了したら、VPC側のルートテーブルにコアネットワークまでのルート情報を追記します。
今回は東京VPC（10.0.0.0/16）とパリVPC（10.1.0.0/16）を通信させるため、VPCのルートテーブルにはそれぞれ対抗リージョンのCIDRを追記します。

こちらは東京VPC側のルートテーブル編集画面です。
パリVPCのCIDRを送信先として、ターゲットに「コアネットワーク」を指定します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/af0dc0d6-64a1-937e-4334-8880bc95494c.png)

パリVPC側のルートテーブル編集画面です。
東京VPCのCIDRを送信先として、ターゲットに「コアネットワーク」を指定します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/8c6afb63-c295-df84-322e-1affb7bc18c2.png)

# 疎通確認
ここまでの設定を完了し、実際に疎通確認をした様子がこちらです。
踏み台サーバー経由でTKY-EC2にログインし、パリのEC2へ向けてpingを飛ばしています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/1ff10bde-40fe-e2b1-1661-f1ea0b9c87bd.png)


# まとめ
再度構成図を確認します。
左側の「TKY-EC2」から右側の「PAR-EC2」へ、CloudWAN経由で通信ができている状態です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/a2da5c1d-a7a5-79cb-e098-0bb2fef621ce.png)

ここまでお読みいただきありがとうございました。
次回は、セグメントをもう一つ追加し、セグメントをごとにVPCアタッチメントを設定する手順について書こうと思います。