问题标签 [troposphere]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-web-services - 如何使用对流层将 OriginAccessIdentity 添加到 AWS S3 存储桶策略
我有一个 AWS Cloudformation 堆栈,使用 Troposphere 在 Python 中创建。我需要将 OriginAccessIdentity 添加到 S3 存储桶访问策略。
除其他外,我正在导入以下内容:
堆栈的一部分创建了一个 Cloudfront 分发,添加了一个仅具有一个关联缓存行为的 S3 Origin。这很好用,创建了一个行为,并且可以在 AWS Cloudfront 控制台中看到。
我使用以下代码创建了 OriginAccessIdentity:
同样,这可以正常工作,并且 OriginAccessIdentity 已创建并且可以在 AWS Cloudfront 控制台中看到,并且与 Origin 相关联。
我正在使用以下代码创建 S3BucketPolicy:
这也可以正常工作,生成策略并将其附加到存储桶 - 可以在 AWS S3 控制台中看到。我遇到的问题是试图
Principal=AWSPrincipal(["*"])
用
Principal=AWSPrincipal([<the_origin_access_identity>])
我已经尝试
Principal=AWSPrincipal([Join("", ["origin-access-identity/cloudfront/", "Ref(cloudfrontoriginaccessidentity)"])])
过
Principal=AWSPrincipal([Ref(cloudfrontoriginaccessidentity)])
但 Cloudformation 拒绝更新,称 Principal 无效。*
为了让 Cloudformation 将我OriginAccessIdentity
作为主体添加到策略中,我需要替换什么?
python-3.x - 嗨,我已经编写了一个代码来使用对流层创建 CloudFormation 模板运行代码时出现语法错误
我已经编写了一个代码来使用对流层创建 CloudFormation 模板,我在其中创建 EC2 实例并分配 SG 和 EIP,但在运行 python 代码时出错。代码如下:
troposphere - 使用 Troposphere 在 AWS CFN 模板中将 bash 脚本作为 UserData 导入
我正在尝试使用 Troposphere 创建一个 AWS 模板,但我被困在必须将我的 Bash 脚本用作 UserData 的地方。我的主要问题是 Ref 在 Bash 脚本中使用。我将 Bash 脚本作为文件读取并将它们编码为 Base64,如下所示:
我的 bash 脚本将 Ref 用作:
我得到的输出是:
但是,我希望将 Ref 转换为与 JSON 兼容的正确格式:
amazon-web-services - 模板验证错误:无效的模板资源属性
我正在验证通过对流层脚本生成的 CloudFormation 模板。似乎导致错误的有问题的资源是度量转换,在对流层脚本中定义如下:
它所依赖的参数在脚本中预先定义如下:
我正在运行的确切命令是
结果输出
我的 MetricTransformation 属性似乎在AWS 文档中得到了很好的定义。为了可见性,这也是正在验证的模板中的度量转换资源的样子:
有任何想法吗?
更新:
根据要求,添加指标过滤器资源:
amazon-cloudformation - 使用 Troposphere 将 CloudWatch 警报与 MetricFilter 相关联
我正在使用对流层脚本来预置 CloudWatch 指标过滤器和警报。在 CloudWatch 中,可以手动创建一个警报,该警报会根据指标过滤器从日志中聚合的数据发出警报,但我想在对流层脚本中链接过滤器和警报,以尽可能节省人工。
这是我对脚本的内容(注意:下面定义和引用了一些其他资源,为简洁起见省略):
这会生成一个定义明确的 CloudFormation 模板,但是,当我执行更改集并观察创建的指标过滤器时,我看到我想要链接到过滤器的警报没有自动设置,我需要手动创建它:
我的想法是,如果 MetricTransformation 和 Alarm 共享相同的MetricName属性,希望警报已经链接到指标过滤器,但似乎情况并非如此。查看 metric filters的文档,似乎只有三个属性可以使用(LogGroupName、FilterPattern 和 MetricTransformations 列表)。有没有办法将警报与对流层中的度量过滤器联系起来?
troposphere - AWS::ECS::Cluster 对象不支持属性 CapacityProviders
对流层模块版本:2.6.2。
Python脚本:
为什么在运行创建模板的脚本时出现此错误?
python - 如何为 python3 安装对流层?
我正在运行macOS
版本11.0.1
。我正在尝试导入一个名为我已安装的模块当troposphere
我尝试使用类似导入对流层时Python2.7
Python3.9.1
Python2.7
它确实有效。但是当我尝试使用Python3.9.1
like导入相同的
它会抛出这样的错误
我应该怎么办?请帮忙
amazon-dynamodb - 对流层 DynamoDB 生存时间规范
我正在尝试为新的 DynamoDB 表创建 JSON Cloudformation 模板。我正在尝试设置 TimeToLiveSpecification,但出现错误并且对流层文档不清楚。
我有
我什至尝试将其放入准备好的格式化 JSON 中,但它不起作用。我试过了:
TimeToLiveSpecification=TimeToLiveSchema(AttributeName="ttl", Enabled=True)
(用这个抓住稻草)。
amazon-web-services - 如何在将 Troposhpere 框架用于 AWS 经典负载均衡器 443 侦听器时更新 SSL 协商策略
我有一个有效的对流层模板,它使用经典的负载均衡器来构建我的环境。我正在修改它以使用 SSL 协商策略(密码)ELBSecurityPolicy-TLS-1-2-2017-01 启动负载均衡器端口 443 侦听器。
它会让我生成 cloudformation yaml,但是当我尝试使用生成的 yaml 创建堆栈时,我在尝试创建负载均衡器时收到错误“遇到不支持的属性 PolicyType”。
Troposphere 支持 PolicyType,但 AWS CF 不支持?
关于我做错了什么的任何线索?有没有更好的办法?
我找不到任何使用对流层框架更新 SSL 协商的示例。
这是我认为应该发挥作用的对流层 ELB 侦听器代码部分的片段 -
这是对流层 elasticloadbalancing.py 的策略类(https://github.com/cloudtools/troposphere/blob/master/troposphere/elasticloadbalancing.py)
这是我的整个对流层负载均衡器代码:
这是它为负载均衡器创建的 AWS CloudFormation yaml:
python - TargetGroup 对象不支持属性 TargetGroupAttribute
我使用 Troposphere 和 Python 创建了一个 AWS NLB。它工作正常,我只是想向它添加一个新属性。我要添加的属性是“deregistration_delay.connection_termination.enabled”。但是当我尝试更新我的节时,它不喜欢我的语法。
这是我尝试添加的带有 TargetGroupAttribute 的代码块。
它不喜欢我共享的代码块的“TargetGroupAttribute”部分。我收到错误“TargetGroup 对象不支持属性 TargetGroupAttribute”。
我用来添加属性的 AWS 文档在这里。
任何建议或帮助将不胜感激。谢谢!