我正在尝试通过terraform来提供现货车队请求。
我想知道我能做些什么来实现以下目标,
我想提供一组实例,其中一组实例的属性稍有不同。例如,一个5个节点的现货机队请求,其中1个节点是c5.xlarge,其余的是c5.4xlarge,它们的标记也应不同。
我不知道如何从临时机队请求中获取公共DNS。我搜索了一下,发现我可以创建一个“ aws_instances”数据资源来获取实例ID和公共IP,但在输出属性中缺少公共DNS。在这里可以解决什么问题?
我还想创建一个连接,以便像这样通过remote_exec远程执行一些命令,
connection {
type = "ssh"
user = "${var.aws_ssh_user}"
agent = false
private_key = "${file("${var.aws_private_key}")}"
}
provisioner "file" {
source = "../common/somefile"
destination = "/tmp/somefile"
}
provisioner "remote-exec" {
inline = [
"nohup sudo /tmp/somefile --server=true >> /files/jobs/${var.job_id}/spot.log &",
"sleep 5s",
"echo 'complete'",
]
}
但是上述操作失败,并使用tcp Dial err失败,安全组正常且密钥可用,我在正常启动ec2实例时测试了以上内容,并且工作正常。
任何麻将不胜感激。
谢谢。