Kubernetes
Авторский курс




Подробнее о нашем новом курсе

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

+ Знакомство с популярной системой оркестрации контейнеризированных приложений

+ Участники получат практические навыки использования Kubernetes с концептами DevOps - Continuous Integration, benchmark тестирование, мониторинг и пр.

+ Прагматичный подход который показывает как использовать Kubernetes в процессе разработки


Цель курса:

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


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

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


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

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

+ Понимать принцип работы основных элементов Kubernetes: Pod/Deployment/Stateful Set и тп.

+ Build’ить ПО в контейнеры

+ Деплоить и дебажить приложения запущенные в контейнерах внутри Kubernetes

+ Декларировать и добавлять конфигурацию через Kubernetes

+ Добавлять фидбек в код (тесты и другое)

+ Мониторить и измерять сервисы используя интеграционное тестирование 


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

+ Базовые знания операционной системы Linux

+ Умение пользоваться Git

Как проходят занятия?

Занятия проводятся дистанционно, с преподавателями.


Живое общение с преподавателями, инновационная Online платформа,

а также профессионально подобранный материал,

позволяют эффективно и максимально комфортно погрузиться в предмет,

сохраняя высокий уровень интереса и мотивации на протяжении всего обучения.


Занятия с преподавателями в небольших группах,
с упором на практику
Работа с учебными материалами, исследовательские работы,
самостоятельные работы
Индивидуальная работа с преподавателем, для лучшего закрепления материала

Продолжительность курса: 30 ак. часов.     Набор на данный курс уже завершен

Online, 2 раза в неделю, с 20.00 - 22.00                              

 

 

Стоимость курса:  90000р.

 

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

 

Занятие 1 - Вводное

- установка Kubernetes – инсталляция Kubectl, Minikube, Docker и запуск Minikube для валидации инсталляции. В этом блоке мы рассматриваем введение в концепты Kubernetes – Nodes, Pods, Containers, ReplicaSets, Deployments.

ДЗ и практика: Работа с Minikube на Вашей локальной Linux-машине, либо на облачном хостинге

 

Занятие 2

- упаковка приложений для запуска в Kubernetes. Посмотрим как упаковать приложение в контейнеры  для использования в k8s с примерами на Python и Node.js

ДЗ и практика: работа с Github репозиторием, сбор учебного контейнера и push образа в реестр контейнеров.

 

Занятие 3

- взаимодействие с кодом в Kubernetes. Разберем как запускать контейнеры в Kubernetes, как связаться с ними, и познакомимся с фундаментом концептов Services, Labels и Selectors.

ДЗ и практика: работа с метками , сервисами и селекторами.

 

Занятие 4

- декларативная инфраструктура. Поместим приложение в декларативную структуру и посмотрим как развить его для утилизации концептов Kubernetes ConfigMaps, Annotations и Secrets.

ДЗ и практика: создание ConfigMaps, Annotations и Secrets для проекта.

 

Занятие 5

- pods и containers, жизненный цикл. Научимся вызвать hooks из приложений для того, чтобы разобраться, как Kubernetes запускает код, и посмотрим как закончить работу приложения изящно.

ДЗ и практика: работа с SIGTERM на примере Python, а также знакомство c liveness и readiness пробами.

 

Занятие 6, 7

- background Processing в Kubernetes. Запустим batch processing концепты – Job и CronJob и разберем как Kubernetes обеспечивает постоянство с Persistent Volumes, Persistent Volume Claims и Stateful Sets – наборами с сохранением состояния

ДЗ и практика: настройка Job и CronJob, создание Persistent Volume’ов и Stateful Sets

 

Занятие 8, 9

- мониторинг и метрики. Будем мониторить Kubernetes, используя Prometheus и Grafana. Поймаем и отобразим метрики на Dashboards о Kubernetes в общем а также о приложениях, запущенных в нем.

Познакомимся с пакетным менеджером Helm 3

ДЗ и практика: создаем и настраиваем наш Prometheus, используя Helm 3, получаем и работаем с метриками в Grafana

 

Занятие 10, 11

- логирование и трейсы. Посмотрим как собирать логи с Kubernetes и ElasticSearch, FluentD и Kibana и как можно настроить распределенное логирование с Jaeger.

ДЗ и практика: собираем EFK, настраиваем Jaeger

 

Занятие 12, 13

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

ДЗ и практика: создаем интеграционные тесты для наших примеров и настраиваем pipelin’ы в TravisCI, Jenkins и GithubActions

 

Занятие 14

- траблшутинг типичных проблем и следующие шаги. Основные боли и как их решить плюс несколько проектов обзорно внутри экосистемы которые могут быть интересны разработчикам и для процесса разработки. Практика использование Kubernetes в облачных провайдерах и обзор Kubernetes IDE (K9S) для работы и решения типичных проблем в наших примерах.

 

 

Записаться на вводное занятие