标签: aws-cloudformation

如何在Cloudformation模板中创建可变数量的EC2实例资源?

如何根据模板参数在Cloudformation模板中创建可变数量的EC2实例资源?

EC2 API和管理工具允许启动同一AMI的多个实例,但我无法使用Cloudformation找到如何执行此操作.

amazon-ec2 amazon-web-services aws-cloudformation autoscaling

27
推荐指数
4
解决办法
2万
查看次数

我是否可以强制删除正在进行回滚的AWS CloudFormation堆栈

AWS CloudFormation回滚(例如,UPDATE_ROLLBACK_IN_PROGRESS)一直在进行中,比如超过一个半小时.我想完全删除堆栈或强制停止任何活动.这可能吗?

谢谢!

aws-cloudformation

27
推荐指数
4
解决办法
3万
查看次数

创建AMI图像作为云形成堆栈的一部分

我想创建一个EC2 cloudformation堆栈,基​​本上可以按照以下步骤进行描述:

1.-启动实例

2.-提供实例

3.-停止实例并从中创建AMI图像

4.-创建一个自动缩放组,将创建的AMI映像作为源以启动新实例.

基本上我可以在一个cloudformation模板中执行1和2,在第二个模板中执行4.我似乎无法做的是从云信息模板中的实例创建AMI图像,如果我想删除堆栈,基本上会产生必须手动删除AMI的问题.

话虽这么说,我的问题是:

1.-有没有办法从cloudformation模板中的实例创建AMI图像?

2.-如果1的答案为否,是否有办法添加AMI图像(或任何其他资源)使其成为完成堆栈的一部分?

编辑:

为了澄清,我已经解决了创建AMI并在云信息模板中使用它的问题,我只是无法创建AMI INSIDE的cloudformation模板或以某种方式将其添加到创建的堆栈中.

正如我对Rico的回答所评论的那样,我现在所做的是使用一个基本上有3个步骤的ansible playbook:

1.-使用cloudformation模板创建基本实例

2.-使用ansible创建在步骤1中创建的实例的AMI

3.-使用第二个云形式模板创建堆栈的其余部分(ELB,自动扩展组等),该模板更新在步骤1中创建的模板,并使用在步骤2中创建的AMI来启动实例.

这就是我现在管理它的方式,但我想知道是否有任何方法可以创建AMI INSIDE一个cloudformation模板,或者是否可以将创建的AMI添加到堆栈中(类似于告诉堆栈,"嘿,这属于你也是,所以处理它").

amazon-ec2 aws-cloudformation amazon-ami

26
推荐指数
3
解决办法
1万
查看次数

用于创建ECS服务的Cloudformation模板卡在CREATE_IN_PROGRESS中

我正在使用Cloudformation创建AWS ECS服务.

一切似乎都成功完成,我可以看到实例被附加到负载均衡器,负载均衡器正在声明实例是健康的,如果我点击负载均衡器,我成功地被带到了我的运行容器.

看看ECS控制面板,我可以看到服务已经稳定,一切看起来还不错.我还可以看到容器是稳定的,并且没有被终止/重新创建.

但是,Cloudformation模板永远不会完成,它会在CREATE_IN_PROGRESS大约30-60分钟之后停留,当它回滚时声称服务没有稳定.看看CloudTrail,我可以看到一些RegisterInstancesWithLoadBalancer实例化的ecs-service-scheduler,都具有相同的参数,即相同的实例ID和负载均衡器.我正在使用ECS的标准IAM角色和权限,因此它不应该是权限问题.

有人有类似的问题吗?

amazon-web-services amazon-ecs aws-cloudformation

25
推荐指数
5
解决办法
2万
查看次数

使用cloudformation将Lambda函数启用到S3存储桶

我们正在使用CloudFormation模板创建一个S3存储桶.每当将文件添加到S3存储桶时,我想关联(将事件添加到S3存储桶)Lambda函数.

如何通过CloudFormation模板实现.CloudFormation中需要使用哪些属性.

amazon-s3 amazon-web-services aws-cloudformation

25
推荐指数
2
解决办法
2万
查看次数

有没有办法让cloudformation查询可用区域以创建子网?

我有一个尝试创建VPC的cloudformation脚本,每个AZ有一个子网.

当我跑:

aws ec2 describe-availablity-zones
Run Code Online (Sandbox Code Playgroud)

我得到了4个区域:

"AvailabilityZones": [
    {
        "State": "available", 
        "RegionName": "us-east-1", 
        "Messages": [], 
        "ZoneName": "us-east-1a"
    }, 
    {
        "State": "available", 
        "RegionName": "us-east-1", 
        "Messages": [], 
        "ZoneName": "us-east-1b"
    }, 
    {
        "State": "available", 
        "RegionName": "us-east-1", 
        "Messages": [], 
        "ZoneName": "us-east-1c"
    }, 
    {
        "State": "available", 
        "RegionName": "us-east-1", 
        "Messages": [], 
        "ZoneName": "us-east-1d"
    }
 ]
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试创建堆栈时,出现错误:

  "ResourceStatusReason": "Value (us-east-1a) for parameter availabilityZone
   is invalid. Subnets can currently only be created in the following 
   availability zones: us-east-1c, us-east-1b, us-east-1d.", 
Run Code Online (Sandbox Code Playgroud)

我正在指定AZ

      "AvailabilityZone" : {
        "Fn::Select" : [ "0", …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-cloudformation availability-zone

24
推荐指数
3
解决办法
1万
查看次数

使用 CDK Deploy 需要哪些 IAM 权限?

我的团队有一个在执行 IAM 角色下运行的管道。我们希望通过 CloudFormation 或 CDK 将代码部署到 AWS。

过去,我们会在创建/更新 CloudFormation 堆栈之前使用执行 IAM 角色将一些工件上传到 S3 存储桶。

我们最近切换到 CDK,并试图通过使用 CDK Deploy 获得尽可能多的自动化,但遇到了许多我们需要添加的权限项,而我们之前没有这些项(例如,cloudformation:GetTemplate) .

我们不想只授予 * (我们想遵循最小权限),但我找不到任何明确的记录列表。

CDK Deploy 是否有标准的权限列表?除了标准列表之外,还有什么“值得拥有的”吗?

aws-cloudformation amazon-iam aws-cdk

24
推荐指数
3
解决办法
6365
查看次数

在Cloudformation模板中为API网关启用CORS

我正在为我的环境创建AWS Cloudformation模板,但我找不到为API Gateway方法启用CORS的方法.

我可以使用AWS控制台配置它(这是官方文档),但是如何在Cloudformation模板中执行此操作?

amazon-web-services cors aws-cloudformation aws-api-gateway

23
推荐指数
1
解决办法
1万
查看次数

Cloudformation Cognito - 如何通过SAM模板设置App Client设置,域和联合身份

我已经将我的cognito用户池cloudformation模板工作,并将其集成到我的api网关.但不知何故,我仍然需要手动配置应用客户端设置,域和联合身份,以便为用户提供有效的登录门户.我一直在寻找自动化这些的可能解决方案,但我似乎无法找到任何接近它的东西.

我想通过cloudformation sam模板自动配置应用客户端设置,域和联合身份,因此我不必手动执行这些操作.

任何建议都非常感谢.谢谢.

(附件已发布以获取更多信息)

yaml sam amazon-web-services aws-cloudformation cognito

23
推荐指数
4
解决办法
9742
查看次数

使用Cloudformation在S3存储桶中创建文件夹

我可以使用cloudformation创建一个S3存储桶,但是想在S3存储桶中创建一个文件夹

<mybucket>--><myfolder>
Run Code Online (Sandbox Code Playgroud)

请让我知道用于在存储桶中创建文件夹的模板......两者都应该在同一时间创建...

我正在使用AWS lambda,如下所示

stackname = 'myStack'
client = boto3.client('cloudformation')
response = client.create_stack(
    StackName= (stackname),
    TemplateURL= 'https://s3.amazonaws.com/<myS3bucket>/<myfolder>/nestedstack.json',
    Parameters=<params>
)
Run Code Online (Sandbox Code Playgroud)

amazon-s3 aws-cloudformation

22
推荐指数
2
解决办法
2万
查看次数