Linux Labs

Автоматизация: Git и Ansible / Ступень 4 из 6

Инвентарь и разовые команды

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 2 из 5 · на машине · 8 мин

Инвентарь: имя, адрес, пользователь

Ansible берёт машины из инвентаря и входит на каждую по SSH. Ошибка в строке машины — и до самой работы дело не доходит.

Инвентарь — файл со списком машин. Файл ansible.cfg в текущем каталоге указывает на него строкой inventory = inventory.ini, поэтому ansible all в ~/ansible-lab находит список сам. Строка машины у коллеги:

ini
[web]
app1 ansible_host=app1.lab.test ansible_user=deploy
Часть Что значит
[web] группа: несколько машин под одним именем; all — все машины инвентаря
app1 имя машины в Ansible: его пишут в командах и видят в ответах
ansible_host адрес, по которому идёт SSH; без него SSH идёт по имени машины
ansible_user под кем входить; без него — под тем, кто запустил Ansible

Ansible подключается так же, как ssh deploy@app1.lab.test (SSH), и уже на машине запускает модуль — небольшую программу на python, которая делает работу и отвечает. Поэтому UNREACHABLE! значит одно: SSH не подключился, модуль не запускался. Искать причину надо в имени, адресе, пользователе и ключе (три сообщения SSH — в Вики). Что Ansible понял из инвентаря, показывают ansible-inventory --graph (группы) и ansible-inventory --host app1 (переменные машины).

В этом уроке app.lab.test — адрес этой же машины, 127.0.0.1: Ansible входит на неё по SSH, как на соседний сервер.

Упражнение · сделать

Почини строку app1 в инвентаре

Исправь ~/ansible-lab/inventory.ini так, чтобы ansible all -m ping получил от app1 pong по SSH. Имя машины в инвентаре оставь app1; входить на неё Ansible должен под учётной записью, у которой есть ключ SSH.

Войти и начать Машина доступна после входа

Цели · 0 из 2

  • Указать адрес, по которому SSH находит машину ещё не выполнена
  • Получить pong от app1 по SSH ещё не выполнена

Цели шага

0 из 2
  • Указать адрес, по которому SSH находит машину — ещё не выполнена
  • Получить pong от app1 по SSH — ещё не выполнена
Ubuntu 24.04

Цели шага

0 из 2
  • Указать адрес, по которому SSH находит машину — ещё не выполнена
  • Получить pong от app1 по SSH — ещё не выполнена
Загрузка…