Metaclass
Деплой приложений
в Kubernetes
Научитесь деплоить приложения любой сложности в Kubernetes
и настраивать для этого CI/CD
Объем программы 40 часов
Курс длится 7 недель.
Онлайн-лекции и доступ к платформе
Лекции каждого модуля доступны в записи на платформе
Опционально: личный кластер Kubernetes
ДЗ можно выполнять на нашем тренажере
Cтажировка
Лучшие студенты получают возможность попасть в команду KTS
Kubernetes за последние годы стал де-факто стандартом оркестрации и запуска приложений. Поэтому умение управлять кластерами Kubernetes является особенно важным в работе любого современного DevOps инженера. В то же время порог входа может казаться достаточно высоким из-за большого числа компонентов и связей между ними внутри Kubernetes. В курсе мы рассмотрим самые важные концепции, необходимые для управления кластерами любой сложности и научим применять эти знания на практике.

Что будем делать на курсе:
  • Рассмотрим механизмы виртуализации и контейнеризации в современном Linux
  • Обсудим, что из себя представляет Docker и какие есть альтернативы
  • Познакомимся с системами оркестрации контейнеров, поймем место Kubernetes
  • Задеплоим свое первое приложение в Kubernetes
  • Разберем основные ресурсы в Kubernetes, необходимые каждый день
  • Научимся понимать и инспектировать любые ресурсы
  • Познакомимся с пакетным менеджером Helm
  • Разберем тонкости деплоя различных типов приложений: фронтенд, бэкенд на Go, бэкенд на Python
  • Научимся деплоить приложения с помощью Gitlab ci/cd
  • Рассмотрим, как создать managed кластер в облаке

Игорь Латкин
DevOps архитектор, автор курса

Для кого этот курс?

  • Разработчик
    Курс поможет понять, как работает CI/CD, как использовать Kubernetes и самостоятельно деплоить приложения
  • DevOps-инженер
    DevOps-инженеры разберут теорию и попробуют на практике одну из самых хайповых технологий в DevOps
Программа
  • Введение в контейнеры
    1. Поймем разницу виртуальных машин и контейнеров
    2. Познакомимся с Docker
    3. Научимся писать Dockerfile для разных ситуаций
    4. Разберем полностью процесс упаковки кода приложения в docker-образ с публикацией в docker registry
    1
  • Kubernetes. Введение
    1. Рассмотрим системы оркестрации контейнеров и поймем, почему Kubernetes такой особенный (или нет?)
    2. Поднимем свой первый кластер локально с помощью minikube и kind (Kubernetes-in-Docker)
    3. Научимся пользоваться kubectl для просмотра и редактирования ресурсов
    4. Задеплоим настоящее приложение, состоящее из двух компонентов - API и фронтенда
    2
  • Сетевые возможности в Kubernetes
    1. Рассмотрим тонкости работы сетей в Kubernetes и как приложения могут общаться между собой
    2. Разберем предназначение Service
    3. Научимся делать приложение доступным в интернете
    4. Начнем работать с кластером, поднятом в облаке
    5. Познакомимся с понятием Ingress и Ingress Controller для балансировки трафика внутри кластера
    6. Научимся в автоматическом режиме выписывать SSL/TLS-сертификаты с помощью cert-manager
    3
  • Деплой приложений
    1. Разберем популярные методы деплоя приложений в Kubernetes
    2. Рассмотрим пакетный менеджер Helm, упрощающий деплой приложений
    3. Завернем несколько типов приложений в Helm-пакеты с последующим деплоем в кластер
    4. Рассмотрим процесс апгрейда и даунгрейда версии приложения и подводные камни в этом процессе
    4
  • CI/CD приложения
    1. Рассмотрим, из чего состоит процесс CI/CD приложения
    2. Рассмотрим весь процесс доведения приложения от кода до production-кластера Kubernetes
    3. Научимся описывать CI/CD конфигурацию в Gitlab
    5
  • Хранение данных в Kubernetes
    1. Рассмотрим способы хранения конфигурации приложений ConfigMap и Secret
    2. Научимся доставать эти данные из приложения
    3. Узнаем как пользоваться Volume в кластере и рассмотрим особенности волюмов в облаке и self-hosted
    4. Научимся деплоить stateful приложения, такие как базы данных (и не только). Разберем, чем StatefulSet отличается от Deployment.
    6
  • Готовимся к production
    1. Разберем отличия облачных и self-hosted кластеров
    2. Посмотрим, какие системные компоненты встречаются в кластерах
    3. Рассмотрим liveness, readiness, startup пробы подов, init-контейнеры
    4. Поговорим о процессе шедулинга — как на него влиять и помогать ему
    5. Обсудим на начальном уровне темы мониторинга и логирования
    7
Курс разработан компанией KTS
Мы используем Kubernetes для развертки своих продуктов и сервисов наших клиентов.

В отделе медиапроектов мы запускаем несколько проектов в месяц. Благодаря kubernetes, мы легко масштабируем продакшн и эффективно разрабатываем приложения.

В этом курсе мы рассказываем о лучших практиках деплоя сервисов в Kubernetes, применяемых в индустрии.

Лучших студентов после прохождения курса приглашаем на собеседование для стажировки в нашей команде.
Мы знаем, о чем говорим
Как Kubernetes используется в KTS?
9
Кластеров Kubernetes
> 40
Активных проектов
в Kubernetes
> 700
Деплойментов в dev-кластере
> 350
Запускаемых CI/CD джоб ежедневно
Доступ к курсу
Курс «Деплой приложений в Kubernetes»
трек «Базовый» — открыт для всех
⁃ Записанные лекции-вебинары
⁃ Доступ к материалам на платформе и в моб. приложении
⁃ Чат курса, где можно общаться с однопоточниками
⁃ Текст домашних заданий без тренажёра
Оставляя заявку, я принимаю условия пользовательского соглашения

Пока что платный трек недоступен

Если вы еще сомневаетесь
Наши статьи про Kubernetes
Первое знакомство с Kubernetes
В этой статье мы разобрали, как запустить HAProxy Kubernetes Ingress Controller снаружи Kubernetes-кластера.
В статье мы рассмотрели различные оркестраторы и объяснили, почему Kubernetes — лучший выбор.
В статье ы рассмотрели несколько вариантов очистки кластера Kubernetes
Рассказываем про контроллер, который создали для копирования Kubernetes-секретов между неймспейсами кластера
Отзывы
Мялкин Роман
Выпускник 1-го потока
Курс понравился, все полезно и по теме. Сложные домашние задания, что в целом хорошо и позволяет изучить kubernetes более глубоко. 
Борисов Михаил
Выпускник 1-го потока
Курс в целом понравился, очень много новой и полезной информации. Хорошо подобранные домашние задания после каждого модуля. Бывали проблемы с инфраструктурой (кластером), но решались максимум за 2-3 дня.
Чего не хватило: помимо практики, хотелось бы еще видеть теор вопросы после каждого модуля для закрепления материала. В конце всего курса финальные вопросы на понимание всего материала.
Наша школа в цифрах
С 2018г
Мы ведем курсы
> 1200
Студентов в нашем комьюнити
7
Активных курсов прямо сейчас
> 20
Выпускников работают в KTS
Частые вопросы
  • В каком формате будут проходить занятия?
    Все лекции доступны сразу, вы можете проходить их в любом темпе.

    После каждой лекции вам нужно будет сделать ДЗ. Вы можете делать его на самостоятельно поднятой инфраструктуре, а можете на нашем кластере при оплате тарифа с автопроверками. Мы поднимем для вас личный Kubernetes-кластер, в котором вам нужно будет разворачивать приложения. Задания будут проверяться автоматически
  • Если у меня нет опыта коммерческой разработки, только самообучение, могу ли я попасть на курс?
    Да, если вы ощущаете, что программа вам по силам и будет полезна — welcome :)
  • У меня нет возможности прямо сейчас оплатить курс, я могу купить в рассрочку?
    Да, рассрочка возможна через Prodamus
  • Что будет за невыполненную в срок домашнюю работу?
    Студенты, которые не успевают выполнять домашнее задание в рамках дедлайнов, не выбывают из курса.
Вступай в сообщество выпускников и студентов школы.
Общайся с другими разработчиками и узнавай новости о новых потоках курсов быстрее всех!