CloudFormation构建集群并需要将主IP传递给其他资源

时间:2016-04-26 18:32:26

标签: amazon-cloudformation

我有一个CloudFormation模板,我目前用IP地址硬编码,我知道我在子网中。作为一家大公司的一员,我需要让它变得动态,因为我创建了更多集群并且必须引用IP地址。在我目前的设置中,我有1个主人和一群奴隶,他们都需要知道主人的IP。他们不需要彼此了解。

我找到了以下内容:

"MasterNetInt" : {
  "Type" : "AWS::EC2::NetworkInterface",
  "Properties" : {
    "SubnetId": { "Ref" : "MySubnet" }
  }
}

我的问题是,我只需要放置这一个资源,而不是在10个奴隶的每个下面都有这样的东西:

    "UserData": {
                        "Fn::Base64": {
                            "Fn::Join": [
                                "", [
        "sed -i -e 's/server_host=localhost/server_host=", { "Fn::GetAtt": [ "MasterNetInt", "PrimaryPrivateIpAddress" ] }, "/g' /etc/master/config.ini \n",
...

1 个答案:

答案 0 :(得分:1)

假设引用名称是" MasterNetInt"这应该可以为您提供IP

 "Fn::GetAtt": [
                            "MasterNetInt",
                            "PrivateIp"
                        ]