有没有办法优雅的实现基于 terraform 在多台 pve 上均匀创建 vm?

11 小时 53 分钟前
 xinmans

看到有 alias ,for_each ,

有没有办法优雅的实现多台 pve 上均匀创建 vm ?

比如:terraform 创建 6 台 vm ,分别在 3 台 pve 上,如何优雅实现?有 sample 供参考么?

258 次点击
所在节点    问与答
2 条回复
qping
2 小时 51 分钟前
第一次知道 terraform ,看着很棒啊
qping
2 小时 28 分钟前
看了下动态表达式没有太多支持,问了下 AI 发现支持 locals 和 hash (我没有试过,不确定能不能跑,核心思想是要能写出一个函数来生成 target_node)

```
variable "instance_name" {
description = "The name of the instance"
type = string
}

locals {
nodes = ["node1", "node2", "node3"] # 可选择的节点
node_count = length(local.nodes) # 节点数量

# 计算实例名称的哈希值并取模
selected_node = local.nodes[
abs(hash(var.instance_name)) % local.node_count
]
}

resource "proxmox_vm_qemu" "example" {
name = var.instance_name
target_node = local.selected_node
# 其他配置...
}
```

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1099465

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX