首页 > 解决方案 > 在 Parameter Store 中创建存储在同一 Cloudformation 模板中构建的 AMI 的 ImageID 的参数时出错

问题描述

运行 cloudformation 模板时收到此错误:CREATE_FAILED: Stabilizing the parameter creation for parameter /GS/web:1

以下是资源部分中参数和策略的资源创建代码:

- PolicyName: SSMCreation
    PolicyDocument:
      Version: "2012-10-17"
      Statement:
        - Effect: Allow
          Action:
            - ssm:DescribeParameters
            - ssm:AddTagsToResource
            - ssm:GetParameter
            - ssm:GetParameters
            - ssm:GetParametersByPath
            - ssm:GetParameterHistory
            - ssm:PutParameter
            - ssm:LabelParameterVersion
            - ssm:DeleteParameter
            - ssm:DeleteParameters
          Resource:
            - !Sub "arn:${AWS::Partition}:ssm:${AWS::Region}:${AWS::AccountId}:parameter/*"

SSMImageParameter:
Type: AWS::SSM::Parameter
Properties:
  Type: String
  DataType: aws:ec2:image
  Name: /GS/web
  Value: !GetAtt CustomImage.ImageId

标签: amazon-web-servicesamazon-cloudformation

解决方案


向 imageCreation Lambda 添加 waitCondition

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html

图像创建需要一段时间,并且可能会在 ImageId 可用之前创建 SSM 参数(lambda 创建将成功,依赖项将成功,但必须在自定义 lambda 执行后发生)


推荐阅读