Инструменты и практики DevOps

Код
UEC-011
Продолжительность очно
7 дн.
Продолжительность VILT
56 ак.ч.
Формат обучения
очно, Virtual Instructor-Led Training - VILT
О курсе

В рамках курса слушатели изучат методологию автоматизации технологических процессов сборки, настройки и развёртывания программного обеспечения. 

Для кого этот курс
  • системные администраторы
  • разработчики
  • DevOps инженеры
  • QA инженеры
Требуемые знания и навыки

Базовые навыки администрирования Linux

Приобретаемые навыки

После завершения курса слушатели получат навыки, позволяющие им:

  • Применять в работе принципы DevOps и ускорять производственные процессы
  • Автоматизировать процесс разработки и развёртывания приложений
  • Применять принципы DevOps и ускорять производственные процессы при разработке приложений
  • Контейнеризировать приложения и разворачивать их в среде Kubernetes
  • Использовать современные инструменты для повышения качества, производительности и стабильности приложений
  • Управлять инфраструктурой Kubernetes и сокращать время на ее развёртывание и масштабирование
  • Повысить эффективность взаимодействия  между участниками процесса разработки, тестирования и поставки программных продуктов
Программа
  1. Версионирование и командная работа с помощью Git» 
  • Основные свойства распределенных систем версионирования (DCVS) и способы их применения.
  • Описание внутренней архитектуры git: файлы, деревья, коммиты и теги.
  • Работа с git в локальном режиме: внесение и фиксация изменений, просмотр отличий, история, поиск по истории и изменениям, bisect, blame и т.д.
  • Работа с удаленными (remote) репозиториями и ветками, создание, объединение (merge) веток, rebase и его отличие от merge, cherry-pick.
  • Типовые способы работы в команде с использованием GitHub Flow, Git Flow и Trunk Based Development.
  • Git-клиенты под разные платформы, в том числе встроенные в IDE.
  1. Мониторинг на базе Prometheus + Grafana»
  • Основные аспекты мониторинга инфраструктуры и приложений
  • Prometheus - краткий экскурс по проекту, особенности, обзор архитектуры
  • Prometheus exporters - использование экспортеров для мониторинга компонентов инфраструктуры
  • Prometheus - использование языка запросов PromQL, основные типы данных и работа с ними
  • Prometheus Alerting - формирование алертов, использование Alertmanager
  • Prometheus - хранение метрик
  • Grafana - визуализация данных
  1. Введение в Docker
  • Введение в Docker
  • Работа с сетью и с данными
  • Разработка и запуск проекта в Docker
  • Рекомендуемые практики работы с Docker
  1. Непрерывная поставка на базе Docker+Kubernetes
  • Методология DevOps (Работа разработчиков и других ролей в рамках одних целей, с использованием одинаковых инструментов)
  • Непрерывная интеграция
  • Непрерывная поставка
  • Сбор обратной связи
  1. Непрерывная поставка и развертывание на базе Gitlab»
  • Что такое CI/CD (непрерывная интеграция/непрерывная доставка) и какие проблемы решает
  • Обзор Gitlab
  • Gitlab Runner и его настройка
  • Приемы работы с Gitlab CI. Best Practices построения пайплайна