Глава 1. Подходы и инструменты автоматизации.
- Обзор курса, применяемые инструменты.
- Определение IaC, NaC
- Git, Python, JSON, YAML
- Автоматизация: подходы, понимание, реализации.
Практические занятия к главе 1:
- создание репозитория на git
- работа с git: commit, pull, push, branch, merge
- Данные в Python, сериализация в YAML
Глава 2. Ansible как инструмент и язык автоматизации.
- основы: play, playbook, tasks, переменные.
- модули - конфигурирование сетевых устройств
- вопросы выбора системы автоматизации
Практические занятия по 2 главе:
- простой плейбук на Ansible
- переменные в Ansible
- сбор фактов, создание переменных
- вендорские модули Ansible
Глава 3. Jinja2: шаблоны, конфигурации
- основы
- фильтры и тесты
- конфигурация сетевых устройств на jinja2
- частичная и полная конфигурация
Практические занятия по 3 главе:
- простой шаблон на jinja2
- применение фильтров и тестов
- шаблон полной конфигурации сетевого устройства
4. Ansible особенности.
- функциональное программирование в Ansible.
- мультиплатформенные плейбуки для сетевых устройств разных вендоров
- vault. Хранение чувствительной информации
Практические занятия по 4 главе:
- фильтрация вывода команд в Ansible. Функциональный подход.
- мультиплатформенный плейбук с частичной конфигурацией
- шифрование файлов с помощью ansible-vault
- хранение переменных в зашифрованном виде