4.21M
Category: internetinternet

Playbook Ansible

1.

Исходные данные

2.

Исходные данные

3.

Исходные данные

4.

Проверка связности машин

5.

Установка Ansible

6.

Авторизация с помощью SSH-key
Проверить на обеих машинах наличие ssh сервера
sudo systemctl status sshd
Если его нет, то
sudo apt-get install openssh-server
Затем на master делаем mkdir ~/.ssh, генерируем ключевую пару
ssh-keygen -t rsa -q -N '' -f ~/.ssh/id_rsa
Затем используем утилиту
ssh-copy-id -i ~/.ssh/ id_rsa.pub slave@remote_host
для копирования открытого ключа на slave
Если всё успешно, то выполнив на master ssh slave@remote_host должно
авторизовать на slave по ключу

7.

Playbook Ansible — это план задач автоматизации, которые
представляют собой сложные IT-операции, выполняемые с
ограниченным участием человека или без него. Плейбуки Ansible
выполняются на наборе, группе или классификации хостов, которые
вместе составляют т.н. inventory Ansible.
Файл inventory определяет хосты и группы хостов, на которых
работают команды, модули и задачи в плейбуке. Файл может быть в
одном из многих форматов в зависимости от вашей среды Ansible и
плагинов. Общие форматы включают INI и YAML.
Создадим файл inventory – с названием hosts.txt

8.

Inventory файл

9.

Ansible config
Проверка работы Ansible

10.

Inventory файл

11.

Описание Inventory

12.

Ad-hoc команды
ansible {group} –m setup - Отображает информацию по каждому из хостов в рамках
группы
ansible {group} –m shell –a ‘command’ Выполняет команды на хостах
ansible {group} –m copy –a ‘src={path} dest={path}’ Копирует файл на хост

13.

Ad-hoc команды
ansible {group} –m file –a ‘path={path} state=absent’ удаляет файл с хостов
ansible {group} –m get_url –a ‘url={url} dest={path}’ скачивает на хосты файл по URL

14.

Ad-hoc команды
ansible {group} –m apt –a ‘name={name} state =latest’ устанавливает на хосты
программы

15.

ansible {group} –m service –a ‘name={name} state =started enabled=yes’
запускает программу
English     Русский Rules