Диагностика и устранение неисправностей (траблшутинг) кластера в рабочей среде. Прокачайте навык выявления и устранения неисправностей без риска для реальной среды эксплуатации.
практикум
создано осенью 2025
Инцидент-симулятор в системе Kubernetes
от 3000 ₽
Обучение на реальных инцидентах
Удобный формат
Практические задания с решением от эксперта в конце и возможностью проверить себя
Учебные стенды
Предоставляем полную инфраструктуру для выполнения практических задач. На этих стендах смоделированы реальные инциденты— протухшие сертификаты, сбои компонента etcd, ошибки утилиты kubelet, неравномерное распределение подов и другие сбои кластеров
Реалистичные кейсы
Отрабатываете именно те сценарии, которые могут случиться в реальных проектах. Вы уже будете готовы к любому сбою в боевом кластере, поскольку научились с ним справляться заранее
Место для риска
Безопасность обучения: вы тренируетесь на копиях продакшена, без риска вызвать простой сервисов или потерю данных
Диагностике и устранении инцидентов
Анализе логов и метрик
Поиске причин проблем в сертификатах, сетевых политиках, утилите kubelet, компоненте etcd и пр.
Настройке надежного кластера (обновления, ротация сертификатов, межсервисное взаимодействие c инструментом Istio и др.)
Боевая практика в:
Виталий Лихачев
Инженер по надёжности сервисов (SRE) в нидерландской компании в туристической отрасли (TravelTech), ранее — старший инженер-разработчик в «Авито»
  • Пишет сложные проекты с нетривиальной бизнес-логикой на языках программирования php, python, golang и немного на java и nodejs
  • Реализовывал динамические интерфейсы с использованием сред React и Vue. js
  • Строит инфраструктуру под проекты в публичных облаках
  • 9+ лет в коммерческой разработке
  • Работал в стартапах, на аутсорс и в продуктовых командах
  • Разрабатывал интерфейсную часть (фронтенд), настраивал CI/CD и облачную платформу AWS, оптимизировал серверную часть (бэкэнд) и проводил технические собеседования.
Автор задач
«Траблшутеры заставляют копать внутрь k8s, это помогает быстро понять „как всё устроено под капотом“. Лучший способ научиться: сломать кластер и починить кластер, поэтому чините всё, что можно починить! В задачах вы будете разбирать реальные поломки k8s»
Требования к участникам:
  • Опыт работы в Kubernetes — можно получить на курсе Kubernetes: базовый уровень
  • Базовые знания по операционной системе Linux, сетям и платформе Docker (или другой системе контейнеризации)
Инженеры по надёжности систем (SRE)
Разработчики
Инженеры DevOps и системные администраторы
Кому подойдёт и что надо уметь
6 инцидентов в Kubernetes:
цель задания
Научиться выявлять и устранять проблемы (дебажить) с утилитой kubelet
суть проблемы
Кластер работает нестабильно. Утилита Kubectl может выдавать ошибки либо отваливаться по таймауту
Нестабильный кластер
Вы научитесь
  • Работать с упавшим компонентом control-plane, когда утилита kubectl недоступна
  • Использовать инструмент crictl для просмотра контейнеров и диагностики
  • Восстанавливать работоспособность кластера без пересоздания
  • Анализировать логи компонентов (APIi-server, etcd, controller-manager)
Какую профессиональную задачу решает troubleshooter:
Восстановление кластера в Kubernetes. По данным dsn2024uq.github.io 33% инцидентов в K8s связаны с misconfigurations.
Падение control-plane — это полная остановка продукта и потеря управления сервисами. Control-plane Kubernetes — это «мозг» кластера. Если он работает нестабильно (например, падает API-server), инженеры теряют управление всеми приложениями. Продукт полностью останавливается нельзя обслуживать заказы, принимать платежи, выпускать новые версии.
цель задания
Научиться дебажить проблемы с kubelet
суть проблемы
На какой-то ноде не создаются поды
Нестабильная утилита kubelet
Вы научитесь
  • Понимать работу утилиты kubelet и ее влияние на запуск подов
  • Диагностировать проблемы на уровне ноды
  • Настраивать утилиту kubelet и применять новые конфигурации
  • Проверять распределение подов по узлам и восстанавливать баланс
Какую профессиональную задачу решает troubleshooter:
Регулярная диагностика узлов. По данным cloudraft. io, Node-NotReady вызывает сбои в проде.
Нода с «мёртвым» kubelet приводит к невыполненным запросам и падению доступности. Каждая нода кластера обрабатывает часть бизнес-нагрузки: хранит поды платежных сервисов, каталогов товаров, систем уведомлений. Если kubelet на ноде работает неправильно, новые поды не запускаются, часть пользователей теряет доступ к сервису. Это прямые убытки и потеря доверия клиентов.
цель задания
Научиться настраивать планировщик Kubernetes (K8s scheduler) для специальных случаев, когда стандартные настройки планировщика будут распределять рабочие поды не самым подходящим образом
суть проблемы
Поды распределяются по нодам не самым подходящим образом
Неравномерное распределение подов
Вы научитесь
  • Работать с компонентном kube-scheduler и его конфигурацией
  • Настраивать правила размещения: affinity/anti-affinity, taints и tolerations
  • Управлять распределением подов в кластере
  • Оптимизировать использование ресурсов и повышать отказоустойчивость
Какую профессиональную задачу решает troubleshooter:
Scheduler — мощный инструмент, но им мало кто качественно управляет. В этом задании вы можете с ним поработать.
Неправильный scheduling — это значит, что одни узлы перегружены, другие простаивают. А это всегда история про деньги. При высокой нагрузке (например, в «чёрную пятницу» для e-commerce) поды должны равномерно распределяться по нодам. Если scheduler этого не делает, часть узлов перегружается, сервис замедляется или падает. Бизнес теряет заказы именно в пиковый момент, когда доход должен быть максимальным.
цель задания
Проверить понимание работы классов приоритетов (PriorityClass) и квот ресурсов (ResourceQuota), а также использования контекста безопасности (SecurityContext).
суть проблемы
Не работает планирование запуска подов с критическим приоритетом (critical‑priority), не стартуют поды с заданным временем запуска (set‑time)
Не работает планирование запуска подов
Вы научитесь
  • Работать с классом приоритетов для подов (PriorityClass) и механизмом вытеснения (preemption)
  • Настраивать квоты ресурсов (ResourceQuota) для ограничения ресурсов
  • Применять интерфейс SecurityContext без избыточных привилегий
  • Гарантировать запуск критичных сервисов даже в условиях дефицита ресурсов
Какую профессиональную задачу решает troubleshooter:
Помогает реализовать security, выстроить SLA и бизнес-приоритеты. По данным Squadcast, SRE-метрики показывают рост MTTR и burnout без правильного приоритета по данным платформы.
Если критичные поды не запускаются, то падают ключевые бизнес-функции:
  • платёжный сервис — без него теряется прибыль;
  • аутентификация — пользователи не могут войти в продукт;
  • API Gateway — без него недоступны все остальные сервисы.
Если такие поды не стартуют из-за лимитов ресурсов или неправильных настроек, бизнес теряет ключевые функции.
цель задания
Научиться работать с сетевыми политиками (NetworkPolicy)
суть проблемы
Вам предоставлен кластер с четырьмя рабочими нодами, распределёнными по разным зонам доступности. Для этого на всех нодах есть метка (label region) с конкретным значением (west, east, south, north). В качестве сетевого интерфейса контейнеров (CNI) используется сетевое решение Calico, а для управления конфигурацией на управляющей ноде (masternode) вам доступна утилита calicoctl. Но вот незадача: не всё работает, не все поды запускаются…
Сломанные сетевые политики и конфликты
Вы научитесь
  • Настраивать сетевые политики (NetworkPolicy)
  • Работать с сетевым решеним Calico для управления конфигурацией CNI
  • Диагностировать и устранять неисправности в сетевом взаимодействии между зонами доступности (multi-AZ) в кластере Kubernetes
Какую профессиональную задачу решает troubleshooter:
Настраивать и восстанавливать сетевое взаимодействие между сервисами и зонами доступности в распределённом кластере, обеспечивая связность, отказоустойчивость и безопасность сетевых коммуникаций.
Сетевое взаимодействие — одна из самых сложных и критически важных частей Kubernetes. Ошибки в CNI или NetworkPolicy приводят к изоляции сервисов и полной недоступности части инфраструктуры. Управление сетевыми зависимостями и безопасное устранение проблем гарантируют высокую доступность (HA) и выполнение SLA. По данным Cloud Native Survey, 28% критичных инцидентов в Kubernetes связаны именно с сетевыми ошибками.
цель задания
Научиться диагностировать ошибки в манифестах, устранять проблемы с доступом к секретам и обеспечивать запуск приложений без нарушения политик безопасности инструмента Kyverno и принципов работы non-root
суть проблемы
  • Возникла проблема, поды не запускаются
  • Что‑то настроили некорректно, и программное обеспечение nginx не стартует
Валидация манифестов и хранение секретов
Вы научитесь
  • Проверять корректность манифестов с помощью инструмента Kyverno
  • Работать с системой Vault и компонентом Vault Agent Injector для безопасной передачи секретов
  • Настраивать доступ приложений к секретам без нарушения принципа наименьших привилегий
  • Исправлять ошибки в описаниях развертывания, сохраняя их соответствие политике безопасности
Какую профессиональную задачу решает troubleshooter:
Проверять и исправить ошибки конфигурации манифестов, интегрировать Vault для безопасной работы с секретами и обеспечивать выполнение политик безопасности при деплое приложений.
Ошибки в конфигурации манифестов и управлении секретами — основная причина утечек данных и падений сервисов. Правильная валидация YAML-файлов и безопасное использование Vault гарантируют устойчивость кластера и соблюдение DevSecOps-стандартов. По данным Red Hat State of Kubernetes Security Report 2024, значительная часть инцидентов безопасности в Kubernetes связана с некорректным хранением секретов.
Пакет из 6 задач
  • № 4 Не работает планирование запуска подов с критическим приоритетом (critical‑priority), не стартуют поды с заданным временем запуска (set‑time) — проверка понимания работы классов приоритетов (PriorityClass) и квот ресурсов (ResourceQuota), использование контекста безопасности (SecurityContext).
  • №5 Сломанные сетевые политики и конфликты
  • № 6 Валидация манифестов и хранение секретов
  • № 1 Нестабильный кластер — отладка (дебаг) упавшего кластера
  • № 2 Нестабильная утилита kubelet — отладка (дебаг) проблем с утилитой kubelet
  • № 3 Неравномерное распределение подов — тонкая настройка планировщика Kubernetes (k8s scheduler), когда стандартные настройки планировщика будут распределять контейнеры не самым подходящим образом
Свидетельство
Именное свидетельство о прохождении курса получает студент, если:
  • изучил 80% курса
  • принимал участие в решении практик, которые входят в курс
  • успешно сдал итоговый проект
Этот курс может оплатить ваша компания
Если вы считаете, что знания, полученные на курсе, могут быть полезными на вашем текущем месте работы, оставляйте заявку с контактами компании в форме ниже или обсудите покупку курса с вашим руководителем. Как это организовать, что говорить и куда идти — написали здесь.
Кастомизируем курс для вашей компании
Если ваша задача — обучить больше 30 сотрудников, мы готовы предложить вашей компании корпоративный формат обучения или адаптировать обучение под вас
Пример корпоративного обучения по Kubernetes для сотрудников Тинькофф банка →
Нужна консультация?
задайте нам свой вопрос