获取 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
我有一个创建 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