AWS CloudFormation: как мне обратиться к таблице маршрутов по умолчанию / основной (которая создается при создании VPC) в шаблоне облачной информации? - PullRequest
0 голосов
/ 26 ноября 2018

У меня есть шаблон CloudFormation, который создает пользовательский VPC.Шаблон создает следующие ресурсы - VPC, интернет-шлюз, присоединяет IGW к VPC и создает общедоступную подсеть.Я хочу добавить маршрут (пункт назначения 0.0.0.0/0, целевой IGW) в таблицу маршрутов, которая создается как часть VPC.

Я прочитал документацию по облачной информации для маршрутов, таблиц маршрутов к рисункуКак это сделать, но безрезультатно.

Я могу использовать функцию Fn :: Ref для ссылки на ресурсы или параметры, которые явно созданы как часть шаблона, но как я могу ссылаться на ресурсы, которыесоздавать по своей сути с VPC?

Любые идеи о том, как повторно использовать существующую таблицу маршрутов, NACL и Security Group, приветствуются.

Спасибо,

Ответы [ 2 ]

0 голосов
/ 01 марта 2019
  1. Не используйте таблицу маршрутов по умолчанию (см. https://serverfault.com/questions/588904/aws-vpc-default-route-table-in-cloudformation)
  2. . Вы можете получить группу безопасности по умолчанию согласно https://serverfault.com/questions/544439/aws-cloudformation-vpc-default-security-group
  3. И, наконец, вы также можете получить DefaultNetworkAcl.в той же группе, что и DefaultSecurityGroup, см. также https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html)
0 голосов
/ 26 ноября 2018

Пока хорошая работа - у вас есть интернет-шлюз, таблица маршрутов и общедоступная подсеть.Теперь вам нужно создать маршрут и прикрепить таблицу маршрутов к подсети, если вы еще этого не сделали.Если вы используете YAML, это может выглядеть примерно так:

 InternetGateway:
    Type: AWS::EC2::InternetGateway
    Properties:
      Tags:
        - Key: Name
          Value: !Ref EnvironmentName

  InternetGatewayAttachment:
    Type: AWS::EC2::VPCGatewayAttachment
    Properties:
      InternetGatewayId: !Ref InternetGateway
      VpcId: !Ref VPC

  PublicSubnet1:
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref VPC
      AvailabilityZone: !Select [ 0, !GetAZs '' ]
      CidrBlock: !Ref PublicSubnet1CIDR
      MapPublicIpOnLaunch: true
      Tags:
        - Key: Name
          Value: !Sub ${EnvironmentName} Public Subnet (AZ1)

  PublicRouteTable:
    Type: AWS::EC2::RouteTable
    Properties:
      VpcId: !Ref VPC
      Tags:
        - Key: Name
          Value: !Sub ${EnvironmentName} Public Routes

  DefaultPublicRoute:
    Type: AWS::EC2::Route
    DependsOn: InternetGatewayAttachment
    Properties:
      RouteTableId: !Ref PublicRouteTable
      DestinationCidrBlock: 0.0.0.0/0
      GatewayId: !Ref InternetGateway

  PublicSubnet1RouteTableAssociation:
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      RouteTableId: !Ref PublicRouteTable
      SubnetId: !Ref PublicSubnet1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...