对 ansible 和 EC2 来说有点新,我在连接新实例时遇到了麻烦,也许我还没有得到密钥对。
为了从 ansible 连接到新创建的实例,我如何使用密钥对而不是用户和密码来 ssh 这些实例?
如果我将 --private-key=keypair.pem 附加到第二个剧本,一切正常,但不确定如何在创建新实例后在单个剧本中使其工作。
亲切的问候
对 ansible 和 EC2 来说有点新,我在连接新实例时遇到了麻烦,也许我还没有得到密钥对。
为了从 ansible 连接到新创建的实例,我如何使用密钥对而不是用户和密码来 ssh 这些实例?
如果我将 --private-key=keypair.pem 附加到第二个剧本,一切正常,但不确定如何在创建新实例后在单个剧本中使其工作。
亲切的问候
Olea从这部分文档开始或查看本教程
处理此问题的最佳方法是使用ec2 动态库存脚本
但是,如果您更喜欢使用静态清单,您可以在 Ansible 清单中使用 ansible_ssh_private_key_file 参数hosts.ini
。
像这样的东西
[server1]
1.2.3.4 ansible_ssh_private_key_file=~/.ssh/my.pem
[aws]
ec2-1-2-3-4.compute-1.amazonaws.com ansible_ssh_private_key_file=~/.ssh/aws.pem ansible_ssh_user=ubuntu
ec2-1-2-3-5.compute-1.amazonaws.com ansible_ssh_private_key_file=~/.ssh/aws.pem ansible_ssh_user=ubuntu