Нагрузка на kube-apiserver
Ключевым компонентом Control Plane (управляющего слоя) кластера Managed Kubernetes является kube-apiserver. Он обрабатывает HTTPS-запросы к Kubernetes API и обеспечивает взаимодействие между другими компонентами Control Plane.
Для стабильной работы компонента kube-apiserver в кластерах Managed Kubernetes по умолчанию используется механизм API Priority and Fairness (APF, равноправный доступ к API). APF распределяет доступные ресурсы kube-apiserver между разными типами запросов, определяет их приоритет и предотвращает ситуацию, когда большое число запросов от одних клиентов влияет на обработку запросов от других.
Приоритизировать выполнение запросов позволяют единицы конкурентности (seats). Они отражают объем ресурсов компонента kube-apiserver, необходимых для обработки запроса. Одному запросу может быть выделена одна или несколько единиц конкурентности в зависимости от типа этого запроса.
Максимальное число доступных единиц конкурентности зависит от типа кластера Managed Kubernetes:
- Standalone-кластер — 600 единиц.
- High-availablility-кластер — 1800 единиц.
Мониторинг нагрузки
Заголовок раздела «Мониторинг нагрузки»Отслеживать нагрузку на компонент kube-apiserver можно с помощью следующих метрик мониторинга:
| Название метрики | Тип | Описание |
|---|---|---|
mk8s_kube_api_requests | GAUGE | Среднее число запросов к kube-apiserver в секунду |
mk8s_apiserver_flowcontrol_current_executing_seats | GAUGE | Число используемых единиц конкурентности |
mk8s_apiserver_flowcontrol_current_inqueue_requests | GAUGE | Число запросов в очереди на выполнение |