Я пытаюсь запустить 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 не соблюдает настройки в инвентаре?