【发布时间】:2018-01-25 06:08:25
【问题描述】:
我正在创建一个 Ansible Playbook,并且我已经创建了一个新的 AWS EC2 实例。我现在想通过 SSH 连接到该实例并在该实例的 shell 中运行一些命令。我该怎么做呢?有没有办法通过 ansible 生成密钥对,还是最好使用现有的?
我在线查看了 Ansible ec2 的在线资源 - 在 ec2 (http://docs.ansible.com/ansible/latest/ec2_module.html) 中创建、终止、启动或停止实例,以及在线博客。虽然,我无法弄清楚如何通过 SSH 连接到实例,也无法在网上看到一个示例。
使用:
- name: Wait for SSH to come up
wait_for:
host: "{{ item.public_ip }}"
port: 22
delay: 60
timeout: 320
state: started
with_items: "{{ ec2.instances }}"
从 ansible-playbook 文档生成以下错误:
"msg": "等待 :22 时超时"
实例也是在没有公共 DNS 的情况下创建的,用于通过 CLI SSH 进入实例。
任何有关如何通过ansible-playbook SSH 进入实例或为实例生成公共 DNS 名称的帮助将不胜感激。
【问题讨论】:
标签: amazon-web-services amazon-ec2 ansible