terraform - 如何使用 for 循环在 IBM Cloud Terraform 中创建虚拟服务器?
问题描述
我在 IBM 云中有一个使用 Terraform 创建的虚拟服务器
resource "ibm_is_instance" "vsi1" {
name = "${local.BASENAME}-vsi1"
vpc = ibm_is_vpc.vpc.id
zone = local.ZONE
keys = [data.ibm_is_ssh_key.ssh_key_id.id]
image = data.ibm_is_image.ubuntu.id
profile = "cc1-2x4"
primary_network_interface {
subnet = ibm_is_subnet.subnet1.id
security_groups = [ibm_is_security_group.sg1.id]
}
}
如何使用 Terraform For 循环创建虚拟服务器
vsi1 , vsi2, vsi3, vsi4, vsi5
完整代码请参考IBM Cloud Terraform 入门教程
解决方案
您可能不需要for
orfor-each
循环来实现您所需要的。一个简单count
的将完成所需的。添加计数(实例数)后,您需要做的就是传入count.index
VSI 名称。
resource "ibm_is_instance" "vsi" {
count = 4
name = "${local.BASENAME}-vsi-${count.index}"
vpc = ibm_is_vpc.vpc.id
zone = local.ZONE
keys = [data.ibm_is_ssh_key.ssh_key_id.id]
image = data.ibm_is_image.ubuntu.id
profile = "cc1-2x4"
primary_network_interface {
subnet = ibm_is_subnet.subnet1.id
security_groups = [ibm_is_security_group.sg1.id]
}
}
这将创建名称为 vsi-0,vsi-1 的实例...
推荐阅读
- c# - NHibenate:有没有办法用复合键创建一对多的双向关系?
- wordpress - How do I assign this code to show only on specific categories?
- angular - Datatable component in Angular 7 problem with responsiveness when fetch data from backend
- javascript - 如何在 Firefox 浏览器中使用 offsetX 和 offsetY 在 svg 内移动一个圆圈?
- dynamic-programming - 归纳证明背包递归返回最优解
- javascript - xhttp.open() onreadystatechange 在 send() 之后没有发出警报就不会触发
- flyway - flyway clean drop 多个用户/模式
- python - 如何从熊猫数据透视表中的样式(子集)中排除总行(边距)
- javascript - 在我的 ftp 上上传后,设备方向不起作用
- wix - 组件规则问题:在现有应用程序旁边安装依赖版本的插件文件