Ansible не может стать - PullRequest
       4

Ansible не может стать

0 голосов
/ 27 февраля 2020

У меня есть эта пьеса

---
- hosts: etl
  tasks:
  - name: command to test connection
    command: "echo Hi!!"
  - name: Run a command as adm user
    command: "echo Hi!!"
    become: yes
    become_user: adm
    become_method: dzdo

Инвентарь

[etl]
server.com

[etl:vars]
ansible_user=user
ansible_password=password

И ansible конфигурация

[defaults]
inventory=inventory.ini
host_key_checking=false

Теперь моя проблема, я не могу получить повышенные привилегии с ansible. Если я получаю доступ через s sh через терминал, я могу получить повышенные привилегии для пользователя adm. Пример:

> ssh user@server.com
> user@server.com's password: (type my password)
(remote server)
$ dzdo su - adm
adm@server.com:

Если я выполню ansible-playbook, я получу эту ошибку

{'_ansible_no_log': False,
 '_ansible_parsed': False,
 'changed': False,
 'failed': True,
 'module_stderr': 'Shared connection to server.com closed.\r\n',
 'module_stdout': "Sorry, user user is not allowed to execute '/bin/sh -c "
                  'echo BECOME-SUCCESS-tbdmbsghgeyufywzyiuqdckvzqucsyws; '
                  '/usr/bin/python '
                  "/var/tmp/ansible-tmp-1582739388.841735-202456551847923/AnsiballZ_command.py' "
                  'as adm on server.\r\n',
 'msg': 'MODULE FAILURE\nSee stdout/stderr for the exact error',
 'rc': 1}

Мой вопрос: Как работает ansible become? Я нашел много документации об этом, но еще не понял, как ansible задает команду или что я делаю не так? Я не могу изменить что-либо на удаленном сервере и не могу запросить разрешения пользователя.

...