こんにちはみんなは私がAnsibleで練習するための簡単な脚本を作るが、私は脚本(ansible-playbook -i hosts.ini playbook.yml
)を実行しようとすると、私は問題を抱えている閉じたインスタンスを設定するには、出力リターンをEC2:Ansible:XXXへの共有接続が
> fatal: [XX.XXX.XXX.XXX]: FAILED! => {
> "changed": false,
> "failed": true,
> "invocation": {
> "module_name": "setup"
> },
> "module_stderr": "Shared connection to XXX.XXX.XXX.XXX closed.\r\n",
> "module_stdout": "/bin/sh: 1: /usr/bin/python: not found\r\n",
> "msg": "MODULE FAILURE" } to retry, use: --limit @/home/douglas/Ansible/ansible_praticing/projeto2.retry
>
> PLAY RECAP
> *********************************************************************
> XX.XXX.XXX.XXX : ok=0 changed=0 unreachable=0 failed=1
ssh -i ~/.ssh/key.pem [email protected]
経由でインスタンスに接続しようとすると、正常に機能しますが、プロビジョニングは行われません。
マイ脚本:
- hosts: projeto
sudo: True
remote_user: ubuntu
vars_files:
- vars.yml
tasks:
- name: "Update"
apt: update_cache=yes
- name: "Install the Ansible"
apt: name=ansible state=latest
- name: "Installt the mysql"
apt:
args:
name: mysql-server
state: latest
- name: "Install the Nginx"
apt:
args:
name: nginx
state: latest
私hosts.ini
は(AWS EC2インスタンスのパブリックIPで)もOKですし、私は、インスタンスの内部で、~/.ssh/authorized_keys
ファイルに公開鍵(ローカルマシンの~/.ssh/id_rsa.pem
)を置きます。
先週(金曜日)、このプレイブックはうまくいきました。
私は間違っていますか?
それは、ターゲット・ノード上の 'は/ usr/binに/ python'を見つけることができません、エラーメッセージからかなり明確です。あなたが含まれている他のすべての情報は、問題とは無関係です。 – techraf
Ubuntu 16.04ターゲット?デフォルトではPython 2.xはありません... –
@ techrafのコメントはすぐに現れます。化粧品のコメント: 'apt'を使うときは、実際には' args: 'キーワードを削除できます:http://docs.ansible.com/ansible/apt_module.html。 – xeroqu