Python для сетевых инженеров
Направление
- PYT03 — Программирование на Python для сетевых инженеров, базовый курс
- Длительность: 5 дней (40 часов)
- Код курса: PYT03
- Стоимость
- Очный формат: 624 000 ₸
- Онлайн формат: 527 000 ₸
Описание курса
Описание курса:
В данном курсе рассматриваются как общие аспекты работы языка программирования Python, так и применение его возможностей в сценариях обслуживания работы сетевого оборудования в сетях передачи данных. В курсе изучаются общие положения программирования и использование специализированных инструментов и библиотек для взаимодействия с сетевыми устройствами.
Аудитория курса:
Сетевые инженеры и сетевые администраторы, которые хотят дополнить свои знания сетей передачи данных использованием инструментов программирования.
Предварительные требования:
Знания языка Python на уровне курса Программирование на языке Python (PYTHON_BASIC)
Знания принципов работы сетей пакетной передачи данных в объеме сертификации CCNA (или аналогичных) и более. Рекомендуется знакомство с оборудованием одного из крупных производителей сетевого оборудования (Cisco Systems, Juniper Networks и т.д.)Содержание курса:
1. Python. Типы данных
Основные факты о языке программирования Python 3 (тип, устройство, сферы применения). Преимущества использования Python в сетях передачи данных.
Примеры синтаксиса языка. Документация PEP.
Стандартные типы данных (переменные, списки, кортежи, словари, сеты, файлы) с примерами использования и основными операциями над ними (преобразования типов, генерирование и т. д.).
Типы данных (и библиотеки), используемые в работе с сетевым оборудованием (ipAddress, XML, JSON, YAML) с примерами использования и основными операциями над ними (преобразования типов, генерирование и т. д.).
Лабораторная работа 1.
Работа с типами данных (стандартными и дополнительными).2. Операторы, функции и библиотеки
Условный оператор if/elif/else.
Операторы циклов while и for. Работа с циклами (break, continue).
Понятие функций. Рассмотрение синтаксиса, локальные и нелокальные переменные. Операторы return и yield. Отличие и примеры использования функций и генераторов.
Регулярные выражения и использование библиотеки re.
Модули и библиотеки. Назначение, использование, правила оформления.
Лабораторная работа 2.
Работа с условными операторами и циклами.
Лабораторная работа 3.
Работа с функциями и генераторами.3. Исключения и Netmiko
Обработка исключений. Операторы try/except/else/finally, оператор raise. Назначение и примеры использования.
Библиотеки взаимодействия с сетевыми устройствами посредством CLI. Библиотека Netmico.
Лабораторная работа 4.
Использование библиотек Netmiko для взаимодействия с сетевыми устройствами.4. NETCONF, REST API
Протокол NETCONF и библиотека ncclient. Применение, основные понятия, принципы работы с библиотекой. Поддержка производителями.
Формат REST API и библиотека request. Применение, основные понятия, принципы работы с библиотекой. Поддержка производителями. Cisco NX-API – примеры, особенности.5. Объектно-ориентированное программирование
Общая концепция ООП.
Парадигмы ООП.
Классы.
Создание классов.
Дополнительные возможности классов.
Лабораторная работа 5.
Работа с ООП. Классы. - PYT04 — Python для сетевых инженеров, дополнительные темы
- Длительность: 5 дней (40 часов)
- Код курса: PYT04
- Стоимость
- Очный формат: 624 000 ₸
- Онлайн формат: 527 000 ₸
Описание курса
Описание курса:
В данном курсе рассматриваются расширенные темы использования языка программирования Python для обслуживания сетевого оборудования и автоматизации различных задач сетевого администратора. Изучаются принципы работы с инструментами парсинга и генерации конфигурационных файлов, инструменты анализа конфигурации, а также установка и настройка средств автоматизации управления сетевыми устройствами
Аудитория курса:
Сетевым инженерам и сетевым администраторам, которые хотят дополнить свои знания сетей передачи данных использованием инструментов программирования.
Предварительные требования:
Знания принципов работы сетей пакетной передачи данных в объеме сертификации CCNA (или аналогичных) и более.
Рекомендуется знакомство с оборудованием одного из крупных производителей сетевого оборудования (Cisco Systems, Juniper Networks и т.д.).
Также рекомендуется прохождение курса Программирование на Python для сетевых инженеров. Базовый курс (PYTHON_NET) или эквивалентный объем знаний.Содержание курса:
1. Установка сред написания программ и скриптов, установка тестовых сетевых сред
Работа с Jupyter Lab
Установка Docker
Установка и настройка ContainerLab
Лабораторная работа.
Подготовка среды для упражнений2. Парсинг конфигурационных файлов и выводов команд устройств
Основы парсинга текстовых документов в Python
Библиотека TextFSM
Библиотека TTP
Соединение операций библиотеки Netmiko и парсинга выводов команд
Лабораторная работа 1.
Парсинг выводов команд сетевого оборудования3. Библиотека Batfish
Назначение инструмента Batfish
Установка контейнера Batfish
Подготовка к использованию Batfish в Python
Возможности Batfish по анализу файлов конфигурации
Лабораторная работа 2.
Установка Batfish и работа с конфигурационными файлами устройств4. Библиотека Jinja2 для создания конфигурационных файлов
Подготовка к использованию Jinja2
Синтаксис шаблонов Jinja2
Лабораторная работа 3.
Создание конфигурационных файлов с помощью Jinja25. Nornir (подготовка и инициализация)
Установка и подготовка
Построение инвентарных данных
Основы синтаксиса
Лабораторная работа 4.
Установка и подготовка фреймворка Nornir6. Nornir (использование)
Конфигурационные опции и подготовка результатов
Задания и обработка инвентарных данных
Пользовательские задания
Обработка неполадок и ошибок заданий
Лабораторная работа 5.
Использование Nornir для настройки и обслуживания сетевого оборудования7. Готовые библиотеки и фреймворки от производителей оборудования
Рассмотрение работы библиотек различных сетевых производителей (Cisco, Juniper и т.д.)
Лабораторная работа 6.
Использование фреймворков и библиотек от производителей оборудования8. Использование инструментов CI/CD для работы с сетевым оборудованием
Установка и настройка Jenkins
Построение pipeline в Jenkins для выполнения серий заданий на сетевых устройствах
Лабораторная работа 7.
Использование Jenkins для работы с сетевым оборудованием - PYT05 — Настройка сетевого оборудования с использованием Ansible
- Длительность: 5 дней (40 часов)
- Код курса: PYT05
- Стоимость
- Очный формат: 624 000 ₸
- Онлайн формат: 527 000 ₸
Описание курса
Описание курса:
На данном курсе участники познакомятся с системой управления конфигурациями Ansible для работы с настройкой сетевого оборудования различных производителей. В курсе рассматриваются аспекты подготовки инфраструктуры под использование Ansible и осуществление конфигурационных и мониторинговых работ над оборудованием с помощью встроенных и дополнительных инструментов Ansible. Участники курса получат навыки эксплуатации Ansible с использованием рекомендованных практик, а также информацию о поиске и устранении неполадок в работе системы управления конфигураций.
Аудитория курса:
Курс будет интересен сетевым администраторам, сетевым архитекторам и специалистам технической поддержки.
Предварительные требования:
Знания языка Python на уровне курса Программирование на языке Python (PYTHON_BASIC).
Содержание курса:
1. Основы Ansible и установка.
Архитектура и назначение Ansible
Устройство инвентарных данных Ansible
Установка и предварительная настройка
Установка и настройка Ansible AWX
Основы построения Ansible Playbook
Переменные и модули
Отправка команд командной строки2. Построение комплексных плейбуков
Управление учетными записями
Сбор фактов о сетевых устройствах
Tag, limit и check
Условия
Петли (циклы)
Шаблонизация конфигурации3. Масштабирование работы с инфраструктурой
Специализированные модули для конфигурации
Import и Include
Роли
Парсинг выводов сетевых устройств
Динамическая инвентаризация
Управление процессом выполнения4. Расширенные возможности Ansible
Jinja2 lookup плагин
Фильтры
Плагины
Устранение неполадок работы Ansible
Ansible Vault5. Интеграция и расширенные темы
Интеграция со сторонними системами инвентаризации
Интеграция со сторонними системами конфигурирования
Создание пользовательских модулейУпражнения
Установка и настройка Ansible и Ansible AWX
Инвентаризация и базовая отправка команд на группы устройств
Использование условий и циклов
Создание и использование шаблонов конфигурации
Роли и импорты
Использование плагинов и фильтров
Использование Ansible Vault
Устранение неполадок
Интеграция с NetBox и NAPALM
Записаться на курс
Контакты
LinkedIn
Email
Web