对ansible和EC2有点新意,我遇到连接到新实例的麻烦,也许我还没有获得密钥对。
为了从ansible连接到新创建的实例,如何使用密钥对来ssh这些实例而不是用户和密码?
如果我将--private-key = keypair.pem附加到第二个剧本,但不确定如何在创建新实例后在单个剧本中完成该工作,那么一切正常。
亲切的问候
答案 0 :(得分:0)
请从this section文档开始,或查看this tutorial 处理此问题的最佳方法是使用ec2 dynamic inventory script
但是如果您更喜欢使用静态库存,则可以在Ansible清单hosts.ini
中使用ansible_ssh_private_key_file参数。
类似这样的事情
[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