Amazon ec2 无法运行由terraform创建的对AWS EC2的ansible

Amazon ec2 无法运行由terraform创建的对AWS EC2的ansible,amazon-ec2,ansible,terraform,Amazon Ec2,Ansible,Terraform,我有terraform创建的EC2,我可以使用以下方式登录EC2: ssh-vvv-i/home/ec2 user/.ssh/mykey.pub ec2-user@XX.XX.XX.XX没有密码,(XX.XX.XX.XX)是terraform创建的EC2的IP 但当我尝试在创建ec2时在terraform中运行ansible文件时,ansible无法运行,错误消息为: aws_instance.dev (local-exec): TASK [Gathering Facts] *********

我有terraform创建的EC2,我可以使用以下方式登录EC2: ssh-vvv-i/home/ec2 user/.ssh/mykey.pub ec2-user@XX.XX.XX.XX没有密码,(XX.XX.XX.XX)是terraform创建的EC2的IP

但当我尝试在创建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)
请注意,ansible yml是在我手动强制terraform休眠6m后启动的,当时EC2已经启动(我可以自己登录,尽管它显示“aws_instance.dev:仍在创建…”),即

我以ec2用户身份运行terraform,我将ansible yml设置为:

  remote_user: ec2-user
  become_user: ec2-user

ansible无法ssh到EC2的原因是什么?

有一条消息要告诉您:

无法验证主机“XX.XX.XX.XX(XX.XX.XX.XX)”的真实性 已建立。

是否确实要继续连接(是/否)


在执行ansible playbook之前,请执行ssh keyscan XX.XX.XX.XX,或者在ansible中禁用。

我在不工作之前执行了此操作。所以我创建了一个新密钥:ssh-keygen,ssh-agent-bash,ssh-add-key,然后在ansible-config中host\u-key\u-checking=False,这一次有效!谢谢你的回答!主机密钥检查=错误
  remote_user: ec2-user
  become_user: ec2-user