Ansible. Invertory файл
Инвертарный файл Ansible
Чтобы использовать Ansible для управления удаленными хостами, необходимо создать инвертарный файл, который содержит информацию о хостах, на которых будет выполняться конфигурация.
Для создания инвертарного файла выполните следующие шаги:
- Создайте папку для проекта и перейдите в нее:
mkdir servers
cd servers
- Создайте инвертарный файл:
invertory
nano inventory
vm1 ansible_host=192.168.0.37 ansible_ssh_pass=pwd123z
vm2 ansible_host=192.168.0.38 ansible_ssh_pass=pwd123z
[nodes]
vm1
vm2
В этом примере мы создаем хосты vm1 и vm2 с IP-адресом 192.168.0.37-192.168.0.38 и паролем pwd123z.
- Проверьте, что инвертарный файл работает:
ansible nodes -m ping -i inventory
Если все сделано правильно, то эта команда вернет ошибку:
nodes | FAILED! => {
"msg": "to use the 'ssh' connection type with passwords or pkcs11_provider, you must install the sshpass program"
}
Это происходит потому, что дл я подключения к удаленной машине по SSH с использованием пароля необходимо установить программу sshpass.
- Установите
sshpassна контроллере:
sudo apt install sshpass
- Проверьте, что инвертарный файл работает с использованием
sshpass:
sshpass -p pwd123z ansible -m ping all -i inventory
Если все сделано правильно, то эта команда вернет успешный результат:
nodes | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python3"
},
"changed": false,
"ping": "pong"
}
Теперь вы можете использовать инвертарный файл для управления удаленными хостами с помощью Ansible без использования sshpass.