Terraform 如何在销毁多个实例时运行remote exec provisioner
我正在使用terraform在OpenStack上设置docker swarm集群,并在新创建的VM上使用Ansible进行配置。我想先在虚拟机上执行Terraform 如何在销毁多个实例时运行remote exec provisioner,terraform,openstack,provisioning,Terraform,Openstack,Provisioning,我正在使用terraform在OpenStack上设置docker swarm集群,并在新创建的VM上使用Ansible进行配置。我想先在虚拟机上执行docker swarm leave,当我减少实例(VM)数量并通过terraform apply应用更改时,该虚拟机将被删除。当我一个接一个地销毁实例时,它会工作,但当同时销毁两个实例时,它会给出一个错误 错误:循环:module.swarm\u cluster.openstack\u compute\u instance\u v2.swarm
docker swarm leave
,当我减少实例(VM)数量并通过terraform apply
应用更改时,该虚拟机将被删除。当我一个接一个地销毁实例时,它会工作,但当同时销毁两个实例时,它会给出一个错误
错误:循环:module.swarm\u cluster.openstack\u compute\u instance\u v2.swarm cluster主机[3](销毁),module.swarm\u cluster.openstack\u compute\u instance\u v2.swarm cluster主机[2](销毁)
下面是脚本:
resource "openstack_compute_instance_v2" "my_cluster"{
provisioner "remote-exec" {
when = destroy
inline = [ "sudo docker swarm leave" ]
}
connection {
type = "ssh"
user = var.ansible_user
timeout = "3m"
private_key = var.private_ssh_key
host = self.access_ip_v4
}
}
地形:0.12