Vector-agent#
Vector-agent - это высокопроизводительный агент для сбора, преобразования и отправки логов, метрик и других данных телеметрии. В режиме agent он развертывается на каждом узле кластера Kubernetes и используется для локального сбора данных с контейнеров и системных компонентов.
Основные задачи и возможности
Сбор логов с pod и контейнеров:
Vector может собирать логи напрямую с контейнеров, фильтровать их и направлять в различные хранилища или системы анализа (например, Loki, Elasticsearch, S3 и др.).
Интеграция с Kubernetes API:
Vector взаимодействует с API Kubernetes для получения метаданных о pods, контейнерах и узлах, что позволяет добавлять контекстную информацию к собранным данным.
Обогащение данных и преобразование:
Поддерживает фильтрацию, парсинг, маскировку и преобразование логов и метрик перед отправкой, обеспечивая гибкость обработки данных.
Легковесность и производительность:
Написан на языке Rust, что делает его очень эффективным по сравнению с другими агентами, такими как Fluentd или Logstash.
Развертывание через
DaemonSet:Для равномерного покрытия всего кластера Vector обычно разворачивается как
DaemonSet, чтобы работать на всех узлах и собирать данные локально.Поддержка множества выходных целей:
Может отправлять данные в разные системы: от централизованных хранилищ (Elasticsearch, Loki) до брокеров сообщений (Kafka, NATS), облачных сервисов и HTTP endpoints.
Примечание
Vector-agent устанавливается по умолчанию с компонентом logging. Для Vector-agent преднастроена интеграция с Vector-aggregator.
Конфигурация values#
Значения можно переопределить через редактирование инструмента с именем vector-agent и указанием нужных values в spec.values. Общее описание конфигурации values для инструментов описано в разделе «Конфигурации инструментов дополнительных компонентов».
nameOverride - переопределение имени ресурсов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Переопределяет имя ресурсов Kubernetes |
|
fullnameOverride - переопределение полного имени ресурсов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Переопределяет полное имя всех ресурсов |
|
role - роль развертывания Vector#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Роль для данного экземпляра Vector: |
|
rollWorkload - обновление рабочих нагрузок#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Добавить контрольную сумму |
|
rollWorkloadSecrets - обновление секретов рабочих нагрузок#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Добавить контрольную сумму |
|
rollWorkloadExtraObjects - обновление дополнительных объектов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Добавить контрольную сумму |
|
commonLabels - общие метки для всех ресурсов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные метки для всех создаваемых ресурсов |
|
image - настройки Docker образа Vector#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Репозиторий образа Vector |
|
|
Политика загрузки образа |
|
|
Секреты для загрузки образов |
|
|
Тег образа Vector |
|
|
SHA образа Vector |
|
|
Базовое распределение для Vector |
|
replicas - количество реплик#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Количество pods для ролей |
|
hostAliases - дополнительные записи в /etc/hosts для подов Vector#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные записи |
|
podManagementPolicy - политика управления pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Политика управления pods для |
|
secrets - секреты для Vector#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Произвольные секреты в виде «ключ-значение» |
|
autoscaling - автомасштабирование pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать |
|
|
Использовать внешний автомасштабировщик типа |
|
|
Аннотации для HPA Vector |
|
|
Минимальное количество реплик для HPA |
|
|
Максимальное количество реплик для HPA |
|
|
Целевая утилизация CPU для HPA |
|
|
Целевая утилизация памяти для HPA |
|
|
Настраиваемые метрики для автомасштабирования |
|
|
Настройка поведения масштабирования вверх и вниз |
|
podDisruptionBudget - бюджет прерывания pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать |
|
|
Минимальное количество доступных pods после прерывания |
|
|
Максимальное количество недоступных pods после прерывания |
|
rbac - настройки ролевого доступа#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать и использовать ресурсы RBAC для роли |
|
psp - политики безопасности pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать |
|
serviceAccount - настройки сервисного аккаунта#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать |
|
|
Аннотации для |
|
|
Имя |
|
|
Автоматическое монтирование токена API для |
|
podAnnotations - аннотации pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Аннотации для pods Vector |
|
podLabels - метки pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Метки для pods Vector |
|
podPriorityClassName - класс приоритета pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Класс приоритета для pods Vector |
|
podHostNetwork - использование сети хоста#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Настройка |
|
podSecurityContext - контекст безопасности pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Пользователь для запуска процессов в pod |
|
|
Группа для запуска процессов в pod |
|
|
Тип профиля |
|
workloadResourceAnnotations - аннотации ресурсов рабочих нагрузок#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Аннотации для |
|
securityContext - контекст безопасности контейнеров#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Запуск контейнера в привилегированном режиме |
|
|
Разрешить повышение привилегий |
|
|
Корневая файловая система только для чтения |
|
|
Удаляемые |
|
command - команда для запуска Vector#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Переопределить команду запуска Vector по умолчанию |
|
args - аргументы для Vector#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Аргументы командной строки для Vector |
|
env - переменные окружения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Переменные окружения для контейнеров Vector |
|
envFrom - переменные окружения из источников#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Определение переменных окружения из |
|
containerPorts - порты контейнеров#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Ручное определение портов контейнеров Vector |
|
resources - ресурсы контейнеров#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Ресурсы ( |
|
lifecycle - хуки жизненного цикла#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Хуки жизненного цикла для контейнеров Vector |
|
minReadySeconds - минимальное время готовности#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Минимальное время ожидания новых pods перед проверкой готовности |
|
updateStrategy - стратегия обновления#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Стратегия обновления для замены pods Vector |
|
terminationGracePeriodSeconds - время завершения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Время ожидания завершения процессов Vector |
|
nodeSelector - селектор узлов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Селектор узлов для размещения pods Vector |
|
tolerations - tolerations для размещения на узлах#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Tolerations для размещения pods Vector на узлах с |
|
affinity - правила сходства#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Правила сходства для размещения pods Vector |
|
topologySpreadConstraints - ограничения распределения по топологии#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Ограничения распределения pods по топологии кластера |
|
service - настройки сервиса Vector#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать и предоставить ресурс |
|
|
Тип сервиса Vector |
|
|
Аннотации для сервиса Vector |
|
|
Ключи топологии для сервиса Vector |
|
|
Ручное определение портов сервиса |
|
|
Политика внешнего трафика для сервиса |
|
|
Политика внутреннего трафика для сервиса |
|
|
IP-адрес для |
|
|
Настройка |
|
|
Семейства IP-адресов для |
|
serviceHeadless - настройки headless сервиса#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать и предоставить |
|
ingress - настройки Ingress#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать и использовать ресурс |
|
|
Класс |
|
|
Аннотации для |
|
|
Настройка хостов и путей для |
|
|
Настройка TLS для |
|
existingConfigMaps - существующие ConfigMaps#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Список существующих |
|
dataDir - директория данных#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Путь для данных Vector (используется только с |
|
customConfig - пользовательская конфигурация Vector#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Каталог для данных Vector |
|
|
Включить Vector API |
|
|
Адрес для Vector API |
|
|
Включить |
|
|
Тип источника |
|
|
Тип источника логов Kubernetes |
|
|
Исключения устройств для метрик файловой системы |
|
|
Исключения файловых систем |
|
|
Исключения точек монтирования |
|
|
Тип источника метрик хоста |
|
|
Тип источника внутренних метрик |
|
|
Тип приемника агрегатора |
|
|
Входы для агрегатора |
|
|
Адрес агрегатора |
|
|
Тип экспортера Prometheus |
|
|
Входы для экспортера Prometheus |
|
|
Адрес экспортера Prometheus |
|
defaultVolumes - тома по умолчанию#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Имя тома для |
|
|
Путь хоста для логов |
|
|
Имя тома для |
|
|
Путь хоста для библиотек |
|
|
Имя тома для |
|
|
Путь для |
|
|
Имя тома для |
|
|
Путь для |
|
defaultVolumeMounts - монтирование томов по умолчанию#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Имя монтируемого тома для логов |
|
|
Путь монтирования логов |
|
|
Режим только для чтения для логов |
|
|
Имя монтируемого тома для библиотек |
|
|
Путь монтирования библиотек |
|
|
Режим только для чтения для библиотек |
|
|
Имя монтируемого тома |
|
|
Путь монтирования |
|
|
Режим только для чтения для |
|
|
Имя монтируемого тома |
|
|
Путь монтирования |
|
|
Режим только для чтения для |
|
extraVolumes - дополнительные тома#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные тома для pods Vector |
|
extraVolumeMounts - дополнительные монтирования томов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные монтирования томов для контейнеров Vector |
|
initContainers - init контейнеры#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
|
|
extraContainers - дополнительные контейнеры#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные контейнеры для pods Vector |
|
persistence - настройки постоянного хранения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать и использовать |
|
|
Имя существующего |
|
|
Политика сохранения |
|
|
Режимы доступа для |
|
|
Размер |
|
|
Финализаторы для |
|
|
Селекторы для |
|
|
Использовать |
|
|
Путь для |
|
dnsPolicy - политика DNS#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Политика DNS для pods Vector |
|
dnsConfig - настройки DNS#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Опции настройки DNS pods Vector |
|
shareProcessNamespace - общее namespace процессов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Общее namespace процессов для pods Vector |
|
livenessProbe - проба жизнеспособности#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Настройки проверки жизнеспособности |
|
readinessProbe - проба готовности#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Настройки проверки готовности |
|
podMonitor - мониторинг pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать |
|
|
Метка для получения имени задания |
|
|
Порт для сбора метрик |
|
|
Путь для сбора метрик |
|
|
Интервал сбора метрик |
|
|
Время ожидания сбора метрик |
|
|
Конфигурации перемаркировки для образцов |
|
|
Конфигурации перемаркировки метрик |
|
|
Метки, передаваемые с подов на цели |
|
|
Дополнительные метки для |
|
|
Уважать метки в конфигурации |
|
|
Уважать временные метки в конфигурации |
|
logLevel - уровень логирования#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Уровень логирования для Vector |
|
haproxy - встроенный балансировщик нагрузки HAProxy#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать балансировщик |
|
|
Репозиторий образа |
|
|
Политика загрузки образа |
|
|
Секреты для загрузки образа |
|
|
Тег образа |
|
|
Добавить контрольную сумму |
|
|
Количество pods |
|
|
Создать |
|
|
Аннотации для |
|
|
Имя |
|
|
Автомонтирование токена API для |
|
|
Стратегия обновления pods |
|
|
Время завершения процессов |
|
|
Аннотации для pods |
|
|
Метки для pods |
|
|
Класс приоритета для pods |
|
|
Контекст безопасности для pods |
|
|
Контекст безопасности для контейнеров |
|
|
Порты контейнеров |
|
|
Тип сервиса |
|
|
Аннотации для сервиса |
|
|
Ключи топологии для сервиса |
|
|
Порты сервиса |
|
|
Политика внешнего трафика |
|
|
IP-адрес |
|
|
Политика семейств IP для |
|
|
Семейства IP-адресов для |
|
|
Существующий |
|
|
Пользовательская конфигурация |
|
|
Дополнительные тома для pods |
|
|
Дополнительные монтирования томов для |
|
|
Init-контейнеры для pods |
|
|
Дополнительные контейнеры для pods |
|
|
Создать |
|
|
Внешний |
|
|
Минимальное количество реплик HPA для |
|
|
Максимальное количество реплик HPA для |
|
|
Целевая утилизация CPU для HPA |
|
|
Целевая утилизация памяти для HPA |
|
|
Настраиваемые метрики для автомасштабирования |
|
|
Ресурсы ( |
|
|
Настройки пробы жизнеспособности |
|
|
Настройки пробы готовности |
|
|
Селектор узлов для pods |
|
|
Толерантности для pods |
|
|
Правила сходства для pods |
|
extraObjects - дополнительные объекты#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создание дополнительных объектов через значения |
|