IT Academy
Справочник курса

Автоматизация сетей

Все объяснения, задачи и лабораторная в одном месте.

Можно сохранить страницу в PDF через печать браузера. Для печати разборы ответов раскрываются автоматически.

1. Модель данных и source of truth

Объяснение

Source of truth описывает устройства, адреса и намерения конфигурации. Он должен иметь владельцев и валидацию. Инвентаризация факта и желаемая модель — не одно и то же.

Задача для самостоятельного решения

Что делать при несовпадении inventory и устройства?

Показать разбор ответа

Зафиксировать drift, выяснить, какое состояние одобрено, и выполнить управляемое согласование. Автоматически копировать любое найденное состояние опасно.

2. SSH/API, NETCONF/RESTCONF и telemetry

Объяснение

API и NETCONF/RESTCONF структурируют операции, SSH CLI требует разбора текста. Возможности commit и rollback зависят от устройства. Credentials должны иметь минимально нужные права.

Задача для самостоятельного решения

Почему парсинг вывода CLI по позиции столбца хрупок?

Показать разбор ответа

Версия ОС и ширина вывода меняют формат. Предпочитайте структурированные ответы и проверяйте схему; для CLI нужны fixtures разных вариантов.

3. Шаблоны и генерация конфигурации

Объяснение

Шаблон отделяет данные устройства от синтаксиса команды. Валидация входов предотвращает неверные адреса и конфликтующие VLAN. Детерминированный вывод упрощает review.

Задача для самостоятельного решения

Почему нельзя подставлять произвольное имя в команду без проверки?

Показать разбор ответа

Специальные символы могут изменить синтаксис. Ограничивайте допустимые значения и используйте структурированные API, где возможно.

4. Validation, lint и digital twin

Объяснение

Pre-check проверяет предпосылки, post-check — достигнутое поведение. Синтаксически допустимая конфигурация может разорвать связность. Digital twin помогает, но может не моделировать аппаратные особенности.

Задача для самостоятельного решения

Какие проверки нужны для смены маршрута управления?

Показать разбор ответа

Сохранённый альтернативный доступ, текущая связность, ожидаемый путь после изменения и автоматический откат по timeout.

5. Staged rollout и rollback

Объяснение

Staged rollout ограничивает количество одновременно изменяемых устройств. Stop condition прекращает распространение при ухудшении. Rollback должен быть проверен до массовой операции.

Задача для самостоятельного решения

Почему начинать со всех маршрутизаторов сразу рискованно?

Показать разбор ответа

Ошибка одновременно лишает доступа ко всей сети. Начните с одного представителя, проверьте данные и только затем расширяйте охват.

6. Inventory, compliance и event-driven automation

Объяснение

Compliance сравнивает состояние с политикой. Event-driven автоматизация должна подавлять повторы и циклы реакции. Уведомление об изменении не является разрешением на любое исправление.

Задача для самостоятельного решения

Как избежать бесконечной реакции на собственные изменения?

Показать разбор ответа

Отмечать инициатора/версию, проверять уже достигнутое состояние и применять идемпотентную операцию с ограничением повторов.

Практика

Лабораторная работа

Подготовка

Локальные данные и генерация текста без подключения к оборудованию.

Учебный пример

devices=[{'name':'lab-a','vlan':10},{'name':'lab-b','vlan':20}]
for item in devices:
    assert item['name'].startswith('lab-')
    assert 1 <= item['vlan'] <= 4094
    print(item['name'], 'desired_vlan', item['vlan'])

Как работает пример и что ожидать

Проверка входов предшествует генерации. Вывод описывает намерение, не vendor-specific команды. Рабочая автоматизация должна проверять идентичность устройства, текущую конфигурацию и возможность восстановления.

Итоговая работа

Добавьте схему inventory, diff, pre/post checks и dry-run. Испытайте rollout на симуляторе или собственном учебном устройстве, включая timeout и rollback. Повторный запуск не должен создавать новое изменение.

Проверка результата

1. Опишите исходные данные и условия запуска, чтобы другой человек мог повторить работу.
2. Приложите результат обычного сценария и сравните его с ожидаемым.
3. Проверьте неверный вход, граничный случай и отказ зависимости, если она есть.
4. Объясните выбранное решение и известное ограничение.
5. Сохраните исправления после самопроверки вместе с примером, который раньше не работал.

Как оценить работу

По каждому пункту поставьте 0 (не выполнено), 1 (выполнено с пробелами) или 2 (результат воспроизводим и объяснён). Если обязательный сценарий не работает, вернитесь к нему независимо от общей суммы. Это рубрика самопроверки: сайт не исполняет присланный код и не выдаёт автоматическую оценку проекта.