Тема 1: Введение
Зачем: понять, как устроен курс
- Описание формата обучения в потоке
- Цели обучения
- Как эффективно учиться онлайн
Тема 2: Знакомство с Kubernetes, основные компоненты
Зачем: чтобы верхнеуровнево понять, что такое Kubernetes, а также с какими абстракциями Kubernetes придется 100% работать в будущем и как эти абстракции работают.
- Введение в технологию k8s. Описание, применение, концепции
- Pod, ReplicaSet, Deployment, Service, Ingress, PV, PVC, ConfigMap, Secret
- Практическая работа
Тема 3: Устройство кластера, основные компоненты, отказоустойчивость, сеть k8s
Зачем: чтобы инженер понимал, как работает Kubernetes и из каких компонентов он состоит. Это позволит более продуктивно проводить траблшутинг и не работать с Kubernetes, как с черным ящиком.
- Устройство кластера, основные компоненты, отказоустойчивость
- Сеть k8s
Тема 4: Kubespray, тюнинг и настройка кластера Kubernetes
Зачем: чтобы знать, как можно установить Kubernetes у себя.
- Kubespray, настройка и тюнинг кластера Kubernetes
- Практическая работа
Тема 5: Продвинутые абстракции Kubernetes
Зачем: чтобы с помощью дополнительных абстракций расширить спектр своих возможностей в рамках работы с Kubernetes.
- DaemonSet, StatefulSet, RBAC, Job, CronJob, Pod Scheduling, InitContainer
- Практическая работа
Тема 6: DNS в кластере. Публикация сервисов и приложений
Зачем: чтобы понимать, как на уровне сети и сетевых абстракций работает Kubernetes. Это позволит использовать правильные абстракции для настройки внутреннего и внешнего сетевого взаимодействия приложений, запущенных в Kubernetes.
- Устройство DNS в Kubernetes
- Обзор методов публикации сервисов: NodePort vs LoadBalancer vs Ingress
- Ingress controller (Nginx): балансируем входящий трафик
- Практическая работа
Тема 7: Введение в Helm
Зачем: чтобы научиться темплейтировать свое приложение. Этот подход позволяет гибко работать с манифестами приложения в Kubernetes, организовать правильную разработку и деплой.
- Работа с Helm
- Состав чарта
- Написание собственных чартов
- Практическая работа
Тема 8: Подключение системы хранения данных на примере Ceph
Зачем: чтобы на примере Ceph понять, как подключить СХД в кластер Kubernetes для дальнейшего использования со stateful-приложениями.
- Установка СХД Ceph
- Подключение RBD и CephFS томов с помощью CSI drivers
- Практическая работа
Тема 9: Установка cert-manager
Зачем: чтобы понять, как автоматизированно подключить и продлять TLS-сертификат вашему веб-приложению.
- Сert-manager: автоматически получаем сертификаты SSL/TLS
- Практическая работа
Тема 10: CI/CD в Kubernetes
Зачем: чтобы правильно настроить деплой своего приложения в кластер Kubernetes.
- Настройка CI/CD приложения в Кубернетес
- Практическая работа