Відповідальний

Як встановити Ansible на Ubuntu 20.04 LTS

Як встановити Ansible на Ubuntu 20.04 LTS
У цій статті я збираюся показати вам, як встановити Ansible на Ubuntu 20.04 LTS та налаштуйте Ubuntu 20.04 LTS хости для Ansible автоматизації. Отже, давайте почнемо.

Топологія мережі:

Ось, linuxhint-711ea є Ubuntu 20.04 LTS машина, де я буду встановлювати Ansible.

Потім я налаштую хости хост1 (IP-адреса 192.168.20.162) та host2 (IP-адреса 192.168.20.153) для автоматизації Ansible та запускати на них команди, використовуючи Ansible з linuxhint-711ea машина.

Я просто зателефоную хост1 і host2 як Ansible хости в цій статті.

Встановлення Ansible:

Ви можете легко встановити Ansible на Ubuntu 20.04 LTS з офіційного сховища пакетів Ubuntu.

Спочатку оновіть кеш сховища пакетів APT наступною командою:

$ sudo apt оновлення

Потрібно оновити кеш сховища пакетів APT.

Тепер встановіть Ansible за допомогою такої команди:

$ sudo apt install ansible

Щоб підтвердити встановлення, натисніть Y а потім натисніть .

Слід встановити Ansible.

Тепер запустіть таку команду, щоб перевірити, чи правильно працює ansible.

$ ansible --version

Як бачите, команда ansible доступна і працює коректно.

Генерування ключа SSH:

Тепер вам потрібно згенерувати ключ SSH на комп’ютері, де ви встановили Ansible.

Щоб сформувати ключ SSH, виконайте таку команду:

$ ssh-keygen

Тепер натисніть .

Натисніть .

Натисніть .

Слід генерувати ключ SSH.

Налаштування хостів Ubuntu для Ansible Automation:

У цьому розділі я покажу вам, як налаштувати хост Ubuntu (хост1) для Ansible автоматизації. Якщо у вас є кілька хостів, які ви хочете автоматизувати за допомогою Ansible, повторіть той самий процес на кожному з хостів.

На хостах Ubuntu Ansible (яких ви хочете налаштувати для автоматизації Ansible) повинен бути встановлений серверний пакет SSH.

Спочатку оновіть кеш сховища пакетів APT наступною командою:

$ sudo apt оновлення

Потім встановіть сервер OpenSSH за допомогою такої команди:

$ sudo apt install openssh-server -y

У моєму випадку серверний пакет OpenSSH уже встановлений. Якщо він не встановлений у вашому випадку, його слід встановити.

Тепер перевірте, чи є sshd служба працює з такою командою:

$ sudo systemctl статус sshd

Як бачите, sshd послуга є активний (працює) і увімкнено (автоматично запускається під час завантаження системи).

Якщо sshd послуги немає активний (працює) у вашому випадку, запустіть його вручну за допомогою такої команди:

$ sudo systemctl start sshd

Якщо sshd послуги немає увімкнено (не додано до запуску системи) у вашому випадку додайте його до запуску системи вручну за допомогою такої команди:

$ sudo systemctl увімкніть sshd

Тепер налаштуйте брандмауер, щоб дозволити доступ SSH за допомогою такої команди:

$ sudo ufw allow ssh

Вам також слід створити файл ансибле користувача і дозволити без пароля доступ до sudo до ансибле користувач.

Для створення ансибле користувач, запустіть таку команду:

$ sudo adduser ansible

Тепер введіть пароль для ансибле користувача та натисніть .

Тепер повторно введіть пароль і натисніть .

Тепер натисніть .

Тепер натисніть .

Тепер натисніть .

Тепер натисніть .

Тепер натисніть .

Тепер введіть р а потім натисніть .

Ан ансибле користувач повинен бути створений.

Тепер налаштуйте доступ до sudo без пароля ансибле користувач із наступною командою:

$ echo "ansible ALL = (ALL) NOPASSWD: ALL" | sudo tee / etc / sudoers.г / ансіблі

Тепер знайдіть IP-адресу хосту Ansible (хост1) з наступною командою:

$ hostname -I

Тут IP-адреса в моєму випадку є 192.168.20.162. Для вас це буде по-іншому. Отже, не забудьте замінити його на вашу форму зараз.

Тепер з комп’ютера, на якому ви встановили Ansible, скопіюйте відкритий ключ SSH на хост Ansible (хост1) наступним чином:

$ ssh-copy-id ansible @ 192.168.20.162

Введіть так та натисніть .

Тепер введіть пароль для ансибле користувача та натисніть .

Відкритий ключ SSH слід скопіювати в хост1.

Тепер вимкніть вхід на основі пароля для ансибле користувач із наступною командою:

$ sudo usermod -L Ansible

Тепер ви можете лише SSH в хості Ansible (хост1) як ансибле користувач без будь-якого пароля від комп’ютера, з якого ви скопіювали відкритий ключ SSH (у цьому випадку комп’ютера, на якому ви встановили Ansible). Але ви не зможете отримати SSH на хості Ansible (хост1) як ансибле користувач з будь-якого іншого комп'ютера. Я налаштував хости Ansible таким чином з міркувань безпеки. Як ансибле користувачеві не потрібен пароль для запуску адміністративних команд, ризиковано дозволити вхід на основі пароля для ансибле користувач.

Тепер ви повинні мати можливість SSH на хості ansible хост1 з комп’ютера, де ви встановили Ansible, наступним чином:

$ ssh ansible @ 192.168.20.162

Як бачите, я можу отримати доступ до хосту Ansible (хост1) як відповідальний користувач без будь-якого пароля. Отже, хост Ansible (хост1) готовий до автоматизації Ansible.

Якщо з якихось причин ви хочете дозволити вхід на основі пароля для ансибле користувач знову запустіть таку команду в Ansible хості (хост1):

$ sudo usermod -U Ansible

Ви можете налаштувати скільки завгодно хостів для автоматизації Ansible таким же чином.

У цій статті я налаштував лише 2 хости, хост1 і host2 для демонстрації.

Тестування Ansible:

Тепер створіть новий каталог проекту ~ / ansible-demo / на комп’ютері, де ви встановили Ansible, наступним чином:

$ mkdir ~ / ansible-demo

Тепер перейдіть до ~ / ansible-demo / каталог наступним чином:

$ cd ~ / ansible-demo /

Тепер створіть новий господарі файл у каталозі проекту наступним чином:

$ нано-господарі

Тепер введіть IP-адреси або імена DNS хостів Ansible (хост1 і host2 у моєму випадку) в господарі файл наступним чином:

192.168.20.162
192.168.20.153

Тепер збережіть файл, натиснувши + X слідом за ним Y і потім .

Тепер спробуйте пінгувати всіх хостів за допомогою Ansible наступним чином:

$ ansible все -i ./ hosts -u ansible -m ping

ПРИМІТКА: Тут параметр -u використовується для вказівки імені користувача (у цьому випадку ansible), яке Ansible використовуватиме для SSH на хостах.

Як бачите, усіх господарів можна пінгувати. Отже, господарі готові до автоматизації Ansible.

Таким же чином ви можете запустити будь-яку команду на хостах, використовуючи Ansible наступним чином:

$ ansible все -i ./ hosts -u ansible -m shell -a 'echo "$ (ім'я хосту) - $ (ім'я хоста -I)"'

Як бачите, команда успішно виконана на кожному з хостів і виводиться результат.

Отже, ось як ви встановлюєте Ansible на Ubuntu 20.04 LTS та налаштуйте Ubuntu 20.04 LTS хости для Ansible автоматизації. Дякуємо, що прочитали цю статтю.

Як використовувати GameConqueror Cheat Engine в Linux
Стаття висвітлює посібник із використання механізму читів GameConqueror в Linux. Багато користувачів, які грають у ігри в Windows, часто використовуют...
Кращі емулятори ігрової консолі для Linux
У цій статті буде перелічено популярне програмне забезпечення для емуляції ігрової консолі, доступне для Linux. Емуляція - це рівень сумісності програ...
Best Linux Distros for Gaming in 2021
The Linux operating system has come a long way from its original, simple, server-based look. This OS has immensely improved in recent years and has no...