AWS DevOps Guru 的 Terraform 支持
项目描述
tfdevops
tfdevops 是 Amazon DevOps Guru 的 Terraform 支持。该服务仅原生支持 AWS CloudFormation 堆栈。 https://aws.amazon.com/devops-guru/features/
该项目通过自动将 terraform 状态转换为导入的 CloudFormation 堆栈,并可选择与 DevOps Guru 一起启用,为 terraform 用户提供了支持。
注意:Amazon DevOps Guru 仅支持大约 25 种资源。 https://aws.amazon.com/devops-guru/pricing/
工作原理
- 将 terraform 状态转换为具有保留删除策略的 CloudFormation 模板
- 创建包含导入资源的 CloudFormation 堆栈
- 将堆栈注册到 Amazon DevOps Guru
使用方法
安装它。
pip install tfdevops
您有一个已部署的 terraform 根模块存在,让我们为它生成一个 CloudFormation 模板和一组可导入的资源
tfdevops cfn -d ~/path/to/terraform/module --template mycfn.json --resources importable-ids.json
现在我们可以创建一个 CloudFormation 堆栈,导入资源,并在我们的堆栈上激活 DevOps Guru。
tfdevops deploy --template mycfn.json --resources importable-ids.json
...
INFO:tfdevops:Found existing stack, state:IMPORT_COMPLETE
INFO:tfdevops:Creating import change set, 8 resources to import
INFO:tfdevops:Executing change set to import resources
INFO:tfdevops:Waiting for import to complete
INFO:tfdevops:Cloudformation Stack Deployed - Terraform resources imported
您现在可以访问 DevOps Guru 仪表板中的堆栈。
根据资源的活动级别,DevOps Guru 可能需要几小时才能生成任何可操作见解。
作为额外的好处,我们可以使用以下命令验证生成的模板(或任何其他纯 CloudFormation 模板,即没有内建函数或变量的模板),该命令将下载各种资源类型的 jsonschema 并将每个模板资源与其模式进行验证。
tfdevops validate --template mycfn.json
大型资源/模板
AWS CloudFormation 对支持的资源大小有限制(API上传限制为50k,S3上传限制为500k)。gen
和 deploy
子命令都支持传入模板的S3路径以及一些配置较大的资源(如步骤函数工作流等)。请注意,deploy的S3路径是实际的模板路径。
常见问题解答(FAQ)
- 这是一个通用的Terraform到CloudFormation的转换器吗?
不是的,虽然它具有一些类似的功能,但它的主要目标是简单地生成足够的cfn,以便Amazon DevOps Guru可以使用。
支持的资源
目前tfdevops支持以下资源
- AWS::StepFunctions::StateMachine
- AWS::ECS::Service
- AWS::SQS::Queue
- AWS::SNS::Topic
- AWS::RDS::DBInstance
- AWS::Lambda::Function
- AWS::Events::Rule
- AWS::DynamoDB::Table
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
构建分布
tfdevops-0.1.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 620a50e6b22c7f3be9548edce41053778a1ceffb120b4e4d8a5d4ac2e53fe013 |
|
MD5 | 282c417fd71254a79fff348557fcefd2 |
|
BLAKE2b-256 | c059b7b9082b9e170eef8e1a1822bb83abf14c7b58c53af39b182d22f2ecce4b |
tfdevops-0.1.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 318599563d13c6ff1108aa5883c1643750c5657a29049734af3e89561f188c56 |
|
MD5 | 21a58dfcd30506a6d08531f6378376fe |
|
BLAKE2b-256 | 2a506f173ce8df0e97be58d452f9c6ee696857b6a027ffa58663104c7b9dfddb |