获取 Aurora IP 并在 UserData 中将其用于 AWS CloudFormation 中的另一个实例

Get Aurora IP and use it in UserData for another instance in AWS CloudFormation

我有一个创建 2 个实例的 CloudFormation 脚本 - 一个 Aurora RDS 服务器和一个将使用它的 EC2 实例。我需要在 EC2 实例的初始化脚本中使用 Aurora 的 IP 地址,以便我可以为数据库做种。

所以 Aurora 需要启动并且 运行 在我在 EC2 上的初始化脚本执行之前。另一件事是我需要 IP 地址。

"UserData"         : {
    "Fn::Base64" : {
        "Fn::Join" : [
            "",
            [
                "<script>\n",
                "seedtool.exe ", { "Ref" : "MyAuroraDbInstance::InternalIP" }, "\n",
                "</script>\n"
            ]
        ]
    }
},

所以我的问题是,在上面的脚本中我应该用什么代替 MyAuroraDbInstance::InternalIP

在 DBInstance 上使用 Fn::GetAtt 并请求 Endpoint.Address 的属性。这不会给一个IP,它会给一个CNAME