Как выучить Kubernetes и не сойти с ума от бесконечных конфигов

12 июн 2026
1,408
196
7
5 месяцев

Помните свое первое знакомство с Kubernetes? Скорее всего, это был прыжок в холодную воду: десятки абстракций, закрученный YAML и попытки понять, почему один под «красный», а другой «зеленый». Обычно для практики приходится поднимать Minikube или тратить деньги в облаке, но есть способ проще и веселее.

Наткнулся на проект k8sgames — это полноценный симулятор кластера прямо в браузере. Тут всё выглядит как олдскульная 3D-стратегия, где вы расставляете деплойменты вручную, а потом пытаетесь спасти систему от аварий.

K8s Games — 3D Kubernetes cluster simulation in the browser

Что за проект и зачем в него играть

Автор проекта, rohitg00, решил перенести опыт SRE-инженера в формат игры. Это не просто интерактивный учебник, а песочница на движке Three.js. Вы управляете ресурсами кластера в трехмерном пространстве, видите связи между сервисами и подами, и — самое главное — можете ломать систему без последствий для продакшена.

Для новичков это идеальный способ визуализировать архитектуру. Для опытных ребят — шанс проверить свои рефлексы в режиме «хаоса», когда инциденты сыплются один за другим.

Реклама

Четыре режима погружения в инфраструктуру

В игре есть несколько сценариев, которые покрывают разные задачи.

  1. Кампания. 20 уровней, которые последовательно проводят через основы: от запуска первого пода до настройки хранилищ и сетевых политик. Хорошо заменяет скучное чтение документации на старте.
  2. Chaos. Режим для тех, кто любит погорячее. Инциденты возникают случайно и нарастают как снежный ком. Ваша задача — продержаться как можно дольше, пока кластер не превратится в тыкву.
  3. Песочница. Свободное строительство. Здесь можно собрать любую схему. Интересная деталь: в этом режиме есть Architecture Advisor. Это встроенный алгоритм, который оценивает ваш дизайн по 10 критериям, включая отказоустойчивость и безопасность, и выставляет оценку от 0 до 100.
  4. Испытания. Десять сценариев на время. Нужно быстро развернуть приложение или починить упавший сервис, пока тикает таймер.

Что внутри: это полноценный kubectl

Меня зацепило то, что это не просто «кликер». Чтобы эффективно играть, придется использовать терминал. По нажатию на / открывается командная строка, которая понимает реальные команды kubectl.

Можно написать get pods, describe deployment nginx или scale deployment nginx --replicas=3. Есть даже автодополнение по Tab. При этом все изменения мгновенно отражаются в 3D-мире: увеличили количество реплик — и видите, как в кластере «вырастают» новые кубики подов.

В симуляторе реализовано около 30 типов инцидентов. Вам придется лечить CrashLoopBackOff, разбираться, почему ImagePullBackOff мешает запуску, и что делать, когда узел внезапно переходит в NotReady. Все как в жизни: смотрите логи, изучаете describe и вносите правки в YAML.

Визуализация архитектуры k8sgames/draw

Отдельная крутая фича проекта вынесена в подраздел /draw. Это инструмент для рисования архитектурных диаграмм в 3D. Если вам надоели плоские схемы в Miro или Lucidchart, можно заглянуть сюда.

Вы набрасываете ресурсы (их тут 25 видов), проводите связи, а инструмент сам выравнивает их по слоям: узлы внизу, рабочие нагрузки посередине, нетворкинг и сторидж по краям. Готовую красоту можно экспортировать в PNG для презентации или в валидный YAML, чтобы потом использовать в реальном кластере.

Техническая сторона и запуск

Проект написан на чистом JavaScript (ES6) с использованием Three.js и Tailwind CSS. Что приятно — никакой магии с бандлерами и сборкой. Если хотите запустить это у себя локально, достаточно двух команд:

git clone https://github.com/rohitg00/k8sgames.git
cd k8sgames
python3 -m http.server 8080

После этого симулятор доступен по адресу localhost:8080. Весь код открыт под лицензией Apache-2.0, так что можно дописывать свои сценарии или изучать, как реализована логика RBAC и симуляция сети.

Итог: стоит ли тратить время

Проект точно пригодится тем, кто готовится к CKA (Certified Kubernetes Administrator) — набивать руку на командах в таком формате гораздо приятнее, чем в сухой консоли. Также это отличное подспорье для тимлидов, которым нужно быстро объяснить новеньким, как устроена связь между Service и Deployment.

Конечно, это симуляция, и она не заменит опыт работы с реальным высоконагруженным железом. Но как "тренажер для полетов" перед выходом в открытый космос продкшена — штука незаменимая. Сходите на k8sgames.com, попробуйте починить пару павших подов, это затягивает.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.