小编Jam*_*ert的帖子

AWS CloudFormation:如何从VPC获取子网列表?

在CloudFormation中,我正在创建一个VPC,两个EC2实例和一个Elasticache.在模板中,我正在尝试将弹性缓存添加到vpc中.在创建AWS :: Elasticache :: SubnetGroup时发生了问题

    "CacheSubnetGroup" : {
      "Type" : "AWS::ElastiCache::SubnetGroup",
      "Properties" : {
        "Description" : "Subnets available for the ElastiCache Cluster",
        "SubnetIds" : [ ... ]
      }
    },
Run Code Online (Sandbox Code Playgroud)

希望要求用户输入所建议的子网列表在这里,因为我假设用户不知道子网是什么.有没有类似于{"Fn :: GetAtt"的函数:["myVpc","SubnetList"]}?

编辑 在jarmod的响应之后,我正在创建子网,vpc和其他所有内容.但仍有一个问题.我可以在创建的VPC中启动EC2,但是实例会被创建,并且在初始化实例时会关闭实例,并且新实例会被启动.这个循环继续,直到我删除cf堆栈.这是我认为问题的起源部分:

"WebServerGroup" : {
  "Type" : "AWS::AutoScaling::AutoScalingGroup",
  "Properties" : {
    "VPCZoneIdentifier" : [{ "Ref" : "InstanceSubnet1" }, { "Ref" : "InstanceSubnet2" }, { "Ref" : "InstanceSubnet3" }, { "Ref" : "InstanceSubnet4" }],
    "LaunchConfigurationName" : { "Ref" : "LaunchConfig" },
    "MinSize" : "1",
    "MaxSize" …
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 subnet amazon-web-services amazon-elasticache aws-cloudformation

7
推荐指数
2
解决办法
6670
查看次数