小编the*_*ien的帖子

AWS::CloudFormation::Init 不执行命令

我正在尝试在实例上安装 ansible。我想我可以AWS::CloudFormation::Init用来执行sudo pip install ansible. 不过,这似乎不起作用。这是我的实例资源:

ansibleInstance:
  Type: 'AWS::EC2::Instance'
  Metadata:
    'AWS::CloudFormation::Init':
      commands:
        ansible:
          command: "sudo pip install ansible"
          test: "pip --version"
          ignoreErrors: 'false'
  Properties:
    ImageId: ami-467ca739
    KeyName: Candidate-EyMm7zuOcn
    InstanceType: t2.micro
    SubnetId: !Ref subnetTest
    SecurityGroupIds:
    - !Ref allowSSH
    Tags:
      - Key: Name
        Value: Test
Run Code Online (Sandbox Code Playgroud)

有没有办法查看尝试执行此操作时发生的情况,以便我可以找出失败的位置/原因?有没有其他人可能会建议考虑解决这个问题?

EDIT1:我删除了sudo以防万一,以防万一,无论出于何种原因(我认为不会,但我还是想完全消除它)。那没有影响。我还验证了aws-cli工具已安装,这是预期的,因为它AWS Linux AMI

EDIT2:这是 ansibleInstance 资源的一个版本,我试图在其中通过UserData以下方式执行命令:

ansibleInstance:
  Type: 'AWS::EC2::Instance'
  Properties:
    ImageId: ami-467ca739
    KeyName: Candidate-EyMm7zuOcn
    InstanceType: t2.micro
    SubnetId: !Ref subnetTest
    SecurityGroupIds:
    - !Ref …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-cloudformation

5
推荐指数
1
解决办法
5818
查看次数