使用terraform中的配置程序在部署AWS计算机后执行命令时出现问题。使用以下配置时,我看到一个未找到密钥的异常:
...
provisioner "remote-exec" {
inline = [
"wget http://www.eu.apache.org/dist/jmeter/binaries/apache-jmeter-3.2.tgz",
"tar -xzf apache-jmeter-3.2.tgz",
]
connection {
user = "ec2-user"
private_key = "${path.module}/my-private-key"
agent = false
}
}
...
如何在机器创建后使用我的私钥在terraform中执行命令?
答案 0 :(得分:6)
您必须使用file()
插补功能{/ 1}}。
private_key
查看private_key的“其他参数”部分,其中提到了 connection {
. . .
private_key = "${file("${path.module}/my-private-key")}"
. . .
}
与file()
一起使用的插值函数:
https://www.terraform.io/docs/provisioners/connection.html