DEVOPS для инженеров. Обзор технологий. Базовый уровень (версия 2) (DEVOPSF) – Программа курса

Программа курса

Модуль 1: Docker (8 часов)

Лекция по Docker (4 часа)

  • Введение в Docker и его роль в DevOps
  • Установка Docker и его компонентов
  • Работа с Docker-контейнерами
  • Запуск приложений в Docker-контейнерах

Практическое занятие: Установка Docker и запуск контейнеров (4 часа)

  • Установка Docker и управление контейнерами из под непривилегированного пользователя
  • Работа с контейнерами. Создание, запуск и останов контейнеров.
  • Создание образов контейнеров с помощью docker commit и Dockerfile. Отправка образа контейнера в реестр
  • Создание и управление несколькими контейнерами с помощью компоновщика docker-compose

Модуль 2. Kubernetes (8 часов)

Лекция по Kubernetes (4 часа)

  • Введение в Kubernetes и его роль в оркестрации контейнеров
  • Установка Kubernetes и его компонентов
  • Понятие подов, служб и воспроизводимых контейнеров

Практическое занятие: Развертывание приложений в Kubernetes. Установка, настройка доступа, развертывание приложений (4 часа)

  • Подготовка серверов для развертывания Kubernetes кластера. Установка кластера Kubernetes с помощью kubeadm.
  • Управление подами и службами в Kubernetes.
  • Масштабирование и обновление приложений в Kubernetes
  • Управление доступом в Kubernetes и безопасность.
  • Установка и настройка приложения на примере Kubernetes Dashboard

Модуль 3: Ansible (8 часов)

Лекция по Ansible (4 часа)

  • Ansible и его роль в автоматизации конфигурации и развертывания
  • Установка Ansible, знакомство с модулями и сценариями
  • Создание и управление инвентаризацией и плейбуками Ansible

Практическое занятие: Автоматизация администрирования Linux и Kubernetes с помощью Ansible (4 часа)

  • Установка и настройка Ansible
  • Написание и запуск Ansible сценариев
  • Автоматизация развертывания приложений с помощью Ansible

Модуль 4: Развертывание инфраструктуры приложений на примере IaС решения Terraform (8 часов)

Лекция по Terraform (4 часа)

  • Введение в Terraform и его роль в инфраструктурном кодировании
  • Установка и настройка Terraform
  • Создание, изменение и удаление инфраструктуры через Terraform

Практическое занятие: Использование инструмента Terraform (4 часа)

  • Создание и управление инфраструктурой с помощью Terraform
  • Использование переменных и модулей в Terraform
  • Управление ресурсными записями Kubernetes с помощью Terraform
  • Развертывание виртуальной машины с помощью Terraform

Модуль 5: Обзор инструментов и решений DevOps. Пример реализации CI/CD конвейера. (8 часов)

Лекция по инструментам DevOps. (4 часа)

  • Системы контроля версий. Платформы и сервисы. Модель ветвления Gitflow.
  • CI/CD инструменты
  • Методология GitOps и ArgoCD как одного из инструментов её реализации
  • Обзор инструментов развертывания инфраструктуры
  • Обзор дополнительных инструментов Kubernetes: Развертывание, Мониторинг и автоматизация задач в Kubernetes.
  • Обзор CI/CD решения на примере Tekton

Практическое занятие: Знакомство с CI/CD на примере minikube, Gitea, Tekton. GitOps с помощью ArgoCD (4 часа)

  • Запуск тестового Kubernetes кластера на примере minikube.
  • Включение поддержки постоянного хранилища
  • Установка и использование внутреннего репозитория исходных кодов приложений с помощью Gitea
  • Создание образов контейнеров внутри Kubernetes при помощи Tekton
  • Знакомство с ресурсами Tekton. Таски и пайплайны
  • Сборка приложения, создание и отправка образа контейнера в реестр образов с помощью Tekton
  • Развертывание приложения по модели GitOps на примере ArgoCD