2015-12-17 14 views
3

я использую хост-файл, как показано ниже,как указать имя пользователя в хост-файле анзибль

[qa-workstations] 
10.39.19.190 ansible_user=test ansible_ssh_pass=test 

Я использую следующую команду, чтобы выполнить «Whoami» команда в хосте

[email protected]:~/ansible# ansible all -a "whoami" -i /etc/ansible/host 
10.39.19.190 | success | rc=0 >> 
root 

анзибль по умолчанию пытается использовать имя пользователя, в котором я вошёл в систему, т. е. root вместо тестового пользователя, который я указал в файле хоста

Он отлично работает, когда я пытаюсь передать имя пользователя в команде uniible cli

[email protected]:~/ansible# ansible all -a "whoami" -i /etc/ansible/host -u test 
10.39.19.190 | success | rc=0 >> 
test 

Но это не возможно для меня, чтобы каждый раз вводить имя пользователя в CLI, поскольку другой хост использует другое имя пользователя. Кроме того, я не имею пару ключей, сгенерированный для каждого хоста, потому что хозяин машины постоянно меняется часто

версия используется:

ansible 1.5.4 
Ubuntu 14.04 LTS 

ответ

1

Создать учетную ansible.cfg в каталоге PlayBook или изменить «глобальный» анзибль .cfg

Примечание: Обработан только один файл конфигурации. Первый выигрывает в нижнем списке. http://docs.ansible.com/ansible/intro_configuration.html

  • ANSIBLE_CONFIG (переменная среды)
  • ansible.cfg (в текущем каталоге)
  • .ansible.cfg (в домашнем каталоге)
  • /и т.д./анзибль/анзибль .cfg
[defaults] 
remote_user=test 
+0

Этот ansible.cfg полезен для ознакомления, но проблема здесь заключается в том, что я должен предоставить другое имя пользователя/пароль для другого хоста. –

+1

Попробуйте инвентаризационную переменную 'ansible_ssh_user' – chrism

4

В последних версиях Ansible вы можете использовать параметр ansible_user в определении хоста.

Например, на хосте mysql-host.mydomain пользователем мне нужно соединиться с это mysql:

[docker-hosts] 
mysql-host.mydomain ansible_user=mysql 

Но, как вы используете старую версию анзибль, вам, возможно, придется использовать ansible_ssh_user вместо

http://docs.ansible.com/ansible/faq.html#how-do-i-handle-different-machines-needing-different-user-accounts-or-ports-to-log-in-with