Victoria-metrics-operator#
Victoria-metrics-operator – оператор Kubernetes для управления компонентами VictoriaMetrics в DropApp. Автоматизирует развертывание, настройку и эксплуатацию стека мониторинга с помощью пользовательских ресурсов (Custom Resources).
Основные задачи и возможности
Автоматизация управления компонентами: обеспечивает развертывание и конфигурирование VMAgent, VMAlertmanager, VMAlert, VMAuth и VMCluster.
Поддержка кластерного режима (VMCluster): обеспечивает работу высокодоступной архитектуры с репликацией метрик, горизонтальным масштабированием и автоматическим восстановлением узлов.
Обеспечение высокой доступности (HA): гарантирует отказоустойчивость всех компонентов стека мониторинга, включая автоматическое переключение при сбоях (failover) и балансировку нагрузки.
Нативная интеграция с Kubernetes: использует стандартные CRD (Custom Resource Definitions), позволяя управлять VictoriaMetrics через обычные манифесты Kubernetes.
Примечание
По умолчанию Victoria-metrics-operator устанавливается в составе компонента «Monitoring».
Конфигурация values#
Значения переопределяются через редактирование инструмента с именем victoria-metrics-operator и указанием нужных values в spec.values. Общее описание конфигурации values для инструментов приведено в разделе «Конфигурации инструментов дополнительных компонентов».
crds – настройки установки и обновления Custom Resource Definitions (CRD)
allowedMetricsEndpoints - разрешенные эндпоинты сбора метрик
securityContext – параметры контекста безопасности контейнера
terminationGracePeriodSeconds – тайм-аут корректного завершения работы pod
affinity – правила привязки (affinity и anti-affinity) pod к узлам
topologySpreadConstraints – ограничения распределения pod по топологии
extraVolumeMounts – дополнительные точки монтирования томов (VolumeMounts)
shareProcessNamespace – совместное использование пространства имен процессов контейнерами
admissionWebhooks – параметры для «мутирующего» и валидирующего вебхуков
image – параметры контейнерного образа#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Реестр образа контейнера оператора |
|
|
Путь к репозиторию контейнерного образа оператора |
|
|
Тег образа оператора |
|
|
Вариант образа контейнера (например, |
|
|
Политика загрузки образа контейнера оператора |
|
command – команда запуска контейнера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Переопределение команды контейнера по умолчанию, используется когда бинарный файл VictoriaMetrics доступен по пользовательскому пути |
|
configReloader – настройки образа config-reloader#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Реестр образа контейнера |
|
|
Путь к репозиторию контейнерного образа |
|
|
Тег образа |
|
crds – настройки установки и обновления Custom Resource Definitions (CRD)#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Управление созданием CRD. Отключение возможно с |
|
|
Определение способа создания CRD. |
|
|
Дополнительные аннотации CRD при использовании шаблонов CRD |
|
|
Включение очистки CRD |
|
|
Репозиторий образа |
|
|
Тег образа |
|
|
Политика загрузки образа |
|
|
Ограничение CPU для |
|
|
Ограничение памяти для |
|
|
Запрос CPU для |
|
|
Запрос памяти для |
|
|
Включение |
|
|
Активация добавления аргумента |
|
|
Репозиторий образа |
|
|
Тег образа |
|
|
Политика загрузки образа |
|
|
Репозиторий образа kubectl для |
|
|
Тег образа kubectl для |
|
|
Политика загрузки образа kubectl для |
|
|
Дополнительные переменные окружения для |
|
|
Запросы и ограничения ресурсов для |
|
|
Дополнительные тома ( |
|
|
Дополнительные точки монтирования томов ( |
|
|
Селектор узлов для pod |
|
|
Правила привязки для pod |
|
|
|
|
|
Ограничения топологии для равномерного распределения pod по зонам доступности и узлам. |
|
|
Метки, добавляемые ко всем создаваемым ресурсам |
|
|
Аннотации, добавляемые ко всем создаваемым ресурсам |
|
|
Метки, добавляемые ко всем создаваемым pod |
|
|
Аннотации, добавляемые ко всем создаваемым pod |
|
|
Создание |
|
|
Имя |
|
|
Аннотации для |
|
|
Метки для |
|
|
Автоматическое монтирование токена |
|
|
Активация разрешения на эскалацию привилегий в контейнере |
|
|
Монтирование корневой файловой системы в режиме «только для чтения» |
|
|
Список возможностей ( |
|
|
Включение контекста безопасности pod для |
|
|
Идентификатор группы файловой системы для pod, назначаемый владельцем всех файлов и каталогов на подключенных томах |
|
|
ID группы для запуска контейнера |
|
|
Запуск от имени пользователя без административных полномочий |
|
|
ID пользователя для запуска контейнера |
|
|
Тип профиля Seccomp для pod |
|
replicaCount – количество реплик#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Количество реплик pod инструмента |
|
imagePullSecrets – Secret для загрузки образов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Список |
|
nameOverride – переопределение имени чарта#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Переопределение базового имени ресурсов чарта для генерации имен |
|
fullnameOverride – полное переопределение имени чарта#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Полное переопределение имени для всех создаваемых ресурсов чарта |
|
logLevel – уровень логирования#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Уровень логирования оператора. |
|
allowedMetricsEndpoints - разрешенные эндпоинты сбора метрик#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Список HTTP-эндпоинтов, с которых разрешена отдача метрик |
|
rbac – настройки RBAC (управление доступом на основе ролей)#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Активация автоматического создания ресурсов RBAC |
|
|
Создание агрегированных |
|
|
Метка для включения |
|
|
Метка для включения |
|
extraLabels – дополнительные метки для всех ресурсов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Метки, добавляемые ко всем создаваемым ресурсам |
|
podLabels – метки для pod#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Метки, добавляемые ко всем создаваемым pod |
|
annotations – общие аннотации для всех создаваемых ресурсов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Аннотации, добавляемые ко всем создаваемым ресурсам |
|
podSecurityContext – параметры контекста безопасности pod#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Включение контекста безопасности pod |
|
|
Идентификатор группы файловой системы для pod, назначаемый владельцем всех файлов и каталогов на подключенных томах |
|
|
Запуск от имени пользователя без административных полномочий |
|
|
ID пользователя для запуска pod |
|
securityContext – параметры контекста безопасности контейнера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Включение контекста безопасности для серверных pod |
|
|
Активация разрешения на эскалацию привилегий в контейнере |
|
|
Список возможностей ( |
|
|
Монтирование корневой файловой системы в режиме «только для чтения» |
|
operator – функциональные настройки#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Отключение конвертации объектов |
|
|
Добавление аннотаций ArgoCD |
|
|
Включение ссылки владения для конвертированных Prometheus-объектов; объекты VictoriaMetrics будут удалены при удалении исходных Prometheus-объектов |
|
|
Использование встроенного собственного |
|
|
Включение режима совместимости с OpenShift (поддерживается с версии |
|
|
Включение поддержки VPA |
|
|
Включение поддержки Gateway API |
|
|
Включение генерации хука |
|
watchNamespaces - список пространств имен для наблюдения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Список пространств имен, за которыми следит оператор; пустой список означает наблюдение за всеми пространствами имен |
|
serviceAccount – настройки сервисного аккаунта#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Активация создания |
|
|
Имя |
|
|
Автомонтирование токена |
|
service – настройки Service#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Режим распределения трафика |
|
|
Аннотации для |
|
|
Метки для |
|
|
Явно заданный |
|
|
Список внешних IP-адресов для |
|
|
Выделенный IP-адрес для |
|
|
Список CIDR-диапазонов, которым разрешен доступ к балансировщику нагрузки |
|
|
Тип |
|
|
Порт проверки состояния узла для внешнего балансировщика |
|
|
Политика обработки внешнего трафика для |
|
|
Политика выбора IP-семейства для |
|
|
Список IP-семейств для |
|
|
Порт |
|
|
Порт узла для |
|
|
Порт вебхука для |
|
podDisruptionBudget - параметры PodDisruptionBudget#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создание |
|
|
Минимальное количество или процент pod, доступных для работы |
|
|
Максимальное количество или процент pod, недоступных для работы |
|
|
Критерии учета неработающих pod при принудительном удалении |
|
|
Метки для |
|
terminationGracePeriodSeconds – тайм-аут корректного завершения работы pod#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Время, отведенное на корректное завершение работы pod |
|
lifecycle – хуки жизненного цикла контейнера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Параметры |
|
resources – запросы и ограничения ресурсов контейнера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Ограничение ресурсов CPU для контейнера |
|
|
Ограничение ресурсов памяти для контейнера |
|
|
Запрашиваемые ресурсы CPU для контейнера |
|
|
Запрашиваемые ресурсы памяти для контейнера |
|
nodeSelector – селектор узлов для планирования pod#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Селектор узлов для планирования pod |
|
strategy – стратегия обновления#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Тип стратегии обновления |
|
|
Максимальное количество избыточных pod во время обновления |
|
|
Максимальное количество недоступных pod во время обновления |
|
priorityClassName – имя класса приоритета pod#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Имя |
|
runtimeClassName – класс среды выполнения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Имя класса среды исполнения для pod |
|
tolerations – параметры Toleration для pod#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
|
|
affinity – правила привязки (affinity и anti-affinity) pod к узлам#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Настройки правила привязки ( |
|
topologySpreadConstraints – ограничения распределения pod по топологии#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Ограничения топологии для равномерного распределения pod по зонам доступности и узлам |
|
extraArgs – дополнительные аргументы запуска#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные аргументы командной строки контейнера оператора |
|
env – переменные окружения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные настройки переменных окружения для |
|
envFrom – альтернативные источники переменных окружения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Альтернативные источники переменных окружения, например |
|
extraHostPathMounts – дополнительные hostPath-монтирования#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные |
|
extraVolumes – дополнительные тома (Volume)#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные тома ( |
|
extraVolumeMounts – дополнительные точки монтирования томов (VolumeMounts)#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные точки монтирования томов ( |
|
extraContainers – дополнительные контейнеры#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные контейнеры для запуска вместе с оператором в pod. |
|
hostNetwork – использование сети хоста#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Использование сетевого пространства хоста для pod оператора |
|
dnsPolicy – политика DNS для pod#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Политика DNS для pod оператора; при включенном |
|
shareProcessNamespace – совместное использование пространства имен процессов контейнерами#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Активация использования общего пространства имен процессов между контейнерами pod |
|
admissionWebhooks – параметры для «мутирующего» и валидирующего вебхуков#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Включение «мутирующего» и валидирующего вебхуков |
|
|
Аннотации для «мутирующего» и валидирующего вебхуков |
|
|
Список имен CRD, для которых отключена валидация. |
|
|
Политика при недоступности оператора для валидации запроса |
|
|
Включение создания и внедрения сертификатов через |
|
|
Пользовательский источник для |
|
|
Шаблон |
|
|
Определение метаданных для корневого сертификата (CA), который генерирует |
|
|
Срок действия корневого сертификата CA |
|
|
Общее имя в корневом сертификате CA |
|
|
Шаблон |
|
|
Определение метаданных для TLS-сертификата |
|
|
Срок действия TLS-сертификата |
|
|
Общее имя в TLS-сертификате |
|
|
Сохранение |
|
|
Строка корневого сертификата (CA) для проверки подлинности TLS-сертификатов |
|
|
Строка TLS-сертификата для шифрования трафика |
|
|
Ключ для TLS-сертификата |
|
serviceMonitor – параметры ServiceMonitor#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Включение мониторинга оператора через |
|
|
Создание |
|
|
Метка части приложения для |
|
|
Метка Prometheus для |
|
|
Аннотации для ресурса |
|
|
Правила фильтрации и преобразования меток, применяемые к целям сбора до начала сбора метрик |
|
|
Схема подключения для |
|
|
Интервал сбора метрик |
|
|
Тайм-аут сбора метрик |
|
|
Конфигурация TLS для |
|
|
Базовая аутентификация для |
|
probe – настройки проверок контейнера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Порт проверки готовности |
|
|
Задержка перед первой проверкой готовности после запуска контейнера |
|
|
Интервал между проверками готовности |
|
|
Тайм-аут одной проверки готовности |
|
|
Количество неудачных проверок готовности до перевода контейнера в состояние |
|
|
Порт проверки работоспособности по протоколу TCP |
|
|
Задержка перед первой проверкой работоспособности после запуска контейнера |
|
|
Интервал между проверками работоспособности |
|
|
Тайм-аут одной проверки работоспособности |
|
|
Количество неудачных проверок работоспособности до перезапуска контейнера |
|
|
Параметры проверки запуска контейнера |
|
extraObjects – дополнительные объекты Helm-чарта#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Добавление дополнительных динамических объектов в Helm-чарте |
|