Программа курса
Модуль 1. Основы и установка Ansible и связь с Python.
- Назначение Ansible и его связь с Python
- Архитектура и устройство инвентарных данных Ansible
- Установка и предварительная настройка Ansible
- Описание и структура YAML
- Основы построения Ansible Playbook
- Переменные и модули Ansible c позиции Python
- Использование Jupyter Lab и командной строки для запросов
- Использование эмулятора GNS3 для создание виртуальной сети
Модуль 2. Построение комплексных Playbook
- Сбор фактов о сетевых устройствах средствами Ansible
- Структура и назначение tag, limit и check
- Условные операторы
- Циклы в Ansible с позиции Python
- Подготовка к использованию Jinja2
- Базовый синтаксис шаблонов Jinja2
- Шаблонизация конфигурации с помощью Jinja2
Модуль 3. Масштабирование работы с инфраструктурой
- Специализированные модули для конфигурации
- Импортирования модулей и их структура
- Использование Include с позиции программирования
- Структурность проекта с использованием ролей
- Базовые знания по регулярным выражениям и парсингу в Python
- Парсинг выводов с помощью TextFSM и TTP сетевых устройств
- Динамическая инвентаризация на базе Python
- Управление процессом выполнения
Модуль 4. Расширенные возможности Ansible
- Фильтры и плагины Ansible
- Устранение неполадок работы Ansible
- Безопасность с помощью Python и Ansible
- Дополнительные возможности Ansible
Модуль 5. Интеграция и расширенные темы
- Интеграция со системами инвентаризации
- Интеграция со системами конфигурирования
- Программирования пользовательских модулей с помощью Python
Упражнения
- Установка и настройка Ansible
- Создание топологии сети на базе GNS3
- Инвентаризация и базовая отправка команд на группы устройств
- Использование условий и циклов
- Создание и использование шаблонов конфигурации
- Создание расширяемого проекта на базе ролей
- Использование плагинов и фильтров
- Использование и настройка безопасности в Ansible
- Интеграция со системами инвентаризации и конфигурирования
- Создание и разбор модулей с помощью Python