創建我有EC2由terraform創建的,我可以通過登陸EC2: SSH -vvvv -i /home/ec2-user/.ssh/mykey.pub EC2用戶@ XX.XX.XX.XX不帶密碼,(XX.XX.XX.XX)是由terraform創建的EC2的IP。不能運行ansible到AWS EC2由terraform
但是當我嘗試創建EC2時terraform運行ansible文件,ansible無法運行和錯誤信息是:
aws_instance.dev (local-exec): TASK [Gathering Facts]
*********************************************************
The authenticity of host 'XX.XX.XX.XX (XX.XX.XX.XX)' can't be
established.
...
Are you sure you want to continue connecting (yes/no)?
aws_instance.dev: Still creating... (6m40s elapsed)
注意到我手動強制terraform睡覺與6m後ansible YML啓動在那個時候,已經開始在EC2(我可以登錄它自己,但它表明「aws_instance.dev:仍然創造......」),即
resource "aws_instance" "dev" {
...
provisioner "local-exec" {
command = "sleep 6m && ansible-playbook -i hosts myansible.yml"
}
...
}
我運行terraform爲EC2用戶,我設置ansible yml as:
remote_user: ec2-user
become_user: ec2-user
ansible不能ssh到EC2的原因是什麼?
我之前沒有工作過。所以我創建了一個新的密鑰:ssh-keygen,ssh-agent bash,ssh-add key,然後host_key_checking = False進行配置,這次工作正常!感謝您的回答! – user389955
host_key_checking = False – user389955