Packer的目标是错误的主机IP

时间:2018-06-17 20:23:51

标签: ansible packer

我使用packer在AWS上创建图像。 当Packer运行此Ansible部分时:

   - name: Wait for reboot to finish
     local_action: wait_for host={{ ansible_host }} port=22 state=started

我在等待127.0.0.1:22"

时超时#34;超时

为什么" ansible_host"设置为" 127.0.0.1"而不是配置主机的IP?

如何告诉Packer使用正确的" ansible_host"?

Packer version: 1.2.4
Ansible version: 2.5.4

1 个答案:

答案 0 :(得分:2)

documentation

的入口处模糊地描述了它
  

它动态创建配置为使用的Ansible清单文件   SSH,运行SSH服务器,执行ansible-playbook和marshals   Ansible通过SSH服务器播放到正在配置的计算机   通过Packer。

这意味着ansible目标(ansible_host)是本地主机,但具有不同的端口,然后转发到正确的主机。

基本上,在运行Packer时,您无法在Playbook中重新启动(或重新启动sshd),因为ssh会话将被断开连接。有关详细信息,请参阅Handeling Reboots - Shell Provisioner