Skip to content

Latest commit

 

History

History
executable file
·
77 lines (50 loc) · 4.38 KB

13-kuber-homeworks-3.1.md

File metadata and controls

executable file
·
77 lines (50 loc) · 4.38 KB

Домашнее задание к занятию «Компоненты Kubernetes»

Цель задания

Рассчитать требования к кластеру под проект


Инструменты и дополнительные материалы, которые пригодятся для выполнения задания:


Задание. Необходимо определить требуемые ресурсы

Известно, что проекту нужны база данных, система кеширования, а само приложение состоит из бекенда и фронтенда. Опишите, какие ресурсы нужны, если известно:

  1. Необходимо упаковать приложение в чарт для деплоя в разные окружения.
  2. База данных должна быть отказоустойчивой. Потребляет 4 ГБ ОЗУ в работе, 1 ядро. 3 копии.
  3. Кеш должен быть отказоустойчивый. Потребляет 4 ГБ ОЗУ в работе, 1 ядро. 3 копии.
  4. Фронтенд обрабатывает внешние запросы быстро, отдавая статику. Потребляет не более 50 МБ ОЗУ на каждый экземпляр, 0.2 ядра. 5 копий.
  5. Бекенд потребляет 600 МБ ОЗУ и по 1 ядру на копию. 10 копий.

Правила приёма работы

  1. Домашняя работа оформляется в своем Git-репозитории в файле README.md. Выполненное домашнее задание пришлите ссылкой на .md-файл в вашем репозитории.
  2. Сначала сделайте расчёт всех необходимых ресурсов.
  3. Затем прикиньте количество рабочих нод, которые справятся с такой нагрузкой.
  4. Добавьте к полученным цифрам запас, который учитывает выход из строя как минимум одной ноды.
  5. Добавьте служебные ресурсы к нодам. Помните, что для разных типов нод требовния к ресурсам разные.
  6. В результате должно быть указано количество нод и их параметры.

Расчёт ресурсов:

  1. База данных:
  • Отказоустойчивость: 3 копии
  • Ресурсы на одну копию: 4 ГБ ОЗУ, 1 ядро
  • Итого на все 3 копии: 12 ГБ ОЗУ, 3 ядра
  1. Система кеширования:
  • Отказоустойчивость: 3 копии
  • Ресурсы на одну копию: 4 ГБ ОЗУ, 1 ядро
  • Итого на все 3 копии: 12 ГБ ОЗУ, 3 ядра
  1. Фронтенд:
  • Ресурсы на одну копию: не более 50 МБ ОЗУ, 0.2 ядра
  • Количество копий: 5
  • Итого: не более 250 МБ ОЗУ, 1 ядро
  1. Бекенд:
  • Ресурсы на одну копию: 600 МБ ОЗУ, 1 ядро
  • Количество копий: 10
  • Итого: 6 ГБ ОЗУ, 10 ядер

Количество нод:

Cуществуют минимальные требования к кластеру Kubernetes:

Процессор: рекомендуется использовать серверы с не менее чем 2-мя ядрами.

Оперативная память: минимальное количество ОЗУ на каждом сервере должно быть не менее 2 ГБ

Нам потребуется три рабочие ноды.

Расчёт на одну ноду с запасом 20%:

Колличество ядер = 20 ядер / 3 = 7 ядер + 2 ядра на работу системных компонентов = 9 ядер.

Количество оперативной памяти = 36 Гб / 3 = 12 ГБ + 2 на работу ноды = 14 ГБ.