K8sGPT-operator#
K8sGPT-operator - это оператор, предназначенный для автоматизации развертывания и управления K8sGPT в кластере. Он позволяет интегрировать K8sGPT как самостоятельный компонент кластера, обеспечивая непрерывную диагностику и анализ проблем в реальном времени.
Основные задачи и возможности
Автоматическое развертывание и управление K8sGPT:
Позволяет устанавливать, настраивать и управлять жизненным циклом K8sGPT внутри кластера с помощью Kubernetes CRD (Custom Resource Definitions).
Непрерывная диагностика состояния кластера:
K8sGPT сканирует кластер и выявляет потенциальные проблемы, такие как неработающие pod, ошибки конфигурации и другие аномалии, используя заранее определенные анализаторы.
Интеграция с внешними системами наблюдаемости:
Обеспечивает связь с такими инструментами, как Prometheus и Grafana, для отправки результатов анализа и визуализации проблем.
Результаты диагностики в виде Kubernetes-манифестов:
Результаты сканирования выводятся в формате YAML, что позволяет легко интегрировать их в CI/CD или системы мониторинга.
Примечание
K8sGPT-operator устанавливается по умолчанию с компонентом AIOps.
Конфигурация values#
Значения можно переопределить через редактирование инструмента с именем k8sgpt-operator и указанием нужных values в spec.values. Общее описание конфигурации values для инструментов описано в разделе «Конфигурации инструментов дополнительных компонентов».
-
interplex - настройка распределенного кеша для оператора k8sgpt
serviceMonitor - конфигурация ServiceMonitor для интеграции с Prometheus
controllerManager - параметры Deployment контроллер-менеджера оператора
kubernetesClusterDomain - доменное имя Kubernetes кластера для внутренней маршрутизации
metricsService - конфигурация сервиса для экспорта метрик оператора
interplex - настройка распределенного кеша для оператора k8sgpt#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Активация распределенного кеша Interplex для координации между экземплярами оператора |
|
serviceMonitor - конфигурация ServiceMonitor для интеграции с Prometheus#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Включение создания ресурса ServiceMonitor для автоматического обнаружения метрик Prometheus |
|
|
Дополнительные метки для добавления к ресурсу ServiceMonitor при интеграции с кастомными конфигурациями Prometheus |
|
controllerManager - параметры Deployment контроллер-менеджера оператора#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные аннотации для развертывания контроллера |
|
|
Разрешить повышение привилегий для Kube-rbac-proxy |
|
|
Список |
|
|
Репозиторий образа Kube-rbac-proxy |
|
|
Тег образа Kube-rbac-proxy |
|
|
Лимит CPU для Kube-rbac-proxy |
|
|
Лимит памяти для Kube-rbac-proxy |
|
|
Запрос CPU для Kube-rbac-proxy |
|
|
Запрос памяти для Kube-rbac-proxy |
|
|
Время ожидания для webhook-запросов |
|
|
Включить логирование результатов анализа |
|
|
Разрешить повышение привилегий для основного контейнера |
|
|
Список |
|
|
Репозиторий образа K8sGPT-operator |
|
|
Тег образа K8sGPT-operator |
|
|
Лимит CPU для основного контейнера |
|
|
Лимит памяти для основного контейнера |
|
|
Запрос CPU для основного контейнера |
|
|
Запрос памяти для основного контейнера |
|
|
Количество реплик контроллера |
|
|
Селектор узлов для размещения pod контроллера |
|
|
Запуск контейнера от имени не-root пользователя |
|
kubernetesClusterDomain - доменное имя Kubernetes кластера для внутренней маршрутизации#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Домен кластера Kubernetes для внутренних DNS-запросов |
|
metricsService - конфигурация сервиса для экспорта метрик оператора#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Тип сервиса для экспорта метрик |
|
|
Имя порта сервиса метрик для идентификации в конфигурациях мониторинга |
|
|
Порт сервиса для доступа к метрикам внутри кластера |
|
|
Сетевой протокол для передачи метрик |
|
|
Целевой порт контейнера на который направляются запросы метрик |
|