поэтому я получаю настройку ansible и успешно настроил конфигурацию хоста через файл ansible_hosts:
104.236.59.171 ansible_connection=ssh ansible_user=root
проверяя статус конфигурации хостов, я получаю:
104.236.59.171 | success >> {
"var": {
"hostvars['104.236.xx.xxx']": {
"ansible_connection": "ssh",
"ansible_user": "root",
"group_names": [
"ungrouped"
],
"inventory_hostname": "104.236.xx.xxx",
"inventory_hostname_short": "104"
}
}
}
Однако имя пользователя на моем локальном компьютере имеет приоритет над ansible_user
переменная, которую необходимо использовать для успешного входа в систему.
Я могу отменить это с помощью -u
вариант в моих доступных командах, но когда у меня есть несколько разных пользователей на нескольких экземплярах сервера, и я повторяю их всех, это не будет вариантом.
Как мне переопределить пользователя по умолчанию, полученного с моей локальной машины?
Спасибо за любую помощь!
Проверьте документацию Ansible на Приоритет переменных.
Если вы предоставите ansible_user
переменная с -u
параметр, он всегда будет перезаписывать определение любой другой переменной.
Так как inventory vars
находится почти в верхней части связанного списка, который необходимо проверить на предмет определения переменных на других уровнях. Я бы проверил с grep
для других определений переменных и удалите их.