Rob*_*ert 1 ansible ansible-playbook
我有一个剧本,我想用sudo运行它.这是我的ansible剧本:
---
- name: Server
hosts: node1
sudo: yes
roles:
- dbserver
Run Code Online (Sandbox Code Playgroud)
当我运行它时,我得到了这个:
ansible-playbook -i hosts site.yml
PLAY [Server] *****************************************************************
GATHERING FACTS ***************************************************************
fatal: [node1] => Missing sudo password
TASK: [dbserver | installing server] ******************************************
FATAL: no hosts matched or all hosts have already failed -- aborting
PLAY RECAP ********************************************************************
to retry, use: --limit @/home/robe/site.retry
node1 : ok=0 changed=0 unreachable=1 failed=0
Run Code Online (Sandbox Code Playgroud)
然后我在site.yml上添加ansible sudo pass:
---
- name: Server
hosts: node1
sudo_pass: ubuntu
roles:
- dbserver
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
ERROR: sudo_pass is not a legal parameter at this level in an Ansible Playbook
Run Code Online (Sandbox Code Playgroud)
然后我的问题是:
sudo_pass不是Ansible知道的东西.如果你需要在node1上输入sudo密码,那么你保留sudo: yes在剧本中,你必须在运行你的剧本时在命令行上给Ansible提供sudo密码:
ansible-playbook -i hosts site.yml -K
Run Code Online (Sandbox Code Playgroud)
注意-K参数.然后它将在剧本开始之前询问您的sudo密码.
(长版本是--ask-sudo-pass顺便说一句.我不得不查看它)
| 归档时间: |
|
| 查看次数: |
10991 次 |
| 最近记录: |