Предварительная версия. Функциональность может измениться, но основные возможности сохранятся. Совместимость с будущими версиями может потребовать ручных действий по миграции.
Масштабирование основано на параметре CodeInstance
scaling.targetUsercount
— в зависимости от его значения модуль изменяет
HPA, PDB, запросы/лимиты по CPU и памяти.
Внимание! Не рекомендуется использовать любые экземпляры “burstable” в облачной инфраструктуре из-за непостоянной производительности.
Архитектурная справка
10 Users
Простая инсталляция без HА-режима. Подходит для ознакомительного режима работы. В такой инсталляции мы не гарантируем отказоустойчивость или способность выдержать какую-то нагрузку
Таблица потребляемых ресурсов
Расчет приводится на базе ожидаемого количества пользователей
В таблице ниже приведены ресурсы, требуемые для развертывания 1 копии каждого компонента. При установке в режиме высокой доступности планируйте как минимум удвоенное количество ресурсов
Users/Component | 100 | 300 | 500 | 1000 |
---|---|---|---|---|
Webservice default | 2CPU / 4Gb 2 воркера, 8 тредов |
3CPU / 6Gb 3 воркера, 8 тредов |
3CPU / 6Gb 3 воркера, 8 тредов |
4CPU / 8Gb 4 воркера, 8 тредов |
Webservice internal | 2CPU / 4Gb 2 воркера, 8 тредов |
2CPU / 4Gb 2 воркера, 8 тредов |
2CPU / 4Gb 2 воркера, 8 тредов |
2CPU / 4Gb 2 воркера, 8 тредов |
Sidekiq | 0.25CPU / 1.5Gb 1.5 CPU / 3Gb |
0.25CPU / 1.5Gb 1.5CPU / 3Gb |
0.25CPU / 1.5Gb 1.5CPU / 3Gb |
0.25CPU / 1.5Gb 1.5CPU / 3Gb |
Shell | 0.01CPU / 24Mb 0.05 CPU / 128Mb |
0.01CPU / 24Mb 0.05CPU / 128Mb |
0.01CPU / 24Mb 0.05CPU / 128Mb |
0.01CPU / 24Mb 0.05CPU / 128Mb |
Toolbox | 0.05CPU / 350Mb 1 CPU / 2Gb |
0.05CPU / 350Mb 1CPU / 2Gb |
0.05CPU / 350Mb 1CPU / 2Gb |
0.05CPU / 350Mb 1CPU / 2Gb |
Praefect | 0.1CPU / 128Mb 0.3 CPU / 600Mb |
0.1CPU / 128Mb 0.3CPU / 600Mb |
0.1CPU / 128Mb 0.3CPU / 600Mb |
0.1CPU / 128Mb 0.3CPU / 600Mb |
Gitaly | 1.5CPU / 2Gb 1.5CPU / 2Gb |
1.5CPU / 2Gb 1.5CPU / 2Gb |
1.5CPU / 2Gb 1.5CPU / 2Gb |
2CPU / 4Gb 2CPU / 4Gb |
MRA | 0.5CPU / 250Mb 1CPU / 500Mb |
0.5CPU / 250Mb 1CPU / 500Mb |
0.5CPU / 250Mb 1CPU / 500Mb |
0.5CPU / 250Mb 1CPU / 500Mb |
Code-operator | 0.02CPU / 128Mb 1CPU / 256Mb |
0.02CPU / 128Mb 1CPU / 256Mb |
0.02CPU / 128Mb 1CPU / 256Mb |
0.02CPU / 128Mb 1CPU / 256Mb |
Registry* | 1 CPU/ 1Gb 1.5CPU / 2Gb |
1CPU / 1Gb 1.5CPU / 2Gb |
1 CPU/ 1Gb 1.5CPU / 2Gb |
1CPU / 1Gb 1.5CPU / 2Gb |
Pages* | 0.9CPU / 1Gb 1.5CPU / 2Gb |
0.9CPU / 1Gb 1.5CPU / 2Gb |
0.9CPU / 1Gb 1.5CPU / 2Gb |
0.9CPU / 1Gb 1.5CPU / 2Gb |
Mailroom* | 0.05CPU / 150Mb 0.25CPU / 0.5Gb |
0.05CPU / 150Mb 0.25 CPU / 0.5Gb |
0.05CPU / 150Mb 0.25CPU / 0.5Gb |
0.05CPU / 150Mb 0.25CPU / 0.5Gb |
HAProxy* | 0.25CPU / 128Mb 0.5CPU / 256Mb |
0.25CPU / 128Mb 0.5CPU / 256Mb |
0.25CPU / 128Mb 0.5CPU / 256Mb |
0.25CPU / 128Mb 0.5CPU / 256Mb |
Всего(Мин компоненты) | 7CPU / 13Gb 11CPU / 17Gb |
8CPU / 15.5Gb 12CPU / 19.5Gb |
8CPU / 15.5Gb 12CPU / 19.5Gb |
9.5CPU / 17.5Gb 13CPU / 21.5Gb |
Всего(Все компоненты) | 9CPU / 15Gb 14CPU / 22Gb |
10CPU / 17.5Gb 15CPU / 24Gb |
10CPU / 17.5Gb 15CPU / 24Gb |
11.5CPU / 19.5Gb 16CPU / 26Gb |
Опциональные компоненты отмечены в таблице символом
*
Первая строка каждой ячейки отражаетrequests
по ресурсам, вторая -limits
Настройка хранилища Git
Если вы видите непустую таблицу ‘OOM events’ в Grafana или срабатывающий алерт GitalyCgroupMemoryOOM
в Prometheus, вероятно, вам нужно скорректировать ресурсы памяти и CPU для Gitaly. Увеличьте значения instanceSpec.gitData.resources
в вашей конфигурации (например, установите память на 16Gi и CPU на 4). Примените изменения и наблюдайте за Gitaly.