【发布时间】:2018-10-19 17:23:52
【问题描述】:
我在 terraform 中使用以下代码:
#-----Workernodes-----
resource "aws_instance" "nodes-opt-us1-k8s" {
instance_type = "${var.k8s-node_instance_type}"
ami = "${var.k8s-node_ami}"
count = "${var.NodeCount}"
tags {
Name = "nodes-opt-us1-k8s"
}
key_name = "${aws_key_pair.k8s-node_auth.id}"
vpc_security_group_ids = ["${aws_security_group.opt-us1-k8s_sg.id}"]
subnet_id = "${aws_subnet.opt-us1-k8s.id}"
#-----Link Terraform worker nodes to Ansible playbooks-----
provisioner "local-exec" {
command = <<EOD
cat <<EOF > aws_worker_nodes_IP
[workers]
${aws_instance.nodes-opt-us1-k8s.*.public_ip[count.index]}
EOF
EOD
}
}
我的节点数有两个正在创建的 ec2 实例。一切都只适用于一个实例,因此错误必须与 count.index 语法有关,或者它在某处丢失,但无法通过它。
但是我得到这个错误返回:
错误:aws_instance.nodes-opt-us1-k8s:连接信息不能包含引用自身的 splat 变量
我询问了 Linux Academy 的导师,如果不深入研究,他们无法发现错误。我对 terraform 还很陌生,想在这里联系一下,看看以前是否发现过这个问题……我在谷歌上搜索了很多选项,但没有看到类似的东西。
【问题讨论】:
标签: terraform terraform-provider-aws