Skip to content

text-adi/ansible-playbook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ansible

Зміст


Системні вимоги до проєкту

  1. Рекомендується Python 3.10. Завантажити...
  2. Ansible 2.15.3 (Встановлення на Windows)
  3. sshpass - для входу на сервер по паролю

Завантаження проєкту

Для завантаження проєкту із github, виконуємо команду в терміналі:

git clone https://github.com/text-adi/ansible-playbook.git

Встановлення залежностей

Для використання playbook потрібно встановити відповідні модулі ansible. Для цього, потрібно виконати команду в терміналі:

ansible-galaxy install -r collections/requirements.yaml

Встановлення IP сервера

По замовчуванні, сервер, для якого буде виконуватися playbook, не вказаний. Щоб це змінити, потрібно в файлі invertory/hosts.yaml вказати IP сервера, для якого буде запущений playbook.

Для цього, після [servers], потрібно, дописати рядок IP сервера, та параметри, із якими відбувається підключення до сервера.

Адміністрування Linux

У випадку для 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, потрібно переконатися, що у системі із 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 на кількох серверах

Якщо потрібно виконати 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

Для запуску відповідного playbook в корні проєкту, виконуємо команду в терміналі:

ansible-playbook playbooks/<name-playbook>.yaml

Після чого, ansible запитає пароль до сервера, до якого відбувається підключення.


Встановлення ansible на Windows

Оскільки офіційної підтримки ansible немає для Windows, для встановлення будемо використовувати CygWin.

Для встановлення Ansible в CigWin, потрібно встановити наступні компоненти:

  • python39
  • python39-pip
  • python39-cryptography
  • git - для завантаження проєкту із github.
  • vim - або інший редактор, для редагування файлів в терміналі.

Після встановлення усіх компонентів CygWin, залишається відкрити CygWin та встановити ansible, через пакетний менеджер pip, аналогічно, як це робиться на Linux.

About

My personal ansible playbook

Topics

Resources

Stars

Watchers

Forks

Languages