Фоновый баннер

Kubernetes для DevOps

Подробнее о курсе

Краткое описание курса 

  • Разработка и запуск вашего ПО используя контейнеры внутри Kubernetes среды
  • Участники получат практические навыки использования Kubernetes с концептами DevOps — continuous integration, бенчмарк тестирование, мониторинг  и так далее
  • Прагматичный подход который показывает как использовать Kubernetes в процессе разработки

Цель курса

Практическое освоение навыков работы в проектах где активно используется Kubernetes

Целевая аудитория курса

Если вы full-stak или backend разработчик который интересуется, любопытствует или которого попросили тестировать и запускать код который вы создаете, вы можете использовать Kubernetes чтобы сделать этот процесс проще и прозрачнее независимо от того куда вы deploy’итесь. Ну, а если вы ищите примеры в NodeJS и Python — это просто незаменимый курс для вас!

Получаемые знания и навыки

По окончании курса слушатели научатся

  • Освоят базовые элементы Kubernetes — Pod/Deployment/Stateful Set и тп.
  • Build’ить ваше по в контейнеры
  • Деплоить и дебажить приложения запущенные в контейнерах внутри Kubernetes
  • Декларировать и добавлять конфигурацию через Kubernetes
  • Добавлять фидбек в ваш код (тесты и другое)
  • Мониторить и измерять ваши сервисы используя интеграционное тестирование  

Необходимая предварительная подготовка

  • начальные знания операционной системы  Linux
  • умение пользоваться git

Краткое содержание курса
М
одуль 1 — Установка Kubernetes для разработки

  • инсталляция kubectl, minikube, docker
  • запуск minikube для валидации инсталляции
  • введение в концепты Kubernetes – Nodes, Pods, Containers, ReplicaSets, Deployments

Модуль 2 — Упаковка кода для запуска в Kubernetes

  • упаковка кода в контейнеры для использования в k8s с примерами python и node.js

Модуль 3 — Взаимодействие с кодом в Kubernetes

  • запуск контейнеров в Kubernetes
  • доступ к контейнерам в Kubernetes
  • знакомство с фундаментом концептов Services, Labels и Selectors

Модуль 4 — Декларативная инфраструктура

  • размещение app в декларативной структуре
  • утилизация концептов Kubernetes ConfigMaps, Annotations и Секреты

Модуль 5 — Pod и Контейнер циклы жизни

  • Вызов хуки из приложения для запуска кода
  • корректная остановка запуска кода

Модуль 6 — Background Processing в Kubernetes

  • запуск batch processing, концепты – Job и CronJob
  • обеспечение регулярной работы с Persistent Volumes, Persistent Volume Claims и Stateful Sets – наборы с сохранением состояния

Модуль 7 — Мониторинг и Метрики

  • мониторинг в Kubernetes
  • использование Prometheus и Grafana для отслеживания и отображения метрики
  • простые дэшборды о Kubernetes в общем и в приложении

Модуль 8 — Логирование и трейсы

  • сбор логи в Kubernetes и ElasticSearch, FluentD и Кибана
  • настройка распределенного логирования с Jaeger

Модуль 9 — Интеграционное тестирование

  • стратегии тестирования, которые можно использовать в k8s
  • использование Kubernetes в интеграционном и e2e тестах

Модуль 10 — Траблшутинг типичных проблем

  • основные проблемы и их решение
  • практические примеры использования Kubernetes в реальных проектах, обзорно внутри экосистемы, которые могут быть интересны разработчиками и для процесса разработки
  • использование Kubernetes в облачных провайдерах и обзор Kubernetes IDE для работы

Отзывы по курсу