В апреле ко мне постучались организаторы Слёрм — курсов по Kubernetes — потестировать и рассказать своё впечатление:
Дмитрий, Слёрм — это трехдневный интенсив по Kubernetes, плотное учебное мероприятие. Вряд ли вы сможете о нем написать, если просто посидите два часа на первой лекции. Вы готовы полноценно участвовать?
Перед слёрмом надо было пройти подготовительные online-курсы по ansible, docker и ceph.
Затем в репах взять код и точные инструкции, по которым уже на лекциях проходить каждую командную строчку за строчкой с ведущими.
— Подтверждаю, что готов полноценно учавствовать в обоих курсах.
И после этого обеспечена напряженная работа на 6 дней (базовый Слёрм и МегаСлёрм) в аудитории, битком набитой сисадминами.
Фонтаны
В чём вообще сложность разработки сервисов? Вот, например, бизнес просит провести рекламную рассылку пушей! Казалось бы, есть фулстек разработчик с сайтом и мобильщики с мобильным приложением. Задача на 15 минут. Скажем бизнесу, что за день управимся!
И вот тут выясняется, что пушей ещё никогда не посылали. Заранее подключение чужой или self-hosted платформы рассылки пушей не производили. А это уже не 15 минут и не час, хорошо, если за неделю подключат. Началась магия и волшебство. Всё непонятно, странно и непрогнозируемо.
Разработка стала полностью непрогнозируемой только по одной причине: не учли, что кроме слоя бизнес-задач есть еще инфраструктурный слой.
Если слой бизнес-задач — это фонтан, извергающий массу мелких задач, проверку гипотез и визуальные свистелки-перделки, то инфраструктура — это его трубы. Здесь нужен горизонт планирования минимум на полгода вперёд.
Трубы для фонтанов
Из-за сложности и требования очень внимательного относиться к мелочам занимаются разработкой «труб» специально обученные люди: Devops-ы, выросшие из самых опытных админов и разработчиков. Их работа планомерна и строго последовательна. Они подобны строителям мостов — любая ошибка приводит к тому, что легкая бизнес-задача на 15 минут вдруг превращается в перепланирование инфраструктуры на много дней и денег.
Слёрм на данный момент — единственный в России курс (из известных мне), который обучает построению инфраструктуры стандартизованным образом, позволяющим хоть как-то нивелировать ошибки планирования. Я был на курсах по Kubernetes, а в сентябре собираюсь на новый курс по DevOps.
Слёрм придумала компания Southbridge, аутсорсер администрирования, построивший десятки фонтанов самой разной формы. Southbridge — сертифицированный KTP и KCSP (CNCF, Linux Foundation Member).
Чему конкретно учат на курсах по Kubernetes?
Как организовать всё, что сделали разработчики и чтобы оно не падало?
- Работа с Kubespray
- Установка дополнительных компонентов
- Тестирование и траблшутинг кластера
Как сделать авторизацию пользователей (разработчиков) в кластер для работы с самим кластером?
- LDAP (Nginx + Python)
- OIDC (Dex + Gangway)
Как на сетевом уровне защититься от хакеров?
- Введение в CNI
- Network Security Policy
И вообще безопасность!
- PodSecurityPolicy
- PodDisruptionBudget
Ничего не скрываем, — подробно рассказываем, что под капотом
- Строение контроллера
- Операторы и CRD
Stateful приложения в кластере
- Запуск кластера БД на примере PostgreSQL
- Запуск кластера RabbitMQ
Как не хранить многочисленные пароли и конфиги в открытом виде
- Управления секретами в Kubernetes
- Vault
Горизонтальное масштабирование по щелчку пальцев
- Теория
- Практика
Бекапы
- Бэкап и восстановление кластера с применением Heptio Velero (бывш. Ark) и etcd
Лёгкий выкат в тест-, стейдж- и продакшн
- Lint
- Инструменты темплэйтирования и деплоя
- Стратегии деплоя
Есть ещё курс на стероидах, там вообще всё хардкорно. Тем не менее, после базового курса уже можно строить свой фонтан.
После Слёрма у участников остались артефакты — видеозапись всех дней, подробные инструкции по каждому пункту вместе с точными рецептами, команды которых можно тупо копипастить, чтобы собрать или решение для бекапа или решение для тестовых сред или ещё что-нибудь.
То есть вот так всё просто. Да. Пришёл на несколько дней, погрузился в тему, получил точные рецепты и вернулся на рабочее место строить инфраструктуру проекта — просто, правильно и, самое важное, прогнозируемо по срокам. Магия и колдовство кончились, осталось просто работать.
Что в итоге?
В конце гонки на несколько дней приходит ощущение того, что реальные серьёзные проекты строят чуть ли не девопсы сами. И удивительно то, что весь пройденный материал понятен, я его воспроизвожу уже на собственных серваках каждый день.
Благо вся аудитория переместилась в чатик телеги, где даже спустя много недель есть жизнь.
Что дальше?
Организаторы осенью готовят Слёрм Devops, я уже готовлюсь. Об этом скоро напишу в своём техдирском канале в телеге @ctorecords.
Автор: Дмитрий В. Симонов