我有一个aws ec2清单文件,我希望你将我的代码部署到e2实例。我在用:
anible-playbook -i ec2_inventory -u ec2-user --private-key = my_ec2_key.pem
它的工作原理。
我想要的是使用ansible-vault加密私钥文件:my_ec2_key.pem,我将保管库密码保存在文本文件中。
如何现在发出ansible-playbook命令以使用保管库密码解密ec2-user的私钥文件?
谢谢
不幸的是,ansible-vault不会自动解密它用于连接实例的私钥。您可以通过使用本地任务将其从变量文件(将其解密写入)写入密钥文件并将文件放在某个位置然后在下游任务中引用来解决此问题。 ansible不这样做的原因是因为保险库通常只解密内存中的变量,以防止在剧本失败时挂起解密的工件。
如果您使用CI框或其他东西来运行ansible,则可能会将私钥放在CI框上,从而无需在运行时解密它。然后将永久加密的私钥存储在源中。