我有一个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框上,从而无需在运行时解密它 . 然后将永久加密的私钥存储在源中 .
1 回答
不幸的是,ansible-vault不会自动解密它用于连接实例的私钥 . 您可以通过使用本地任务将其写入来自变量文件的密钥文件(将其解密写入)并将文件放在某个位置然后在下游任务中引用来解决此问题 . ansible不这样做的原因是因为保险库通常只解密内存中的变量,以防止在剧本失败时挂起解密的工件 .
如果您使用CI框或其他东西来运行ansible,则可能会将私钥放在CI框上,从而无需在运行时解密它 . 然后将永久加密的私钥存储在源中 .