Skip to content

Bagautdino/MindBox_test

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

Тестовое задание Mindbox на позицию SRE

Обзор

Этот проект включает в себя Kubernetes манифест, предназначенный для управления веб-приложением в мультизональном кластере Kubernetes. Манифест разработан с учетом специфических требований к производительности, надежности и эффективности использования ресурсов.

Задача

Было поставлено задание разработать Kubernetes манифест для веб-приложения, удовлетворяющего следующим условиям:

  • Работа в мультизональном кластере (три зоны) с пятью узлами.
  • Время инициализации приложения составляет около 5-10 секунд.
  • По результатам нагрузочного теста известно, что оптимальное количество подов для справления с пиковой нагрузкой - 4.
  • На начальном этапе работы приложение требует больше ресурсов CPU, в дальнейшем потребление стабилизируется на уровне 0.1 CPU.
  • Постоянное потребление памяти на уровне 128M.
  • Наличие дневного цикла по нагрузке - пиковые нагрузки днем, существенно меньше запросов ночью.
  • Требования к максимальной отказоустойчивости и минимизации потребления ресурсов.

Решение

Реализованное решение включает следующие компоненты:

  • Namespace: Изоляция ресурсов приложения в отдельном пространстве имен go-app-namespace.
  • Deployment: Определяет стратегию развертывания для приложения, с начальным количеством подов равным двум. Включает в себя настройки аффинити для оптимального распределения подов по зонам доступности и узлам.
  • Resources: Настройки ресурсов для контейнеров, включая запросы и лимиты CPU и памяти, учитывающие как пиковую, так и обычную нагрузку.
  • Probes: Настройки livenessProbe, readinessProbe и startupProbe для управления жизненным циклом подов и учета времени инициализации приложения.
  • CronJob: Две задачи CronJob для автоматического масштабирования количества подов в соответствии с дневным циклом нагрузки - увеличение количества подов до четырех в пиковые часы и снижение до двух в непиковые.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published