gpt4 book ai didi

amazon-web-services - AWS 云形成 : How to output a machine's PublicIP?

转载 作者:行者123 更新时间:2023-12-04 08:17:44 26 4
gpt4 key购买 nike

我编写了一个 CloudFormation 模板,用于创建 Linux docker 主机。

我想在“输出”部分下显示计算机的公共(public)IP。

这是模板的相关部分:

"Outputs" : {
"ServerAddress" : {
"Value" : { "Fn::GetAtt" : [ "Server", "PublicDnsName" ] },
"Description" : "Server Domain Name"
},
"SecurityGroup" : {
"Value" : { "Fn::GetAtt" : [ "ServerSecurityGroup", "GroupId" ] },
"Description" : "Server Security Group Id"
},
"PublicIp" : {
"Value" : { "Fn::GetAtt" : [ "ServerPublicIp", "PublicIp" ]},
"Description" : "Server's PublicIp Address"
},
}

我已阅读official AWS documentation关于使用“Fn::GetAtt”并尝试在我的模板中实现它,但是当我尝试创建堆栈时出现以下错误:

Error
Template validation error: Template error: instance of Fn::GetAtt references undefined resource ServerPublicIp

据我了解,GetAtt 行中的第一部分是 LogicalName(我可以选择它?),第二部分是上面链接中显示的真实属性。

所以我的问题是如何在“输出”部分下显示服务器的 PublicIP?

最佳答案

假设您的模板中有一个名为 Server 的 EC2 实例资源:

"Server" : {
"Type" : "AWS::EC2::Instance",
"Properties" : {
}
}

您输出引用其资源名称的公共(public) IP 地址:

"Outputs" : {
"PublicIp" : {
"Value" : { "Fn::GetAtt" : [ "Server", "PublicIp" ]},
"Description" : "Server's PublicIp Address"
}
}

关于amazon-web-services - AWS 云形成 : How to output a machine's PublicIP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42205622/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com