LoginSignup
0
0

AWS Transit Gatewayを試してみた

Last updated at Posted at 2024-06-09

背景・目的

以前、AWS Transit Gatewayを整理してみたで、Transigt Gatewayの基本的な知識やユースケース等を整理しました。
今回は、実際に触って試してみたいと思います。

まとめ

今回は、下記のような環境で試してみました。

image.png

下記の順番で作成しました。

  1. ネットワークの作成
  2. EC2の作成
  3. VPCeの作成
  4. Transit Gatewayの作成
  5. VPCをTransit Gatewayに接続
  6. トランジットゲートウェイと VPC の間にルートを追加
  7. セキュリティグループを修正

概要

よろしければ、AWS Transit Gatewayを整理してみたや、下記のAWSのドキュメントをご覧ください。

実践

前準備

前準備で用意した環境を2つ作成します。

ネットワークの作成

image.png

VPCを作成する

  1. VPC(Private Subnet1つ)を作成します

EC2の作成

image.png

IAMロールを作成する

SessionManagerを使ってEC2にログインするため、IAMロールを準備します

  1. IAMに移動し、ロールを作成をクリックします

  2. 信頼されたエンティティタイプに、「AWSのサービス」、ユースケースには、「EC2」を選択し、「次へ」をクリックします

  3. ポリシー「AmazonSSMManagedInstanceCore」を選択し、「次へ」をクリックします
    image.png

  4. ロール名を入力し「ロールを作成」をクリックします

EC2インスタンスを起動する

  1. EC2に移動します
  2. インスタンスの起動をクリックします
  3. VPC、SG等を指定し起動します(キーペアは不要です)
  4. 起動したら、セキュリティ>IAMロールの変更で、作成したIAMロールをアタッチします
    image.png
  5. セキュリティグループで、ポート443で、自身のサブネットのCIDRを設定します

VPCeの作成

image.png

VPCe用のSGを作成する

  1. EC2に移動します
  2. ナビゲーションペインで、「セキュリティグループ」をクリックします
  3. 「セキュリティグループを作成」をクリックします
  4. 用意したVPCを選択し、インバウンドルールには、443でEC2インスタンスに設定したセキュリティグループを指定します

VPCeを作成する

  1. VPCに移動します
  2. ナビゲーションペインで、「エンドポイント」をクリックします
  3. 「エンドポイントの作成」をクリックします
  4. 下記の3つのVPCeを作成します。セキュリティグループには既に作成したVPCeのセキュリティグループをアタッチします
    • com.amazonaws.{region}.ec2
    • com.amazonaws.{region}.ssmmessages
    • com.amazonaws.{region}.ec2messages

接続する

  1. EC2に移動します
  2. EC2を選択し、「インスタンスに接続を」クリックします
  3. セッションマネージャータブを選択し、「接続」をクリックします
    image.png
  4. ログインできました
    image.png

VPC間の疎通

接続できないことを事前に確認するため、Transit GWの作成前にVPC間の通信を試します。

VPC A → VPC B

  1. VPC A → VPC Bにpingを実行します。やはり失敗しています
    sh-5.2$ ping -c 3 10.1.135.197
    PING 10.1.135.197 (10.1.135.197) 56(84) bytes of data.
    
    --- 10.1.135.197 ping statistics ---
    3 packets transmitted, 0 received, 100% packet loss, time 2059ms
    
    sh-5.2$
    

VPC B → VPC A

  1. VPC B → VPC Aにpingを実行します。やはり失敗しています
    sh-5.2$ ping -c 3 10.0.138.37
    PING 10.0.138.37 (10.0.138.37) 56(84) bytes of data.
    
    --- 10.0.138.37 ping statistics ---
    3 packets transmitted, 0 received, 100% packet loss, time 2062ms
    
    sh-5.2$ 
    

Transit Gatewayの作成

image.png

トランジットゲートウェイの開始方法を基に試します。

  1. VPCに移動します

  2. ナビゲーションペインの「Transit Gateway」をクリックします

  3. 「Transit Gatewayを作成」をクリックします

  4. 下記を入力し、「Transit Gatewayを作成」をクリックします

    • 名前タグ
    • Amazon側のASN
      • 16 ビット ASN の場合、範囲は 64512 〜 65534
      • 32 ビット ASN の場合、範囲は 4200000000 〜 4294967294

    image.png
    image.png

VPCをTransit Gatewayに接続

image.png

2つのアタッチメントを作成します

  1. VPCに移動します

  2. ナビゲーションペインの「Transit Gateway アタッチメント」をクリックします

  3. 「Transit Gateway アタッチメントを作成」をクリックします

  4. 下記を入力し、「Transit Gateway アタッチメントを作成」をクリックします

    • 名前:任意
    • TransitGateway ID:作成したTransit Gatewayを選択
    • アタッチメントタイプ:VPC
    • VPCアタッチメント
      • VPC IDとサブネット:作成したVPCとサブネット
        image.png
        image.png
  5. しばらくすると、状態「Available」、関連付けの状態が「Associated」になります
    image.png

トランジットゲートウェイと VPC の間にルートを追加

image.png

それぞれのVPCのルートテーブルを修正します

  1. VPCに移動します
  2. ナビゲーションペインの「ルートテーブル」をクリックします
  3. VPCのルートテーブルを選択します
  4. 「ルートを編集」をクリックします
  5. 「ルート追加」をクリックし下記を入力し、「変更を保存」をクリックします
    • 送信先: 送信先のVPCのCIDR
    • ターゲット:Transit Gateway
      image.png

セキュリティグループを修正

image.png

それぞれのEC2のセキュリティグループを修正します

  1. EC2に移動します
  2. 対象のセキュリティグループを選択し、インバウンド編集ルールを修正します
  3. カスタムICMPと反対のVPCを選択し、「ルールを保存」

テスト

VPC A → VPC B

  1. VPC AのEC2にログインします
  2. pingで疎通します。繋がりました!
    sh-5.2$ ping -c 3 10.1.135.197
    PING 10.1.135.197 (10.1.135.197) 56(84) bytes of data.
    64 bytes from 10.1.135.197: icmp_seq=1 ttl=126 time=0.838 ms
    64 bytes from 10.1.135.197: icmp_seq=2 ttl=126 time=0.648 ms
    64 bytes from 10.1.135.197: icmp_seq=3 ttl=126 time=0.626 ms
    
    --- 10.1.135.197 ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 2074ms
    rtt min/avg/max/mdev = 0.626/0.704/0.838/0.095 ms
    sh-5.2$
    

VPC B → VPC A

  1. VPC BのEC2にログインします
  2. pingで疎通します。繋がりました!
    sh-5.2$ ping -c 3 10.0.138.37
    PING 10.0.138.37 (10.0.138.37) 56(84) bytes of data.
    64 bytes from 10.0.138.37: icmp_seq=1 ttl=126 time=0.752 ms
    64 bytes from 10.0.138.37: icmp_seq=2 ttl=126 time=0.709 ms
    64 bytes from 10.0.138.37: icmp_seq=3 ttl=126 time=0.618 ms
    
    --- 10.0.138.37 ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 2046ms
    rtt min/avg/max/mdev = 0.618/0.693/0.752/0.055 ms
    sh-5.2$
    

考察

今回、Transit Gatewayを触ってみました。次回は、リージョン間、アカウント間での接続を試して見たいと思います。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0