创建了一个EC2示例使用terraform,现在我想修改示例类型没有手动干预。它应该自动改变使用 Package 脚本。
示例我使用terraform启动了一个AWS ec2示例,并进行了示例类型、示例数量等基本配置。但当我想将示例计数从1更改为2或通过编辑terraform代码手动更改任何配置时。
1.我想通过wrappr脚本自动执行该阶段
Main.tf
平台{必需的供应商{ aws = { source =“hashicorp/aws”} }资源“aws示例”“{ ami =变量.ami示例类型=变量.示例类型
网络接口{网络接口ID =var.network接口ID设备索引= 0 }信用规格{ cpu信用=“无限”} }
Var.tf
变量“网络接口ID”{类型=字符串默认值=“来自aws的网络ID”}
变量“ami”{类型=字符串默认值=“ami-005 e54 dee 72 cc 1d 00”}
变量“示例类型”{类型=字符串默认值=“t2.micro”}
在这里,我想将“示例类型”t2.Micro自动修改为t2.large,而无需手动进入var.tf文件
1条答案
按热度按时间eufgjt7s1#
如果我没理解错你的问题:
您希望有一个Terraform脚本,即使您想更改基础架构中的某些内容,如示例数、机器类型等,也不想更改它。
对于此用例,您可以通过创建自定义 *.tfvars文件或使用
TF_VAR_*
环境变量,从Terraform计划/应用中为变量提供值(更多信息请参见:)。例如,对于如下脚本:
我会将这一行添加到我的 Package 器脚本(假设它是从CI管道运行的bash脚本)
或者,我将根据脚本输入动态创建一个
*.tfvars
文件然而,如果你想做更多的事情,考虑到Terraform是一种IaaC技术,你可能想让Terraform脚本尽可能接近现实(你在云环境中拥有的)。