Я пытаюсь запустить Ansible playbook против сервера, используя учетную запись, отличную от той, которую я зарегистрировал на управляющей машине. Я попытался указать ansible_user
в файле инвентаризации в соответствии с документацией на Inventory:
[srv1]
192.168.1.146 ansible_connection=ssh ansible_user=user1
Однако Ansible, вызываемый с помощью ansible-playbook -i inventory playbook.yml -vvvv
, печатает следующее:
GATHERING FACTS ***************************************************************
<192.168.1.146> ESTABLISH CONNECTION FOR USER: techraf
Что сработало для меня, это добавить аргумент remote_user
в playbook:
- hosts: srv1
remote_user: user1
Теперь та же самая Ansible-команда соединяется как user1
:
GATHERING FACTS ***************************************************************
<192.168.1.146> ESTABLISH CONNECTION FOR USER: user1
Также добавление переменной remote_user
в ansible.cfg
делает Ansible используемым пользователем, а не вошедшим в систему.
Являются ли ansible_user
в файле инвентаря и remote_user
в playbook/ansible.cfg
для разных целей?
Для чего используется ansible_user
? Или почему Ansible не соблюдает настройки в инвентаре?