DevOps практики и инструменты
Подробнее о курсе
Цель курса
Освоить инструменты и конкретные приёмы для реализации следующих практик: — Infrastructure as Code(IaC), — CI/CD, — непрерывный сбор метрик (мониторинг и логирование)
Целевая аудитория курса
Разработчики, тестировщики, системные администраторы
Получаемые знания и навыки
По окончании курса слушатели научатся
Пользоваться инструментами и конкретными приемами для реализации следующих практик:
- непрерывная поставка ПО
- инфраструктура как код
- непрерывный сбор метрик (мониторинг и логирование)
Необходимая предварительная подготовка
- опыт из разработки, тестирования или эксплуатации
- опыт администрирования систем Linux или Windows
- знание минимум одного языка программирования
Краткое содержание курса
Модуль 1 — DevOps. Необходимость меняться
- Что такое Dev. Что такое DevOps и история его развития
- DevOps как система. Практики и методики
- Система контроля версий как основа разработки и поставки ПО. Знакомство с Git
- Локальное окружение инженера. ChatOps и визуализация рабочих процессов. Командная работа с Git. Работа в GitHub
- Знакомство с облачной инфраструктурой и облачными сервисами
- Основные сервисы Yandex Cloud
- Ops и история его развитияDevOps как система. Практики и методики
- Система контроля версий как основа разработки и поставки ПО. Знакомство с Git
- Локальное окружение инженера. ChatOps и визуализация рабочих процессов. Командная работа с Git. Работа в GitHub. Знакомство с облачной инфраструктурой и облачными сервисами
- Основные сервисы Yandex Cloud
Модуль 2 — Управление инфраструктурой и конфигурацией
- Модели управления инфраструктурой. Подготовка образов с помощью Packer
- Знакомство с Terraform
- Принципы организации инфраструктурного кода и работа над инфраструктурой в команде на примере Terraform
- Управление конфигурацией. Знакомство с Ansible
- Продолжение знакомства с Ansible: templates, handlers, dynamic inventory, vault, tags
- Ansible роли, управление настройками нескольких окружений и best practices
- Локальная разработка Ansible ролей с Vagrant. Тестирование конфигурации
- Безопасность инфраструктуры
Модуль 3 — Continuous Integration & Continuous Delivery с использованием Docker
- Технология контейнеризации. Введение в Docker
- Docker контейнеры. Docker под капотом
- Docker образы. Микросервисы
- Сетевое взаимодействие Docker контейнеров. Docker Compose. Тестирование образов
- Технология непрерывной поставки ПО
- Устройство Gitlab CI. Построение процесса непрерывной интеграции
- Безопасность контейнеров, интеграция проверок безопасности и пайплайны
Модуль 4 — Fast Feedback Loop (мониторинг и логирование )
- Введение в мониторинг. Модели и принципы работы систем мониторинга
- Мониторинг приложения и инфраструктуры
- Применение инструментов для обработки лог данных
- Применение системы логирования в инфраструктуре на основе Docker
Модуль 5 — Контейнерная Оркестрация
- Контейнерная оркестрация
- Введение в Kubernetes
- Основные модели безопасности и контроллеры в Kubernetes
- Ingress-контроллеры и сервисы в Kubernetes
- Интеграция Kubernetes в GitlabCI
- Kubernetes. Мониторинг и логирование
Модуль 6 — Проектная работа
- Выбор темы и организация проектной работы
- Консультация по проектам и домашним заданиям — промежуточная приемка
- Защита проектных работ