サイトアイコン 協栄情報ブログ

AWS Transit Gateway(TGW)をCloudFormationで構築する方法

AWS Transit Gateway のリソース

AWS Transit Gateway は、複数の VPC、オンプレミスネットワーク、さらには他の AWS リージョン間を接続するための中央ハブとして機能します。このブログでは、CloudFormation を使って Transit Gateway の構成を自動化するための主要リソースを詳しく解説します。

Transit Gateway 関連リソースの役割

1. AWS::EC2::TransitGatewayRouteTableAssociation


2. AWS::EC2::TransitGatewayRouteTablePropagation

伝播の詳細説明

伝播 (Propagation) とは、Transit Gateway Attachment が持つルート情報を Transit Gateway Route Table に自動で共有する仕組みです。

伝播を使うメリット:

伝播がない場合の課題:


3. AWS::EC2::TransitGatewayRoute


4. AWS::EC2::TransitGatewayPeeringAttachment


伝播と関連付けの違い

機能 伝播 (Propagation) 関連付け (Association)
役割 アタッチメントからルート情報をルートテーブルに自動的に反映。 アタッチメントを特定のルートテーブルに関連付けて、そのルートテーブルのルールを適用。
必要なリソースタイプ AWS::EC2::TransitGatewayRouteTablePropagation AWS::EC2::TransitGatewayRouteTableAssociation
影響 伝播されたルートは、ルートテーブルに自動的に追加され、他のネットワークからもルートが見えるようになる。 関連付けられたアタッチメントは、特定のルートテーブルのルールに従って通信を行う。

CloudFormation を使った統合例

以下は、Transit Gateway とそのリソースを統合的に管理するための CloudFormation テンプレート例です。

Resources:
  MyTransitGateway:
    Type: AWS::EC2::TransitGateway
    Properties:
      Description: "My Transit Gateway"
      DefaultRouteTableAssociation: enable
      DefaultRouteTablePropagation: enable

  MyTransitGatewayRouteTable:
    Type: AWS::EC2::TransitGatewayRouteTable
    Properties:
      TransitGatewayId: !Ref MyTransitGateway

  MyTransitGatewayAttachment:
    Type: AWS::EC2::TransitGatewayVpcAttachment
    Properties:
      TransitGatewayId: !Ref MyTransitGateway
      SubnetIds:
        - subnet-12345678
        - subnet-87654321
      VpcId: vpc-1a2b3c4d

  MyTransitGatewayRouteTableAssociation:
    Type: AWS::EC2::TransitGatewayRouteTableAssociation
    Properties:
      TransitGatewayAttachmentId: !Ref MyTransitGatewayAttachment
      TransitGatewayRouteTableId: !Ref MyTransitGatewayRouteTable

  MyTransitGatewayRouteTablePropagation:
    Type: AWS::EC2::TransitGatewayRouteTablePropagation
    Properties:
      TransitGatewayAttachmentId: !Ref MyTransitGatewayAttachment
      TransitGatewayRouteTableId: !Ref MyTransitGatewayRouteTable

  MyTransitGatewayRoute:
    Type: AWS::EC2::TransitGatewayRoute
    Properties:
      DestinationCidrBlock: 10.0.0.0/16
      TransitGatewayAttachmentId: !Ref MyTransitGatewayAttachment
      TransitGatewayRouteTableId: !Ref MyTransitGatewayRouteTable

AWS Transit Gateway を活用することで、スケーラブルかつ効率的なネットワークアーキテクチャを構築できます。特に、CloudFormation を用いた自動化は運用の効率化に大きく貢献します。

モバイルバージョンを終了