Ansible Стать без пароля - PullRequest
0 голосов
/ 09 января 2019

В оболочке я следую приведенному ниже подходу, чтобы стать пользователем root без пароля. И это работает нормально.

ssh-agent bash

ssh-add /repository/ansible/.ssh/id_rsa_ansible

ssh -A ansible@e8-df1

[ansible@e8-df1 ~]$ sudo -i
[root@e8-df1 ~]# 

Однако в ansible я не добиваюсь того же и получаю ошибку. Ниже мой инвентарь и игровая тетрадь.

Inventory:

[qv]
e8-df1
e8-df2

[qv:vars]
ansible_ssh_user=ansible
ansible_ssh_private_key_file=/repository/ansible/.ssh/id_rsa_ansible

Playbook:

---
- hosts: qv
  become: yes
  roles:
    - abc

Ошибка:

fatal: [e8-df1]: FAILED! => {
    "changed": false, 
    "failed": true, 
    "invocation": {
        "module_name": "setup"
    }, 
    "module_stderr": "Shared connection to e8-df1 closed.\r\n", 
    "module_stdout": "sudo: a password is required\r\n", 
    "msg": "MODULE FAILURE"
}
fatal: [e8-df2]: FAILED! => {
    "changed": false, 
    "failed": true, 
    "invocation": {
        "module_name": "setup"
    }, 
    "module_stderr": "Shared connection to e8-df2 closed.\r\n", 
    "module_stdout": "sudo: a password is required\r\n", 
    "msg": "MODULE FAILURE"
}

Я просмотрел некоторые документы и вопросы и ответы, и они предлагают добавить строку ниже в файл sudoers.

ansible ALL=(ALL) NOPASSWD: ALL

Теперь я не могу понять, почему процедура оболочки работает без конфигурации sudoers. А есть ли другой способ добиться того же в ансибле?

...