【问题标题】:How to launch EC2 instance using AWS cloudformation如何使用 AWS cloudformation 启动 EC2 实例
【发布时间】:2017-05-25 02:52:15
【问题描述】:

我已将我的 AMI 提交到 AWS Marketplace,但它被拒绝说我需要将我的手动说明转换为 CloudFormation 模板。我对用户的手动说明目前声明:

- User must create a new Role
- Assign AWSS3FullAccess to this role
- Launch the AMI with WebSecurityGroup (port 80 and 443)

我之前没有使用过 CloudFormation,所以我想问几个问题

  1. 是否可以创建 CloudFormation 模板,以便:1) 创建新角色 2) 为该角色分配策略 3) 使用 AMI(将指定 amiID)创建 EC2 实例角色和 WebSecurityGroup。

  2. 我创建了以下模板,该模板创建了一个新角色并为其分配了完整的 S3 访问权限。

但我不知道其余的该怎么做。如何使用这个新角色启动 EC2 实例并指定我的 AMI ID?

AWSTemplateFormatVersion: '2010-09-09'
Description: Sample

Resources:
  MyAmiRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Version: '2012-10-17'
        Statement:
        - Effect: Allow
          Principal:
            Service:
            - ec2.amazonaws.com
          Action: sts:AssumeRole
      ManagedPolicyArns:
      - arn:aws:iam::aws:policy/AmazonS3FullAccess
      Path: "/"

【问题讨论】:

    标签: amazon-ec2 amazon-cloudformation amazon-ami aws-marketplace


    【解决方案1】:

    在您的 Amazon CloudFormation 模板中,您将定义以下资源:

    • IAM::Role(正如你已经完成的那样)
    • IAM::InstanceProfile(允许 Amazon EC2 实例担任角色)
    • EC2::SecurityGroup
    • AWS::EC2::Instance 指的是 InstanceProfile、您的 AMI 和安全组

    有关示例,请参阅:

    最后一个链接通常提供每种资源类型的示例,因此只需复制示例,然后针对您的用例进行自定义。

    【讨论】:

      猜你喜欢
      • 2020-04-23
      • 1970-01-01
      • 2017-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-23
      • 2023-03-31
      相关资源
      最近更新 更多