好傢伙我做一個簡單的劇本與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
也行(公網IP AWS的EC2實例),我把公鑰(本地計算機的~/.ssh/id_rsa.pem
)在~/.ssh/authorized_keys
文件,實例的內部。
在上週(星期五),這本劇本運作良好。
我在做什麼錯?
這是從錯誤信息很清楚,它無法找到目標節點上的'在/ usr/bin中/ python'。您提供的所有其他信息與問題無關。 – techraf
Ubuntu 16.04目標?沒有默認的Python 2.x ... –
@ techraf的評論是正確的。化妝品評論:使用'apt'時,您實際上可以移除'args:'關鍵字:http://docs.ansible.com/ansible/apt_module.html。 – xeroqu