Проходил 19 февраля в 20:00

Открытый вебинар
Continuous delivery в начале 2019 года

Открытый вебинар онлайн

За последние годы DevOps практики сильно изменились. Практика Continuous Delivery, например, стала включать в себя куда больше вещей, чем просто автоматизированная поставка, мы узнали на что конкретно эта практика в компании влияет и как ее пользу можно измерить. Давайте разберёмся, что же из себя представляет практика Continuous Delivery в начале 2019 года.
Преподаватель
Андрей Александров

Запись

О курсе

DevOps практики и инструменты
70 000 ₽
5 месяцев
Начало 29 августа
Основная “фишка” программы - постоянный переход от абстрактного в конкретное: сначала дается карта конкретных практик, далее отдельные подпрактики с моментальным погружением в инструмент. Это дает эффект самостоятельного изучения, при этом карта практик уже сформирована для специалиста, и у него нет шанса попасть в колею прошлого опыта. На курсе будут подробно изучены инструменты и конкретные приемы для реализации следующих практик:

  • инфраструктура …
Программа курса
Модуль 1
DevOps. Необходимость меняться
Модуль 2
Управление инфраструктурой и конфигурацией
Модуль 3
Continuous Integration & Continuous Delivery с использованием Docker
Модуль 4
Fast Feedback Loop (мониторинг и логирование)
Модуль 5
Контейнерная Оркестрация
Модуль 6
Проектная работа
DevOps. Необходимость меняться
Что такое DevOps и история его развития.
Как DevOps меняет жизнь и работу компаний. DevOps как профессия. Обзор курса.
29 августа, 20:00 — 21:30
DevOps как система.
Практики и методики. DevOps компетенции.
2 сентября, 20:00 — 21:30
Система контроля версий как основа разработки и поставки ПО. Знакомство с Git.
5 сентября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Работа с локальным и удаленным репозиториями, исправление комитов, решение конфликтов, работа с ветками и практика Code Review..
Локальное окружение инженера. ChatOps и визуализация рабочих процессов. Командная работа с Git. Работа в GitHub.
9 сентября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Настройка локального окружения и практика ChatOps..
Знакомство с облачной инфраструктурой и облачными сервисами.
Практики безопасного доступа к ресурсам (SSH, Bastion Host, VPN).
12 сентября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Запуск VM в GCP, управление правилами фаервола, настройка SSH подключения, настройка SSH подключения через Bastion Host, настройка VPN сервера и VPN-подключения..
Основные сервисы Google Cloud Platform (GCP).
Способы управления ресурсами в GCP.
16 сентября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Практика управления ресурсами GCP через gcloud.. Ручной деплой тестового приложения. Написание bash скриптов для автоматизации задач настройки VM и деплоя приложения.
Управление инфраструктурой и конфигурацией
Модели управления инфраструктурой.
Работа с образами VM в облаке. Знакомство с Packer и экосистемой компании HashiCorp.
19 сентября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Подготовка базового образа VM при помощи Packer.. Деплой приложения с использованием подготовленного базового образа.
Практика Infrastructure as a Code (IaC).
Знакомство с Terraform.
23 сентября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Декларативное описание в виде кода инфраструктуры GCP, требуемой для запуска тестового приложения, при помощи Terraform..
Принципы организации инфраструктурного кода и работа над инфраструктурой в команде на примере Terraform.
26 сентября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Создание Terraform модулей для управления компонентами инфраструктуры.. Описание и настройка инфраструктуры нескольких окружений. Работа с Terraform remote backend.
Управление конфигурацией.
Основные DevOps инструменты: Chef, Ansible, Puppet, Salt. Знакомство с Ansible.
30 сентября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Написание Ansible плейбуков на основе имеющихся bash скриптов.. Сборка базовых образов при помощи Packer и Ansible.
Продолжение знакомства с Ansible: templates, handlers, dynamic inventory, vault, tags.
3 октября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Управление настройками хостов и деплой приложения при помощи Ansible..
Принципы организации кода для управления конфигурацией.
Ansible роли, управление настройками нескольких окружений и best practices.
7 октября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Написание Ansible ролей для управления конфигурацией сервисов и настройками хостов.. Организация репозитория для работы с несколькими окружениями. Работа с Ansible Galaxy и комьюнити ролями.
Локальная разработка Ansible ролей с Vagrant. Тестирование конфигурации.
10 октября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Доработка имеющихся ролей локально с использование Vagrant.. Тестирование конфигурации при помощи Molecule и TestInfra.
Continuous Integration & Continuous Delivery с использованием Docker
Технология контейнеризации. Введение в Docker.
14 октября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Установка Docker, запуск контейнера на локальной машине, выполнение команд внутри контейнера, создание образа контейнера на основе запущенного..
Docker контейнеры. Docker под капотом
17 октября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Запуск VM с установленным Docker Engine при помощи Docker Machine. Написание Dockerfile и сборка образа с тестовым приложением. Сохранение образа на DockerHub..
Docker образы. Микросервисы
21 октября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Разбиение приложения на несколько микросервисов. Выбор базового образа. Подключение volume к контейнеру..
Сетевое взаимодействие Docker контейнеров. Docker Compose. Тестирование образов
24 октября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Практика работы с основными типами Docker сетей. Декларативное описание Docker инфраструктуры при помощи Docker Compose..
Технология непрерывной поставки ПО
28 октября, 20:00 — 21:30
Устройство Gitlab CI. Построение процесса непрерывной интеграции
31 октября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Gitlab CI. Построение процесса непрерывной интеграции.
Fast Feedback Loop (мониторинг и логирование)
Введение в мониторинг. Модели и принципы работы систем мониторинга
4 ноября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Создание и запуск системы мониторинга Prometheus.. Мониторинг состояния микросервисов, сбор метрик при помощи prometheus exporters.
Мониторинг приложения и инфраструктуры
7 ноября, 20:00 — 21:30
Применение инструментов для обработки лог данных
Что такое логи и зачем они нужны? Системы централизованного хранения лог данных, требования к ним и примеры. Форматы и варианты логирования приложений
11 ноября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Логирование приложений.. Структурированные и неструктурированные логи. Организация централизованной системы логирования.
Применение системы логирования в инфраструктуре на основе Docker.
Рассмотрение систем распределенной отладки данных (Distributed tracing)
14 ноября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Логирование приложений.. Структурированные и неструктурированные логи. Продолжение создания и работы централизованной системой логирования.
Контейнерная Оркестрация
Контейнерная оркестрация.
Примеры известных и актуальных систем оркестрации (DC/OS, Aurora, Nomad, Docker Swarm)
18 ноября, 20:00 — 21:30
Введение в Kubernetes.
Основные концепции и архитектура системы.
21 ноября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Установка и настройка Kubernetes.. Работа над автоматизацией процесса развертывания системы.
Основные модели безопасности и контроллеры в Kubernetes
25 ноября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Установка и настройка Google Kubernetes Engine, настройка локального профиля администратора для GKE. Работа с с контроллерами: StatefulSet, Deployment, DaemonSet.
Ingress-контроллеры и сервисы в Kubernetes.
Работа с удаленными хранилищами данных.
28 ноября, 20:00 — 21:30
Домашние задания: 1
ДЗ
Настройка балансировщиков нагрузки в Kubernetes и SSL­Terminating.. Подключение удаленных хранилищ GCP данных к POD’ам.
Интеграция Kubernetes в GitlabCI.
Использование формата упаковки приложений Charts в Kubernetes Helm.
2 декабря, 20:00 — 21:30
Домашние задания: 1
ДЗ
Создание Helm Chart’ов для компонент приложения, управление зависимостями Helm.. Построение CI/CD pipeline в Gitlab в интеграции с Kubernetes.
Kubernetes. Мониторинг и логирование
Развертывание Prometheus в Kubernetes. Настройка Prometheus и Grafana для сбора метрик кластера и приложений. Развертывание и настройка EFK для сбора логов.
5 декабря, 20:00 — 21:30
Проектная работа
Проектная работа заключается в полноценном production grade развертывании приложения с учетом изученных практик и инструментов.

Мы предоставляем приложение, которое нужно развернуть, но лучше будет если вы возьмете свое с работы или pet project. В проектной работе нет однозначно хорошего пути, это исследовательский проект, где преподаватель будет оценивать целесообразность использования тех или иных решений и давать советы по улучшению проекта.
Финальное занятие и выдача курсового проекта
9 декабря, 20:00 — 21:30
Домашние задания: 1
ДЗ
Проектная работа.
Промежуточная приемка проектов - 10 октября
12 декабря, 20:00 — 21:30
Финальное занятие. Подведение итогов обучения
16 декабря, 20:00 — 21:30

Преподаватель

Андрей Александров
Инженер Express42
Внедряет DevOps практики в команды, адаптируя их под специфику компаний. Обучает новым подходам и процессам ведения разработки и управления инфраструктурой. Работал с такими компаниями как: Первый ОФД, Рокетбанк, Cloudlock, WildApricot, МТС.

Использует технологический стек
-Linux: Debian-based, RHEL-based
-Control version systems: Git
-Programming on Ruby, Python
-CI/CD: Gitlab, Travis, TeamCity, Bamboo,
-Configuration management systems: Chef, Ansible, Terraform, Packer
-Infrastructure test frameworks: Serverspec, InSpec, Goss
-Containers: Docker, Kubernetes
Преподаватель курсов:
DevOps практики и инструменты