我第一次尝试使用CloudFormation来配置CloudFront发行版,该发行版使用S3 bucket作为其源
但是,当运行模板时,我收到错误您的一个或多个来源不存在。我假设这是由于源域名配置不正确造成的,但是我无法找到一个有效的配置
我目前拥有以下模板:
{
"AWSTemplateFormatVersion": "2010-09-09",
"Resources": {
"AssetBucket": {
"Type": "AWS::S3::Bucket",
我有一个主Cloudformation模板,它调用两个子模板。我运行了第一个模板,并在资源的Outputs部分捕获了输出。在嵌套的第二个模板中使用ChildStack01输出值时,我做了很多尝试,我不确定为什么会在模板的Resources块中出现模板格式错误:未解析的资源依赖项[XYZ]。这是我的主模板
{
"AWSTemplateFormatVersion": "2010-09-09",
"Resources": {
"LambdaStack": {
"Type": "
我正在使用cloudformation为我的aws帐户创建一个管理员组,我需要为所有管理员组添加一个自定义标记,以便保存他们的电子邮件以供通知之用。没有关于它的信息
是否可能标记为IAM资源?我知道这是有可能的。不,目前没有IAM对象可以在cloudfront中或使用管理控制台进行标记
我认为,由于标签主要用于计费和资源分组,IAM对象是免费的,代表权限、角色和权限,而不是资源或通用数据库
我认为对于您的场景来说,最好的替代方案是类似DynamoDB的东西来存储此配置
我一直在为一个项目的一些新基础设施设置CloudFormation模板,并成功地将其路由到53个托管区域
现在,理想情况下,我想创建一个包含所有托管区域和基本配置的“核心域”堆栈。问题是,我们已经使用AWS控制台手动创建了这些内容(它们用于测试/实时基础设施),是否有任何方法可以将现有的“HostedZoneId”作为属性提供给资源定义,并从本质上让它反思我们已经拥有的内容,然后应用差异?(如果我已经完成了我的工作,就不应该有什么不同,希望这样就应该是禁止的!)
我在文档中看不到“HostedZ
我已经能够使用CloudFormation创建一个计算环境、一个作业队列和十几个作业定义。太好了
除非我遗漏了什么,否则似乎没有任何元素可以使用CloudFormation提交我的工作定义(
起初,我认为我已经找到了答案,因为可以创建触发作业提交的CloudWatch事件。但是,我注意到CloudFormation中的事件规则不支持CLI/SDK那样的批处理。Lame
还有其他人使用CloudFormation部署批处理吗?你是如何提交作业的?我想我可以创建一个自定义资源,但这似乎比应该的要难。
我正在使用Bitbucket管道为无服务器应用程序制作CD。我希望对每个部署使用尽可能少的“构建分钟”。使用AWS作为支持时,serverless deploy命令的生命周期似乎是:
把包裹推到云端。(~60秒)
在部署完成之前,坐下来观察CloudFormation中的日志。(约20-30分钟)
由于时差很大,我不想做第二步。因此,我的问题很简单:如何部署一个无服务器应用程序,使其只执行第一步,并根据CloudFormation是否成功接受新包返回成功或失败
我查看了无服务器部署的文档,看不到
我尝试了我在这里找到的cloudformation模板。。。
它按预期工作。但我想为post请求提供参数。我的Curl命令应该如下所示
curl -d "mynumber=12345" -X POST https://tyin2sswj2.execute-api.us-east-1.amazonaws.com/mycall
我如何在cloudformation模板中的API网关处理它?我已经在lambda函数级别设置了环境变量
不起作用的模板是
很明显,我无法通过网关传递“mnumber
我正在使用代码管道部署Cloudformation模板。问题是这个Cloudformation模板有一些嵌套堆栈。嵌套堆栈模板需要位于S3存储桶中。因此,在触发主(父)CF模板之前,我需要将CF嵌套堆栈上载到S3
我没有找到使用代码管道实现这一点的方法
有什么建议吗?一种方法是使用Git钩子将嵌套堆栈复制到S3,例如post-receive钩子
另一个是在管道中添加另一个阶段来调用Lambda函数。您可以按照此步骤配置此步骤。设置“输入工件”字段时,CodePipeline将工件zip文件的路径
我有以下代码管道(cloudformation模板片段)
我的BuildDeployWebappTest步骤需要在上一个ExecuteChangeSet步骤中创建的s3存储桶的名称
如您所见,BuildDeployWebappTest步骤使用了WebappCodeBuildProjectTestStageCodeBuildProject配置。WEBAPP\u S3\u BUCKETenv变量需要设置为在ExecuteChangeSet步骤中创建的BUCKET名称的值
我怎样才能做到这一点
目前,
我跟随这个博客开始cloudformation堆栈
获取以下错误
API: iam:GetInstanceProfile User: arn:aws:sts::453333:assumed-role/xyz/AWSCloudFormation is not authorized to perform: iam:GetInstanceProfile on resource: instance profile AirflowInstanceProfile
我在我的iam角色中添加了以下内容
&qu
在资源上设置多个条件时,未正确评估我的CloudFormation条件
Conditions:
HasDatabase: !Equals [ !Ref HasDatabase, true ]
IsECS: !Equals [ !Ref IsECS, true ]
Resources:
MyFakeBucket:
Type: AWS::S3::Bucket
Condition: IsECS
Condition: HasDatabase
我创建了一个模块化的C
我将标记分配给CF堆栈,并在CF模板的资源级别上分配给ECR存储库资源。一旦创建,它们都不会被分配到ECR存储库中
有人能通过CF确认他们有ECR存储库的标签吗?如果是这样,这一定是我的问题
地区:eu-west-1
注意-我指的不是docker图像标签。这是ECR Repo上的AWS标记。在我的案例中,ECR存储库上的标记立即得到支持和使用
下面是我的CloudFormation模板的摘录:
AWSTemplateFormatVersion: '2010-09-09'
Description:
我阅读了如何将云形成模板(CFT)导入CDK代码
这很有趣,但在CDK代码中似乎没有使用CFT创建的任何对象的方法。因此,例如,如果您在CFT中定义了一个apigateway或appsync实例,并且希望使用非常好的机制在CDK中创建Lambda函数,那么似乎没有办法将Lambda函数附加到apigateway或appsync实例
这意味着如果无法从CDK引用CFT对象,那么从CFT迁移到CDK是一个完整的叉车升级。不过,这听起来并不正确,这将是收养的一个重大障碍
如何在CDK代码中引用CFT创
我有以下cloudformation模板(它是serverless.yml模板的一部分)来创建使用SES发送电子邮件的Cognito用户池
我正在ap-Southwest-2上部署我的无服务器项目,我想使用同一个地区发送电子邮件。我已经在ap-Southwest-2中预先验证了SES模板中的帐户,但是如果我用ap-Southwest-2(或无服务器伪变量{AWS::Region})区域替换下面模板(最后一行)中的SourceArn,我会得到一个错误:
发生错误:CognitoUserPool-无
假设我在云形成(或SAM)模板中拥有以下秘密,我将其作为堆栈的一部分部署到AWS IAM帐户(当然,由运行云形成部署的脚本动态分配SecretString的敏感值):
资源:
我的秘密:
类型:AWS::SecretsManager::Secret
特性:
姓名:MySecret
描述:尴尬的事实,我想保密
秘笈:“我觉得你很酷”
当我检查aws控制台上的堆栈页面时,我注意到“模板”选项卡以纯文本形式显示整个模板,包括这个秘密
这对我来说似乎非常不受欢迎,我想知道是否有什么方法可以减轻我所缺少
我已经完成了本文中提到的前几个步骤
但我在这方面有一个错误:
aws cloudformation deploy \
--stack-name comandrunner-test-iops \
--template-file ./examples/commandrunner-example-iopscalc-template.yaml
以下资源未能创建:[IopsCalculator]。回降
由用户请求
我如何知道在这种情况下为什么没有成功创建堆栈?我查看了该命令的文档:
那里没有什么真正
实际上,服务目录使用CloudFormation模板来配置产品/环境
我尝试在AWS文档示例的帮助下配置该产品。因为AWS有CF模板,用于创建具有公共访问权限的AWS实例
我配置了产品,我的意思是创建了EC2实例,但这里我需要通过Cloudformation创建的EC2实例的IP地址
谁能帮我使用AWS Cli命令/AWS Powershell命令来获取产品的输出部分。我自己得到了答案。
最后我得到了供应产品的IP地址
$newProduct = New-SCProvisionedProduct
一旦CloudFormation堆栈进入update\u ROLLBACK\u COMPLETE状态,是否就不可能更新它?我正在使用CodePipeline来部署东西。我发现,一旦堆栈进入无效状态,很多时候,我必须手动删除堆栈,让它重新创建所有内容。这是正确的方法吗?如果堆栈处于UPDATE\u ROLLBACK\u COMPLETE状态,您应该能够再次更新堆栈
如果回滚失败,您可能需要从CloudFormation调用,然后才能再次更新
如果您的堆栈卡在UPDATE\u ROLLBACK\u
我在看类似的问题,但这并不能完全回答我的问题
我有一段
AWS::CloudFormation::Init:
commands:
somecommandwithargs -a $aws/something/somethingelse
这里,cloudformation init将$aws计算为一个空白字符串,因为它将其解释为一个变量
我想把它完全保留为$aws/某物/某物
我在CFN文档中找不到说明在这种情况下如何转义$symbols的文档。我很确定CloudForm
我正在尝试在WindowsAWS CLI上使用以下命令创建堆栈
aws cloudformation create-stack --stack-name dockerApp --template-body file://./stack.json`
这里是stack.json包含我的模板定义
我得到以下错误:
分析参数“--模板正文”时出错:无法加载paramfilefile://./stack.json: [Errno 2]没有这样的文件或目录:u'/./stack.json'
以管理员身份打
我需要在后面添加一个名称!在我的cloudformation模板中,我试图在ecs中部署Java微服务&希望每个微服务都有不同的名称
我试过用!潜艇,但没有为我工作
TaskDefinition:
Type: AWS::ECS::TaskDefinition
Properties:
TaskRoleArn: !Ref TaskExecutionRole
ExecutionRoleArn: !Ref TaskExecutionRole
我正试图遵循AWS CloudFormation的最佳实践,并建立了许多嵌套在父堆栈下的小堆栈。大多数情况下,这是工作良好;但是,在中间堆栈中,我现在已经超过了最大60个参数计数。当我进入下一个级别并将这些中间堆栈聚合到主父堆栈中时,情况只会变得更糟
CloudFormation文档说,“要指定更多参数,可以使用映射或列表为单个参数分配多个值。”事实上,在回答60个参数限制问题时,这里至少给出了两次准确的引用。然而,人们如何做到这一点呢?当您从一组预定义的值中进行选择(例如,从这些AMI ID或
我有一个相当简单的cloudformation模板。我正在努力了解他们。我创建了一个在部署堆栈时尝试创建2 dyanmo表的表。但只创建了一个表。不是两个。我不确定我的语法有什么问题。粘贴下面的json
"AWSTemplateFormatVersion" : "2010-09-09",
"Resources" : {
"resource1" : {
"Type" : "AW
我曾尝试过这种情况,但我无法理解
我在SSM的参数存储中有一个名称和值,现在我正在使用代码管道从CLI运行CF模板,我希望CF模板直接从参数存储中获取值,并且不应该提示
在屏幕上要求我给出值
我试过这个,但它提示我
AWS::SSM::参数::值
这是当我在屏幕上上传模板时的提示。如何避免它并使脚本直接从参数存储中获取值对此,您有两个选择:
为参数提供一个默认值
在CodePiepline中使用,为参数提供所需的值
我正在使用cloudformation模板在ELB后面创建4个EC2实例。这些实例将与启动配置和自动缩放组相关联。
我们每2个月更新一次AMI。现在,如果我必须在没有任何停机时间的情况下更新AMI,那么最好的策略是什么。我用詹金斯来编曲
我心目中的计划是这样的
模板#1-创建ASG和启动配置
tempate#2使用创建的新实例创建/更新ELB
第一次执行
1.创建由启动配置和自动缩放组组成的cloudformation堆栈。
这将启动4个EC2实例并引导应用程序
2.创建将创建ELB的第二个模板
在CloudFormation模板中引用NetworkInterface时,我得到属性NetworkInterface的错误值必须是对象列表
以下是相关章节:
MyAppNetworkInterface:
类型:AWS::EC2::NetworkInterface
特性:
子网:!Ref SubnetPrivate
MyApp:
类型:AWS::EC2::实例
特性:
实例类型:t2.1中等
网络接口:
- !参考MyAppNetworkInterface
你不能那样做。相反,请独立创建这两个
我有以下cloudformation模板来创建一个cloudwatch事件、一个SQS队列、一个SQSQueuepolicy,以允许cloudwatch在s3对象更新时将日志转发到SQS队列
但是,;模板成功完成后。除非(通过aws控制台)“cloudwatch”-->选择我的事件-->单击直到步骤2事件详细信息“向SQS队列添加权限”-->更新事件,否则我不会在SQS队列中看到日志
我认为缺少的部分可能是,为了授予权限,我需要事件目标中的“RoleArn”。但是,AWS:SQS:QUEUEPO
我想将自定义资源(对象数组)的输出作为参数传递给子堆栈。我想作为参数传递给子堆栈的一个示例是:
[
{"Role":"Role1","IdentifierType":"Prefix","Identifiers":"Bucket1"}
{"Role":"Role2","IdentifierType":"Prefix","Identifiers":"Bucket2"}
]
如何将其传递到子堆栈?我尝试将子堆栈中的参数声明为String,然后将其声明为CommaDelimitedList。这两次,堆
我尝试使用下面提到的用户指南中提供的完全相同的示例它可以从控制台工作,但无法使用客户端创建堆栈。
我在尝试执行以下操作时出错:
{
"Resources": {
"AthenaNamedQuery": {
"Type": "AWS::Athena::NamedQuery",
"Properties": {
"Database": "swfnetadata",
"Description": "A query that selec
我最终发现Amplify无法推动我所做的任何更改,只有一个不存在的UserPool clientId异常
差不多
资源名称:XXXXXXXXXX(AWS::Cognito::UserPoolClient)事件类型:
更新原因:用户池客户端不存在。(服务:
AWSCognitoIdentityProviderService;状态代码:400;错误代码:
ResourceNotFoundException;请求ID:YYYYYYYYYY URL:
我已经解释了关于Amplify Cli的Githu
我有一个大的堆栈,大约有10台机器。其中,2个用于开发,因此不断发生变化
我希望能够终止这两个实例,然后重新创建它们。
有没有一种方法可以轻松地仅重建这两个实例,而不必拆下并重建整个堆栈?通常,使用自动缩放组可以完成这项工作。我通常使用CloudFormation创建一个开发人员堆栈,其中包括ASG和其他EC2位,以使这项工作更轻松。从生产CloudFormation堆栈中分离开发人员机器是一个好主意,考虑到可能会破坏prod,您可能比我更小心。也可以说,拥有一个完全相同的dev机器堆栈就足以将
我的应用程序有一个带有每日提要的S3存储桶,2个存储此数据的DynamoDB表,一个向该数据公开JSON API的ELB应用程序,以及一个处理传入数据并上传到表中的数据管道
我的CloudFormation模板当前构建了表和ELB应用程序。我希望管道流也是模板的一部分(例如,将一起构建一个完整的暂存环境)
我在手册中找不到这方面的参考资料。有没有人知道怎么做,或者可以确认官方不支持它
Zach编辑了我之前的答案,因为Cloudformation一直在支持数据管道
正如@SmartFingers
我有一个名为Cluster-01的ECS集群,在该集群下我有一个正在运行的服务,基本上很少有与集成微服务相关的任务
我想添加另一个服务,但希望使用相同的yaml模板,即单个文件用于多个服务定义,并使用它们定义关联的任务定义
我是YAML的新手,我使用网站上可用的AWS模板创建了一个带有一项服务的集群
如果有人可以帮助理解是否可以通过使用单个yaml模板为同一集群合并另一个服务
提前感谢。您可以在一个模板文件中定义多个AWS::ECS::Service资源:
ecsService1:
Type
我想通过Clouformation创建RDS实例。下面是cloudformation文件的摘录
MasterDB:
Type: AWS::RDS::DBInstance
Properties:
DBName: !Ref DBName
DBInstanceIdentifier: !Ref DBName
BackupRetentionPeriod: !Ref DBBackupRetentionPeriod
AllocatedStor
我正在尝试编写一个CloudFormation模板来完全定义ECS服务所需的所有资源,包括
nodejs代码的CodeCommit存储库
用于管理构建的代码管道
ECR存储库
ECS任务定义
ECS服务
ALB目标群体
ALB侦听器规则
我已经设法让这一切都运作起来了。堆栈构建良好。但是,我不确定如何正确处理更新
模板中任务定义中的容器需要定义图像。但是,实际的应用程序映像在管道首次构建代码之前是不存在的
我有一个想法,我可能能够解决这个问题,例如通过定义某种占位符图像“amazon/ama
AWS文档声称,如果我在另一个DNS注册表中有一个注册域,那么我必须更新注册域上的名称服务器,因此我认为如果我通过指定在R53上注册的域来创建托管区域,那么名称服务器将自动更新。这是我的云结构的一部分:
HostedZone:
Type: "AWS::Route53::HostedZone"
Properties:
Name: example.com
我确实已经在R53上注册了example.com,但当我进入该域时,它的名称服务器与其托管
我有下面的buildspec.yml
version: 0.2
phases:
install:
commands:
- npm install -g aws-cdk@1.72.0
build:
commands:
- cd Lambda
- cd NetworkRailGateway-Functions
- for d in ./*/; do (npm install --only=prod); done
-
我想在我的云形成模板的Elastic Beanstalk部分中引用一个EC2容器注册表映像。示例文件引用源捆绑包的S3 bucket:
"applicationVersion": {
"Type": "AWS::ElasticBeanstalk::ApplicationVersion",
"Properties": {
"ApplicationName": { "Ref": "application" },
"SourceBundle": {
"S3Bucke
我已经超过了cloudformation模板中的参数限制。是否有任何方法可以将s3中的所有参数作为一个文件保存并包含到我的模板中您似乎在说您有一个具有多个参数的AWS cloudformation模板,您无法创建堆栈,因为参数太多
文件说:
您可以在AWS CloudFormation模板中声明的最大参数数:60个参数
要指定更多参数,可以使用映射或列表为单个参数指定多个值
建议将一些参数合并并作为一个参数(列表)传递。或者,如果多个值彼此相关,则可以创建一个映射,以便一个输入值允许通过查找检索
我想将现有的terraform模板(hcl)转换为aws cloudformation模板(json/yaml)
我基本上希望通过CFN_NAG查找这些模板的安全问题
我已经尝试过的一种方法是将HCL转换为JSON,然后将模板传递给CFN_NAG,但我收到了一个失败,因为两个模板的结构不同
有人能在这里提供一些建议吗?实现这一点的一个相当复杂的方法是使用Terraform来支持实际的AWS环境,然后使用AWS从Terraform构建的内容中提取云信息模板(JSON或YAML)。在这一点上,您可以
我的目标是在AWS上创建一个系统,使用for multi-IoT设备将JSON有效负载发送到AWS-IoT,然后将其保存到DynamoDB
在创建EC2服务器之外,我对使用AWS非常陌生,这是我第一个使用的项目
参考后,我提出的修改版本发布在下面
问题:这个例子似乎只针对一台连接到AWS物联网的设备,我从正在使用的硬编码物联网证书得出结论,例如
SensorPolicyPrincipalAttachmentCert:
Type: AWS::IoT::PolicyPrincipalAttach
我目前正在使用cloudformation模板自动创建aws配置规则。我需要在脚本中添加修正操作,以自动化非Compliant资源。
我不知道如何添加补救措施作为云形成模板的参数。
有人能帮我解决这个问题吗?下面是我的代码。但我无法创建堆栈
{
"Resources": {
"AWSConfigRule": {
"Type": "AWS::Config::ConfigRule",
"Properties": {
"ConfigRuleName": {
"Ref": "
默认情况下,每个AWS步骤函数执行名称都是随机生成的。我想为每个随机生成的名称添加前缀。我在文档中找不到这样做的方法。我设想这样做的方式是在定义EventBridge规则的CloudFormation模板中,但是如果有一种我目前不知道的方式,我愿意接受建议
还有其他人能做到这一点吗?还是我运气不好?如果你打电话给startExecution,那么有一种方法我可以在下面提到。但您的问题似乎与从其他服务(可能是EventBridge)调用Step函数有关,我的答案没有涵盖这一点。如果没有直接的方法,
我有以下创建代码管道的云形成模板。管道分为三个阶段:
Stages:
-
Name: "Source"
Actions:
-
Name: "Source"
ActionTypeId:
Category: "Source"
Owner: "ThirdParty"
Version: "1"
Provider: "G
我是新来的。我的任务是创建一个Aurora DB集群。问题是,在执行CloudFormation tempate之后,我得到了以下错误
嵌入式堆栈
arn:aws:cloudformation:eu-west-2:232313142384:stack/test-deploy4-Database-1INKI7L337Z6X/57a8ad10-123c-11e8-81aa-504dcd6ad3ba
未成功创建:未能创建以下资源
创建:[数据库群集]
下面是CloudFormation模板
--- A
所以我只是尝试在创建磁盘时使用FindInMap
我得到了结构,但我得到了错误:
“属性BlockDeviceMappings的值必须是List类型”
所以很明显,我不完全理解布局
我只是想尽办法。。不幸的是,AWS中的示例主要针对区域使用它。。如你所见,没有太大帮助
ec2Map: ---(my map)
test: ----(outter key)
InstanceType:
我想在cognito中创建三组用户;管理员、卖家和买家。管理员将拥有最高权限(他们能够管理卖家和买家)。卖方享有第二高的特权,买方享有最低的特权(任何人都可以注册为买方)。我创造了这个云层。你能确认这是正确的方法吗
Resources:
UserPool:
Type: 'AWS::Cognito::UserPool'
Properties:
UserPoolName: '${self:service}-${self:provider.stage}-user-poo
有没有办法在干运行模式下运行AWS cloudformation update?因为我意识到aws validate不会拾取所有错误,当您运行更新时,会抛出新错误。最接近这一点的是运行模拟测试,这将需要相当长的配置时间;它也不能100%保证您不会遇到任何错误
有一个专门用于模拟运行AWS基础设施的广泛库,值得一看,其中包括cloudformation的核心端点。不幸的是,在实际部署模板之前,无法“模拟”部署。但是,变更集可以在这种情况下使用。找到了一些关于它的文章
我正在使用CloudFormation在AWS上生成一个静态网站和一个lambda。Lambda函数将是@Edge Lambda,但为了将其注册为Edge Lambda,我需要Lambda与“edgelambda.amazonaws.com”建立信任关系
如何将此信任关系添加到CloudFormation模板中新创建的Lambda中?大致如下:
AssumeRolePolicyDocument:
Version: 2012-10-17
Statement:
- E
我正在使用这个cloudformation模板创建spot实例,它正在按预期工作
唯一的变化,我想是删除“舰队”的一部分,从类型在这里
Type: 'AWS::EC2::SpotFleet
原因:当我试图停止一个实例时,我会收到一条消息,上面写着“无法停止舰队实例”
如何使用“普通”或默认选项购买现货实例
(AWS用户界面)向导允许我生成spot实例,这些实例可以在需要时停止和启动。正在从cloudformation模板中查找相同的功能
正如评论中所建议的,我已经修改了模板,使其看起来像这
上一页 1 2 ...
4 5 6 7 8 9 10 ...
下一页 最后一页 共 14 页