Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 我们如何使用相同的userdata配置在同一模板中重用已配置的AMI_Amazon Web Services_Devops_User Data_Amazon Cloudformation - Fatal编程技术网

Amazon web services 我们如何使用相同的userdata配置在同一模板中重用已配置的AMI

Amazon web services 我们如何使用相同的userdata配置在同一模板中重用已配置的AMI,amazon-web-services,devops,user-data,amazon-cloudformation,Amazon Web Services,Devops,User Data,Amazon Cloudformation,我已经使用cloudformation模板创建了实例,并使用userdata配置和powershell dsc对其进行了配置。我已经为这个实例创建了AMI,以便下次它可以加快我的堆栈创建速度 现在,我如何在同一个模板中使用ThisAMI,使其绕过在实例上完成的所有配置和安装,并直接向waithandler发送成功信号 我尝试在我的模板,但它是失败的 提前感谢,, Lokesh Jangir听起来您需要检查您的用户数据,以查看是否所有内容都已配置,如果已配置,则您只需停止并发送通知,而不是重新设置

我已经使用cloudformation模板创建了实例,并使用userdata配置和powershell dsc对其进行了配置。我已经为这个实例创建了AMI,以便下次它可以加快我的堆栈创建速度

现在,我如何在同一个模板中使用ThisAMI,使其绕过在实例上完成的所有配置和安装,并直接向waithandler发送成功信号

我尝试在我的模板,但它是失败的

提前感谢,,
Lokesh Jangir

听起来您需要检查您的用户数据,以查看是否所有内容都已配置,如果已配置,则您只需停止并发送通知,而不是重新设置


最终,听起来有两个模板更容易——一个用于创建AMI,另一个用于在其他设置中重用它。第二个模板可以将AMI ID作为一个参数,因此它更灵活,并且可以在创建不同的AMI时使用

1.要在cloudformation模板中使用您的AMI id,请从添加参数开始,这样您就可以轻松地更改它:

`

2.启动配置中使用该参数:

`

3.或直接在EC2实例中使用它:

`

"Parameters": {
...
"amiId": {
  "Type": "String",
  "Default": "ami-073bb070",
  "AllowedPattern": "[a-zA-Z0-9\\-]*",
  "Description": "Only [a-zA-Z0-9\\-]* allowed."
},
...
}
  "aLaunchConfig": {
      "Type": "AWS::AutoScaling::LaunchConfiguration",
      "Properties": {
        "ImageId": { "Ref" : "amiId" },
    ...
"someEC2": {
  "Type": "AWS::EC2::Instance",
  "Properties": {
    "ImageId": { "Ref" : "amiId" },