- Рекомендується Python 3.10. Завантажити...
- Ansible 2.15.3 (Встановлення на Windows)
sshpass- для входу на сервер по паролю
Для завантаження проєкту із github, виконуємо команду в терміналі:
git clone https://github.com/text-adi/ansible-playbook.gitДля використання playbook потрібно встановити відповідні модулі ansible. Для цього, потрібно виконати команду в терміналі:
ansible-galaxy install -r collections/requirements.yamlПо замовчуванні, сервер, для якого буде виконуватися playbook, не вказаний.
Щоб це змінити, потрібно в файлі invertory/hosts.yaml вказати IP сервера, для якого буде запущений playbook.
Для цього, після [servers], потрібно, дописати рядок IP сервера,
та параметри, із якими відбувається підключення до сервера.
У випадку для Linux, маємо наступний рядок:
[servers]
<ip-address> ansible_user=<user> ansible_port=<port> ansible_password=<password> ansible_shell_type=<shell_type>
В нашому випадку, в базовому рядку, із параметрами, потрібно лише замінити відповідні значення, такі як:
<ip-address>- IP адреса сервера, який адмініструється.<user>- користувач, під яким виконуються команди на сервері.<port>- порт SSH. Зазвичай, використовується 22 порт.<password>- пароль користувача, до якого відбувається підключення.<shell_type>- тип оболонки. У випадку із Linux потрібно використовуватиshell.
У випадку для Windows, потрібно переконатися, що у системі із Windows встановлений OpenSSH. Встановлення OpenSSH для Windows.
[servers]
<ip-address> ansible_user=<user> ansible_port=<port> ansible_password=<password> ansible_shell_type=<shell_type>
В нашому випадку, в базовому рядку, із параметрами, потрібно лише замінити відповідні значення, такі як:
<ip-address>- IP адреса сервера, який адмініструється.<user>- користувач, під яким виконуються команди на сервері.<port>- порт SSH.<password>- пароль користувача, до якого відбувається підключення.<shell_type>- тип оболонки. У випадку із Windows потрібно використовуватиpowershell.
Якщо потрібно виконати playbook на кількох серверах, у файлі invertory/hosts.yaml,
описати дані підключення для кожного сервера.
Приклад:
[servers]
<ip-address-1> ansible_user=<user-1> ansible_port=<port-1> ansible_password=<password-1> ansible_shell_type=<shell_type-1>
<ip-address-2> ansible_user=<user-2> ansible_port=<port-2> ansible_password=<password-2> ansible_shell_type=<shell_type-2>
...
Для запуску відповідного playbook в корні проєкту, виконуємо команду в терміналі:
ansible-playbook playbooks/<name-playbook>.yamlПісля чого, ansible запитає пароль до сервера, до якого відбувається підключення.
Оскільки офіційної підтримки ansible немає для Windows, для встановлення будемо використовувати CygWin.
Для встановлення Ansible в CigWin, потрібно встановити наступні компоненти:
python39python39-pippython39-cryptographygit- для завантаження проєкту із github.vim- або інший редактор, для редагування файлів в терміналі.
Після встановлення усіх компонентів CygWin, залишається відкрити CygWin та встановити ansible, через пакетний менеджер pip, аналогічно, як це робиться на Linux.