x509-certificate-exporter#

x509-certificate-exporter - Prometheus-экспортер метрик, предназначенный для мониторинга сроков действия TLS-сертификатов. Он сканирует файлы, каталоги, Kubeconfig и секреты с сертификатами, извлекает данные об их жизненном цикле и предоставляет метрики для оповещения и визуализации.

Основные задачи и возможности
  • Мониторинг различных источников сертификатов. Поддерживает:

    • PEM-файлы по указанным путям;

    • Каталоги с автоматическим сканированием;

    • Kubeconfig-файлы (встроенные или ссылающиеся на файлы);

    • TLS-секреты Kubernetes (kubernetes.io/tls).

  • Экспорт метрик в Prometheus. Предоставляет метрики:

    • x509_cert_not_after - дата окончания срока действия;

    • x509_cert_expired - статус окончания срока действия;

    • x509_read_errors - ошибки чтения файлов или API;

    • Опционально: x509_cert_expires_in_seconds, x509_cert_valid_since_seconds.

  • Гибкая фильтрация и настройка. Позволяет:

    • Включать/исключать пространства имен и секреты по меткам;

    • Управлять кешированием;

    • Обрезать пути в метках.

  • Преднастроенные правила оповещений и готовая панель Grafana для визуализации.

Примечание

x509-certificate-exporter устанавливается по умолчанию в процессе установки всего кластера DropApp.

Настройка#

По умолчанию инструмент x509-certificate-exporter сконфигурирован на запуск в трех режимах:

  • Deployment с именем x509-certificate-exporter следит за секретами в кластере с типом kubernetes.io/tls;

  • Daemonset с именем x509-certificate-exporter-cp следит за сертификатами в файловой системе control-plane узлов;

  • Daemonset с именем x509-certificate-exporter-worker следит за сертификатами в файловой системе обычных рабочих узлов (не выделенных).

При наличии выделенных рабочих узлов с определенным nodePool, например ingress, infra, storage и т.п., и есть необходимость следить за сертификатами и на них, добавьте для работы с ними в конфигурацию x509-certificate-exporter:

apiVersion: config.dropapp.ru/v1alpha1
kind: Tool
metadata:
  name: x509-certificate-exporter
spec:
  values:       
    hostPathsExporter:
      daemonSets:
        infra: # пример для рабочих узлов с меткой node-role.kubernetes.io/infra: ""
          nodeSelector:
            node-role.kubernetes.io/infra: ""
          watchFiles:
            - /var/lib/kubelet/pki/kubelet-client-current.pem
            - /etc/kubernetes/pki/ca.crt

Конфигурация values#

Параметры x509-certificate-exporter можно переопределить через редактирование нужных значений в spec.values. Общее описание конфигурации values для инструментов приведено в разделе «Конфигурации инструментов дополнительных компонентов».

nameOverride – переопределение имени чарта#

Параметр

Описание

Значение по умолчанию

nameOverride

Переопределение базового имени ресурсов чарта для генерации имен

""

fullnameOverride – полное переопределение имени чарта#

Параметр

Описание

Значение по умолчанию

fullnameOverride

Полное переопределение имени для всех создаваемых ресурсов чарта

""

namespaceOverride – переопределение пространства имен#

Параметр

Описание

Значение по умолчанию

namespaceOverride

Переопределение пространства имен вместо значения по умолчанию

""

extraDeploy – дополнительные объекты для развертывания#

Параметр

Описание

Значение по умолчанию

extraDeploy

Список дополнительных объектов для развертывания с поддержкой шаблонизатора Helm

[]

extraDeployVerbatim – дополнительные объекты для развертывания без обработки#

Параметр

Описание

Значение по умолчанию

extraDeployVerbatim

Список дополнительных объектов для развертывания без обработки шаблонизатором Helm

[]

imagePullSecrets – Secret для загрузки образов#

Параметр

Описание

Значение по умолчанию

imagePullSecrets

Список Secret для загрузки образа контейнера из приватных реестров

[]

image – параметры контейнерного образа#

Параметр

Описание

Значение по умолчанию

image.registry

Реестр контейнерного образа, формируемый на основе глобальных переменных

'{{ .Values.global.image.registry }}'

image.repository

Репозиторий контейнерного образа

'{{ .Values.global.image.repository }}/{{ .Values.global.dappVersion }}/dapp-x509-certificate-exporter/x509-certificate-exporter'

image.tag

Тег образа контейнера

"3.21.0"

image.tagSuffix

Суффикс для выбора варианта образа: -busybox, -alpine или -scratch

""

image.pullPolicy

Политика загрузки образа.
Возможные значения: IfNotPresent, Always, Never

IfNotPresent

migration – настройки миграционных Helm-хуков#

Параметр

Описание

Значение по умолчанию

migration.image.repository

Репозиторий контейнерного образа kubectl для миграционных Helm-хуков

'{{ .Values.global.image.registry }}/{{ .Values.global.image.repository }}/{{ .Values.global.dappVersion }}/dapp-kubernetes/kubectl'

migration.image.tag

Тег образа контейнера

"v1.29.15"

migration.image.digest

Дайджест (SHA-хеш) образа контейнера. При указании непустого значения образ загружается по дайджесту, независимо от тега

""

migration.annotations

Аннотации, добавляемые ко всем создаваемым ресурсам

{}

migration.extraLabels

Дополнительные метки для pod миграционных Helm-хуков

{}

migration.resources

Запросы и ограничения ресурсов для pod

limits:
  cpu: 1
  memory: 150Mi
requests:
  cpu: 20m
  memory: 20Mi

migration.podSecurityContext

Параметры контекста безопасности pod для миграционных Helm-хуков

runAsNonRoot: true

migration.securityContext

Параметры контекста безопасности контейнера для миграционных Helm-хуков

runAsUser: 65534
runAsGroup: 65534
readOnlyRootFilesystem: true
capabilities:
  drop:
  - ALL

exposePerCertificateErrorMetrics – включение метрик ошибок на уровень каждого сертификата#

Параметр

Описание

Значение по умолчанию

exposePerCertificateErrorMetrics

Включение дополнительных метрик для отчета об ошибках каждого сертификата. Помогает определить источник ошибок чтения без анализа логов экспортера, за счет дополнительного хранения в Prometheus

false

exposeRelativeMetrics – включение метрик с относительными временными интервалами#

Параметр

Описание

Значение по умолчанию

exposeRelativeMetrics

Включение дополнительных метрик с относительными длительностями вместо абсолютных временных меток. Не рекомендуется для Prometheus

false

metricLabelsFilterList – фильтрация меток метрик#

Параметр

Описание

Значение по умолчанию

metricLabelsFilterList

Ограничение меток метрик указанным списком. Снижение кардинальности может привести к коллизиям метрик и игнорированию сертификатов экспортером. Это также ухудшит работу дашборда Grafana. Список должен включать как минимум filepath, secret_namespace и secret_name. Также установите subject_CN для файлов с несколькими сертификатами

~

grafana – настройка дашборда Grafana как ConfigMap#

Параметр

Описание

Значение по умолчанию

grafana.createDashboard

Создание дашборда Grafana в виде ConfigMap (требуется sidecar-контейнер Grafana)

false

grafana.sidecarLabel

Имя метки ConfigMap для sidecar-контейнера Grafana

grafana_dashboard

grafana.sidecarLabelValue

Значение метки ConfigMap

"1"

grafana.annotations

Аннотации, добавляемые ко всем создаваемым ресурсам.
Пример конфигурации:

k8s-sidecar-target-directory: "/tmp/dashboards/Example"

{}

grafana.extraLabels

Дополнительные метки для ConfigMap дашборда Grafana

{}

secretsExporter – настройки Deployment для мониторинга TLS-Secrets#

Параметр

Описание

Значение по умолчанию

secretsExporter.enabled

Включение экспортера TLS Secrets

true

secretsExporter.annotations

Аннотации, добавляемые ко всем создаваемым ресурсам

{}

secretsExporter.debugMode

Включение отладочного вывода сообщений

false

secretsExporter.replicas

Количество реплик pod

1

secretsExporter.restartPolicy

Политика перезапуска pod

Always

secretsExporter.strategy

Стратегия обновления ресурса

{}

secretsExporter.revisionHistoryLimit

Количество предыдущих версий ресурса, сохраняемых для отката

~

secretsExporter.resources

Запросы и ограничения ресурсов для pod

limits:
  cpu: 1
  memory: 150Mi
requests:
  cpu: 20m
  memory: 20Mi

secretsExporter.readinessProbe

Проверка готовности контейнера

initialDelaySeconds: 5
periodSeconds: 3

secretsExporter.livenessProbe

Проверка жизнеспособности контейнера

initialDelaySeconds: 5
periodSeconds: 3

secretsExporter.nodeSelector

Селектор узлов для планирования pod

kubernetes.io/os: linux

secretsExporter.tolerations

Toleration для размещения pod на узлах с ограничениями (taints)

[]

secretsExporter.affinity

Настройки правила привязки (affinity и anti-affinity) pod к узлам

{}

secretsExporter.priorityClassName

Имя PriorityClass для pod

""

secretsExporter.podExtraLabels

Метки, добавляемые ко всем создаваемым pod

{}

secretsExporter.podAnnotations

Аннотации, добавляемые ко всем создаваемым pod

{}

secretsExporter.podSecurityContext

Параметры контекста безопасности pod

runAsNonRoot: true

secretsExporter.securityContext

Параметры контекста безопасности контейнера

runAsUser: 65534
runAsGroup: 65534
readOnlyRootFilesystem: true
capabilities:
  drop:
  - ALL

secretsExporter.extraVolumes

Дополнительные тома (Volume) для pod

[]

secretsExporter.extraVolumeMounts

Список дополнительных точек монтирования томов (VolumeMounts) в контейнере

[]

secretsExporter.secretTypes

Список типов Secrets, фильтруемых экспортером для последующего сбора метрик безопасности. Параметр key — ключ в данных Secret

- type: kubernetes.io/tls
  key: tls.crt

secretsExporter.configMapKeys

Список ключей в ConfigMap для наблюдения за сертификатами. Например: configMapKeys: ["tls.crt"]

[]

secretsExporter.includeNamespaces

Ограничение списка пространств имен для сканирования сертификатов

[]

secretsExporter.excludeNamespaces

Исключение пространств имен из сканирования (применяется после includeNamespaces)

[]

secretsExporter.includeNamespaceLabels

Наблюдение только за пространствами имен с указанными метками. Элементы могут быть ключами вида my-label или с обязательным значением в синтаксисе my-label=my-value

[]

secretsExporter.excludeNamespaceLabels

Исключение пространств имен с указанными метками. Элементы могут быть ключами вида my-label или с обязательным значением в синтаксисе my-label=my-value

[]

secretsExporter.includeLabels

Наблюдение только за TLS Secrets с указанными метками. Элементы могут быть ключами вида my-label или с обязательным значением в синтаксисе my-label=my-value

[]

secretsExporter.excludeLabels

Исключение TLS Secrets с указанными метками. Элементы могут быть ключами вида my-label или с обязательным значением в синтаксисе my-label=my-value

[]

secretsExporter.exposeSecretLabels

Экспорт выбранных меток из Secrets как меток Prometheus

[]

secretsExporter.extraArgs

Дополнительные аргументы командной строки экспортера. Например: --watch-file="/extra-cert/tls.crt"

[]

secretsExporter.cache.enabled

Включение кеширования объектов для предотвращения тайм-аутов скрейпинга

true

secretsExporter.cache.maxDuration

Максимальное время хранения объекта в кеше без обновления

300

secretsExporter.kubeApiRateLimits.enabled

Включение ограничения частоты запросов к API-серверу

false

secretsExporter.kubeApiRateLimits.queriesPerSecond

Максимальная частота запросов к API-серверу

5

secretsExporter.kubeApiRateLimits.burstQueries

Максимальный размер кратковременного всплеска запросов (burst) к API-серверу.

10

secretsExporter.env

Дополнительные переменные окружения для контейнеров.
Пример конфигурации:

- name: GOMAXPROCS
  value: "1"

[]

hostPathsExporter – настройки DaemonSet для сканирования сертификатов на файловой системе хоста#

Параметр

Описание

Значение по умолчанию

hostPathsExporter.annotations

Аннотации, добавляемые ко всем создаваемым ресурсам

{}

hostPathsExporter.debugMode

Включение отладочного вывода для всех DaemonSet

false

hostPathsExporter.skipSymlinks

Пропуск символических ссылок при сканировании файлов и каталогов. Не применяется к Secrets

false

hostPathsExporter.restartPolicy

Политика перезапуска для pod экспортеров

Always

hostPathsExporter.strategy

Стратегия обновления ресурса

{}

hostPathsExporter.revisionHistoryLimit

Количество предыдущих версий ресурса, сохраняемых для отката

~

hostPathsExporter.resources

Запросы и ограничения ресурсов для pod

limits:
  cpu: 1
  memory: 40Mi
requests:
  cpu: 10m
  memory: 20Mi

hostPathsExporter.readinessProbe

Проверка готовности контейнера

initialDelaySeconds: 5
periodSeconds: 3

hostPathsExporter.livenessProbe

Проверка работоспособности контейнера

initialDelaySeconds: 5
periodSeconds: 3

hostPathsExporter.nodeSelector

Селектор узлов для планирования pod

{}

hostPathsExporter.tolerations

Toleration для размещения pod на узлах с ограничениями (taints)

[]

hostPathsExporter.affinity

Настройки правила привязки (affinity и anti-affinity) pod к узлам

{}

hostPathsExporter.priorityClassName

Имя PriorityClass для pod

""

hostPathsExporter.podExtraLabels

Метки, добавляемые ко всем создаваемым pod

{}

hostPathsExporter.podAnnotations

Аннотации, добавляемые ко всем создаваемым pod

{}

hostPathsExporter.podSecurityContext

Параметры контекста безопасности pod

{}

hostPathsExporter.securityContext

Параметры контекста безопасности контейнера

privileged: true
readOnlyRootFilesystem: true
capabilities:
  add:
    - SYS_ADMIN

hostPathsExporter.extraVolumes

Дополнительные тома (Volume) для pod

[]

hostPathsExporter.extraVolumeMounts

Список дополнительных точек монтирования томов (VolumeMounts) в контейнере

[]

hostPathsExporter.hostPathVolumeType

Режим проверки путей на хосте перед их монтированием. Может потребоваться для RKE, если pod не запускаются

Directory

hostPathsExporter.watchDirectories

Список каталогов хоста для сканирования PEM-файлов сертификатов

[]

hostPathsExporter.watchSpecificExtensionDirectories

Список каталогов хоста для сканирования файлов с определенным расширением

[]

hostPathsExporter.watchFiles

Список путей к файлам хоста с PEM-сертификатами для мониторинга

[]

hostPathsExporter.watchKubeconfFiles

Список путей к kubeconfig-файлам хоста для сканирования встроенных сертификатов

[]

hostPathsExporter.env

Дополнительные переменные окружения для контейнеров.
Пример конфигурации:

- name: GOMAXPROCS
  value: "1"

[]

hostPathsExporter.daemonSets

Список спецификаций для генерации ресурсов DaemonSet, определяющий параметры запуска, селекторы узлов и пути монтирования сертификатов для агентов экспортера. Ключ используется как имя. Значение — карта для переопределения настроек по умолчанию из hostPathsExporter.*.
Пример конфигурации:

cp:
  nodeSelector:
    node-role.kubernetes.io/control-plane: ""
  tolerations:
    - effect: NoSchedule
      key: node-role.kubernetes.io/master
      operator: Exists
    - effect: NoSchedule
      key: node-role.kubernetes.io/control-plane
      operator: Exists
  watchFiles:
    - /var/lib/kubelet/pki/kubelet-client-current.pem
    - /etc/kubernetes/pki/apiserver.crt
    - /etc/kubernetes/pki/apiserver-etcd-client.crt
    - /etc/kubernetes/pki/apiserver-kubelet-client.crt
    - /etc/kubernetes/pki/ca.crt
    - /etc/kubernetes/pki/ingress-ca.crt
    - /etc/kubernetes/pki/front-proxy-ca.crt
    - /etc/kubernetes/pki/front-proxy-client.crt
    - /etc/kubernetes/pki/etcd/ca.crt
    - /etc/kubernetes/pki/etcd/healthcheck-client.crt
    - /etc/kubernetes/pki/etcd/peer.crt
    - /etc/kubernetes/pki/etcd/server.crt
  watchKubeconfFiles:
    - /etc/kubernetes/admin.conf
    - /etc/kubernetes/controller-manager.conf
    - /etc/kubernetes/scheduler.conf
workers:
  nodeSelector:
    node-role.kubernetes.io/worker: ""
  watchFiles:
    - /var/lib/kubelet/pki/kubelet-client-current.pem
    - /etc/kubernetes/pki/ca.crt
cp:
  nodeSelector:
    node-role.kubernetes.io/control-plane: ""
  tolerations:
    - effect: NoSchedule
      key: node-role.kubernetes.io/master
      operator: Exists
    - effect: NoSchedule
      key: node-role.kubernetes.io/control-plane
      operator: Exists
  watchFiles:
    - /var/lib/kubelet/pki/kubelet-client-current.pem
    - /etc/kubernetes/pki/apiserver.crt
    - /etc/kubernetes/pki/apiserver-etcd-client.crt
    - /etc/kubernetes/pki/apiserver-kubelet-client.crt
    - /etc/kubernetes/pki/ca.crt
    - /etc/kubernetes/pki/ingress-ca.crt
    - /etc/kubernetes/pki/front-proxy-ca.crt
    - /etc/kubernetes/pki/front-proxy-client.crt
    - /etc/kubernetes/pki/etcd/ca.crt
    - /etc/kubernetes/pki/etcd/healthcheck-client.crt
    - /etc/kubernetes/pki/etcd/peer.crt
    - /etc/kubernetes/pki/etcd/server.crt
  watchKubeconfFiles:
    - /etc/kubernetes/admin.conf
    - /etc/kubernetes/controller-manager.conf
    - /etc/kubernetes/scheduler.conf
workers:
  nodeSelector:
    node-role.kubernetes.io/worker: ""
  watchFiles:
    - /var/lib/kubelet/pki/kubelet-client-current.pem
    - /etc/kubernetes/pki/ca.crt

podListenPort – TCP-порт для прослушивания pod#

Параметр

Описание

Значение по умолчанию

podListenPort

TCP-порт для прослушивания pod

9793

hostNetwork – использование сети хоста#

Параметр

Описание

Значение по умолчанию

hostNetwork

Включение режима hostNetwork

false

webConfiguration – конфигурация HTTP-сервера для TLS и аутентификации#

Параметр

Описание

Значение по умолчанию

webConfiguration

Конфигурация HTTP-сервера для включения TLS и аутентификации (пароль, mTLS)

""

webConfigurationExistingSecret – загрузка конфигурации HTTP-сервера из существующего Secret#

Параметр

Описание

Значение по умолчанию

webConfigurationExistingSecret

Загрузка конфигурации HTTP-сервера из существующего Secret

""

service – настройки Service#

Параметр

Описание

Значение по умолчанию

service.create

Установка Service для всех экземпляров Deployment и DaemonSet

true

service.headless

Создание Headless-Service

false

service.port

TCP-порт для экспорта Service

9793

service.annotations

Аннотации, добавляемые ко всем создаваемым ресурсам

{}

service.extraLabels

Метки, добавляемые ко всем создаваемым ресурсам

{}

prometheusServiceMonitor – параметры ServiceMonitor#

Параметр

Описание

Значение по умолчанию

prometheusServiceMonitor.create

Создание ServiceMonitor для добавления в Prometheus

true

prometheusServiceMonitor.scrapeInterval

Интервал сбора метрик

60s

prometheusServiceMonitor.scrapeTimeout

Тайм-аут сбора метрик

30s

prometheusServiceMonitor.extraLabels

Метки, добавляемые ко всем создаваемым ресурсам

{}

prometheusServiceMonitor.extraAnnotations

Аннотации, добавляемые ко всем создаваемым ресурсам

{}

prometheusServiceMonitor.metricRelabelings

Правила фильтрации и преобразования меток, применяемые к собранным метрикам в ServiceMonitor

[]

prometheusServiceMonitor.relabelings

Правила фильтрации и преобразования меток, применяемые к целям сбора до начала сбора метрик в ServiceMonitor

[]

prometheusServiceMonitor.scheme

Схема подключения для ServiceMonitor

http

prometheusServiceMonitor.tlsConfig

Пользовательская TLS-конфигурация для ServiceMonitor

{}

prometheusPodMonitor – параметры PodMonitor#

Параметр

Описание

Значение по умолчанию

prometheusPodMonitor.create

Создание PodMonitor для добавления в Prometheus (используется вместо ServiceMonitor)

false

prometheusPodMonitor.scrapeInterval

Интервал сбора метрик

60s

prometheusPodMonitor.scrapeTimeout

Тайм-аут сбора метрик

30s

prometheusPodMonitor.extraLabels

Метки, добавляемые ко всем создаваемым ресурсам

{}

prometheusPodMonitor.metricRelabelings

Дополнительные свойства эндпоинта, такие как relabelings и metricRelabelings

[]

prometheusPodMonitor.relabelings

Дополнительные свойства эндпоинта, такие как relabelings и metricRelabelings

[]

prometheusPodMonitor.scheme

Схема подключения для PodMonitor

http

prometheusPodMonitor.tlsConfig

Пользовательская TLS-конфигурация для PodMonitor

{}

prometheusRules – параметры интеграции с Prometheus и сбора метрик#

Параметр

Описание

Значение по умолчанию

prometheusRules.create

Установка объекта PrometheusRule для оповещений об истечении сертификатов

true

prometheusRules.alertOnReadErrors

Создание правила оповещения X509ExporterReadErrors для уведомления о невозможности чтения файлов или аутентификации с API

true

prometheusRules.readErrorsSeverity

Уровень критичности оповещений, срабатывающих при возникновении ошибок чтения файлов сертификатов экспортером X509ExporterReadErrors

warning

prometheusRules.alertOnCertificateErrors

Создание правила оповещения CertificateError для уведомления о невозможности декодирования или обработки сертификата. Требует также включения exposePerCertificateErrorMetrics

true

prometheusRules.certificateErrorsSeverity

Уровень критичности оповещений CertificateError

warning

prometheusRules.certificateRenewalsSeverity

Уровень критичности оповещений CertificateRenewal

warning

prometheusRules.certificateExpirationsSeverity

Уровень критичности оповещений CertificateExpiration

critical

prometheusRules.warningDaysLeft

Количество дней до истечения для предупреждающего оповещения

28

prometheusRules.criticalDaysLeft

Количество дней до истечения для критического оповещения

14

prometheusRules.extraLabels

Метки, добавляемые ко всем создаваемым ресурсам

app.kubernetes.io/part-of: dropapp-monitoring
prometheus: k8s

prometheusRules.alertExtraLabels

Метки, добавляемые ко всем создаваемым ресурсам

prometheus: dropapp-monitoring/k8s

prometheusRules.alertExtraAnnotations

Аннотации, добавляемые ко всем создаваемым ресурсам

{}

prometheusRules.rulePrefix

Дополнительный префикс для правил PrometheusRule

""

prometheusRules.disableBuiltinAlertGroup

Пропуск всех встроенных оповещений при использовании extraAlertGroups

false

prometheusRules.extraAlertGroups

Дополнительные группы оповещений для пользовательской конфигурации.
Пример конфигурации:

- name: custom.rules
  rules:
  - alert: X509ExporterReadErrorsCustom
    expr: x509_read_errors > 0
    for: 30m
    labels:
      severity: warning
    annotations:
      summary: Error events exist for this x509-certificate-exporter
      description: This x509-certificate-exporter instance has experienced parse errors in the past.

[]

extraLabels – общие метки для всех создаваемых ресурсов#

Параметр

Описание

Значение по умолчанию

extraLabels

Метки, добавляемые ко всем создаваемым ресурсам

{}

podExtraLabels – метки, добавляемые ко всем создаваемым pod#

Параметр

Описание

Значение по умолчанию

podExtraLabels

Метки, добавляемые ко всем создаваемым pod

{}

podAnnotations – аннотации, добавляемые ко всем создаваемым pod#

Параметр

Описание

Значение по умолчанию

podAnnotations

Аннотации, добавляемые ко всем создаваемым pod.
Пример конфигурации:

prometheus.io/port: "9793"
prometheus.io/scrape: "true"

{}

priorityClassName – имя класса приоритета pod#

Параметр

Описание

Значение по умолчанию

priorityClassName

Класс приоритета pod по умолчанию (может быть переопределен в secretsExporter и hostPathsExporter)

""

extraVolumes – дополнительные Volume для всех pod#

Параметр

Описание

Значение по умолчанию

extraVolumes

Дополнительные тома (Volume) для pod

[]

extraVolumeMounts – дополнительные точки монтирования томов#

Параметр

Описание

Значение по умолчанию

extraVolumeMounts

Список дополнительных точек монтирования томов (VolumeMounts) в контейнере

[]

psp – настройки Pod Security Policy#

Параметр

Описание

Значение по умолчанию

psp.create

Создание объектов политики безопасности pod

false

rbac – настройки RBAC (управление доступом на основе ролей)#

Параметр

Описание

Значение по умолчанию

rbac.create

Создание объектов RBAC (включая ServiceAccount)

true

rbac.secretsExporter.serviceAccountName

Имя ServiceAccount

~

rbac.secretsExporter.serviceAccountAnnotations

Аннотации для ServiceAccount

{}

rbac.secretsExporter.clusterRoleAnnotations

Аннотации для ClusterRole

{}

rbac.secretsExporter.clusterRoleBindingAnnotations

Аннотации для ClusterRoleBinding

{}

rbac.hostPathsExporter.serviceAccountName

Имя ServiceAccount

~

rbac.hostPathsExporter.serviceAccountAnnotations

Аннотации для ServiceAccount

{}

rbac.hostPathsExporter.clusterRoleAnnotations

Аннотации для ClusterRole

{}

rbac.hostPathsExporter.clusterRoleBindingAnnotations

Аннотации для ClusterRoleBinding

{}

rbacProxy – настройки kube-rbac-proxy#

Параметр

Описание

Значение по умолчанию

rbacProxy.enabled

Использование kube-rbac-proxy для экспорта экспортеров

false

rbacProxy.image.repository

Путь к репозиторию контейнерного образа kube-rbac-proxy

'{{ .Values.global.image.registry }}/{{ .Values.global.image.repository }}/{{ .Values.global.dappVersion }}/dapp-kube-rbac-proxy/kube-rbac-proxy'

rbacProxy.image.tag

Тег образа контейнера

v0.22.1

rbacProxy.image.pullPolicy

Политика загрузки образа.
Возможные значения: IfNotPresent, Always, Never

IfNotPresent

rbacProxy.upstreamListenPort

Порт прослушивания экспортера внутри pod kube-rbac-proxy

9091

rbacProxy.resources

Запросы и ограничения ресурсов для pod

limits:
  cpu: 100m
  memory: 40Mi
requests:
  cpu: 10m
  memory: 20Mi

rbacProxy.securityContext

Параметры контекста безопасности контейнера kube-rbac-proxy

runAsUser: 65534
runAsGroup: 65534
runAsNonRoot: true
readOnlyRootFilesystem: true
capabilities:
  drop:
  - ALL

kubeVersion – переопределение версии Kubernetes#

Параметр

Описание

Значение по умолчанию

kubeVersion

Переопределение определения версии Kubernetes

""