Конфигурация Istio в окружении Platform V Backend#

Расположение на среде – репозиторий конфигурации компонента, файл conf/config/parameters/dcgn.istio.all.conf.

Наименование параметра в файле конфигурирования

Описание параметра

Ограничения

Значение по умолчанию или глобальные параметры при установке Deploy tools

Версия ПО

dcgn.ose.istio.ingress.route.spec.host.https-healthcheck.enabled

Признак необходимости разворачивать отдельный route для healthcheck

true

4.0.0

Параметры для Ingress/Route

dcgn.ose.istio.ingress.route.spec.host.https.appFQDN

Путь для обращения к приложению (route)

docgen--

1.0

dcgn.ose.istio.ingress.route.spec.host.https-healthcheck.appFQDN

Путь для обращения к healthcheck приложению (route)

healthcheck-docgen--

4.0.0

Параметры Istio control plane

dcgn.ose.istio.control-plane-project

Наименования проекта control plane

1.0

dcgn.ose.istio.control-plane-istiod-service

Адрес сервиса istio Control Plane

1.0

dcgn.ose.istio.control-plane-istiod-port

Порт сервиса istio Control Plane

1.1

dcgn.ose.istio.control-plane-jaeger-service

Адрес сервиса jaeger Control Plane

1.1

dcgn.ose.istio.control-plane-jaeger-port

Порт сервиса jaeger Control Plane

1.1

Параметры для Gateway

dcgn.ose.istio.egress.common.internal-port

Внутренний порт для egress

{ lookup(„custom_vars“, „global.ose.platform.egress.http.port“) }}

1.0

dcgn.ose.istio.ingress.common.internal-port

Внутренний порт для ingress

11443

1.0

dcgn.ose.istio.ingress.common.internal-healthcheck-port

Внутренний порт для ingress healthcheck

11444

4.0.0

Параметры egress deployment

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.resources.limits.cpu

Ресурсы ЦП

Значения и единицы измерения соответствуют правилам Kubernetes

1100m

1.0

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.resources.limits.memory

Ресурсы оперативной памяти

Значения и единицы измерения соответствуют правилам Kubernetes

1024Mi

1.0

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.resources.limits.ephemeral-storage

Лимит для ephemeral-storage, задается в байтах

Можно указать абсолютное значение или значение с указанием суффикса: E, P, T, G, M, K. Также можно использовать двухсимвольные суффиксы: Ei, Pi, Ti, Gi, Mi, Ki. Например, следующие значения установят одинаковое ограничение:
- 128974848
- 129e6
- 129M
- 123Mi
Подробное описание приведено в документации Kubernetes

512Mi

1.2

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.resources.requests.cpu

Максимальные ресурсы ЦП

Значения и единицы измерения соответствуют правилам Kubernetes

200m

1.0

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.resources.requests.memory

Максимальные ресурсы оперативной памяти

Значения и единицы измерения соответствуют правилам Kubernetes

800Mi

1.0

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.resources.requests.ephemeral-storage

Стартовый объем ephemeral-storage, задается в байтах

Можно указать абсолютное значение или значение с указанием суффикса: E, P, T, G, M, K. Также можно использовать двухсимвольные суффиксы: Ei, Pi, Ti, Gi, Mi, Ki. Например, следующие значения установят одинаковое ограничение:
- 128974848
- 129e6
- 129M
- 123Mi
Подробное описание приведено в документации Kubernetes

128Mi

1.2

dcgn.ose.istio.egress.deployment.spec.replicas

Количество копий

2

1.0

dcgn.ose.istio.egress.deployment.spec.revisionHistoryLimit

Количество хранимых ревизий

1.0

dcgn.ose.istio.egress.deployment.spec.strategy.rollingUpdate.maxUnavailable

Максимальное количество недоступных реплик при обновлении

1.0

dcgn.ose.istio.egress.deployment.spec.strategy.rollingUpdate.maxSurge

Максимальное количество реплик сверх запланированного при обновлении

1.0

dcgn.ose.istio.egress.deployment.spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key

Ключ, на основе которого определяется, на какие узлы модуль может быть распределен

app

1.1

dcgn.ose.istio.egress.deployment.spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.value

Значение по ключу, на основе которого определяется, на какие узлы модуль может быть распределен

1.1

Параметры ресурсов vault-agent

1.4.2

dcgn.ose.istio.egress.deployment.spec.template.metadata.annotations.vault.hashicorp.com.agent-limits-cpu

Запрашиваемый объем ресурсов ЦП

100m

1.4.2

dcgn.ose.istio.egress.deployment.spec.template.metadata.annotations.vault.hashicorp.com.agent-limits-mem

Запрашиваемый объем ресурсов оперативной памяти

128Mi

1.4.2

dcgn.ose.istio.egress.deployment.spec.template.metadata.annotations.vault.hashicorp.com.agent-requests-cpu

Лимит ресурсов ЦП

50m

1.4.2

dcgn.ose.istio.egress.deployment.spec.template.metadata.annotations.vault.hashicorp.com.agent-requests-mem

Лимит ресурсов оперативной памяти

64Mi

1.4.2

securityContext уровня POD

3.0.0.0

dcgn.ose.istio.egress.deployment.spec.template.spec.securityContext.fsGroup

Группа владения для подключаемых томов

10001

3.0.0.0

dcgn.ose.istio.egress.deployment.spec.template.spec.securityContext.runAsUser

UID используемый для запуска контейнера

10001

3.0.0.0

dcgn.ose.istio.egress.deployment.spec.template.spec.securityContext.runAsGroup

GID используемый для запуска контейнера

10001

3.0.0.0

securityContext контейнера istio-proxy

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.istio-proxy.securityContext.runAsUser

UID используемый для запуска контейнера

10001

3.0.0.0

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.istio-proxy.securityContext.runAsGroup

GID используемый для запуска контейнера

10001

3.0.0.0

securityContext контейнера fluent-bit-sidecar

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.fluent-bit-sidecar.securityContext.runAsUser

UID используемый для запуска контейнера

10001

3.0.0.0

dcgn.ose.istio.egress.deployment.spec.template.spec.containers.fluent-bit-sidecar.securityContext.runAsGroup

GID используемый для запуска контейнера

10001

3.0.0.0

Параметры ingress deployment

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.resources.limits.cpu

Ресурсы ЦП

Значения и единицы измерения соответствуют правилам Kubernetes

2800m

1.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.resources.limits.memory

Ресурсы оперативной памяти

Значения и единицы измерения соответствуют правилам Kubernetes

1024Mi

1.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.resources.limits.ephemeral-storage

Лимит для ephemeral-storage, задается в байтах

Можно указать абсолютное значение или значение с указанием суффикса: E, P, T, G, M, K. Также можно использовать двухсимвольные суффиксы: Ei, Pi, Ti, Gi, Mi, Ki. Например, следующие значения установят одинаковое ограничение:
- 128974848
- 129e6
- 129M
- 123Mi
Подробное описание приведено в документации Kubernetes

512Mi

1.2

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.resources.requests.cpu

Максимальные ресурсы ЦП

Значения и единицы измерения соответствуют правилам Kubernetes

1000m

1.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.resources.requests.memory

Максимальные ресурсы оперативной памяти

Значения и единицы измерения соответствуют правилам Kubernetes

800Mi

1.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.resources.requests.ephemeral-storage

Стартовый объем ephemeral-storage, задается в байтах

Можно указать абсолютное значение или значение с указанием суффикса: E, P, T, G, M, K. Также можно использовать двухсимвольные суффиксы: Ei, Pi, Ti, Gi, Mi, Ki. Например, следующие значения установят одинаковое ограничение:
- 128974848
- 129e6
- 129M
- 123Mi
Подробное описание приведено в документации Kubernetes

128Mi

1.2

dcgn.ose.istio.ingress.deployment.spec.replicas

Количество копий

3

1.0

dcgn.ose.istio.ingress.deployment.spec.revisionHistoryLimit

Количество хранимых ревизий

1.0

dcgn.ose.istio.ingress.deployment.spec.strategy.rollingUpdate.maxUnavailable

Максимальное количество недоступных реплик при обновлении

1.0

dcgn.ose.istio.ingress.deployment.spec.strategy.rollingUpdate.maxSurge

Максимальное количество реплик сверх запланированного при обновлении

1.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key

Ключ, на основе которого определяется, на какие узлы модуль может быть распределен

app

1.1

dcgn.ose.istio.ingress.deployment.spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.value

Значение по ключу, на основе которого определяется, на какие узлы модуль может быть распределен

1.1

Параметры ресурсов vault-agent

1.4.2

dcgn.ose.istio.ingress.deployment.spec.template.metadata.annotations.vault.hashicorp.com.agent-limits-cpu

Запрашиваемый объем ресурсов ЦП

100m

1.4.2

dcgn.ose.istio.ingress.deployment.spec.template.metadata.annotations.vault.hashicorp.com.agent-limits-mem

Запрашиваемый объем ресурсов оперативной памяти

128Mi

1.4.2

dcgn.ose.istio.ingress.deployment.spec.template.metadata.annotations.vault.hashicorp.com.agent-requests-cpu

Лимит ресурсов ЦП

50m

1.4.2

dcgn.ose.istio.ingress.deployment.spec.template.metadata.annotations.vault.hashicorp.com.agent-requests-mem

Лимит ресурсов оперативной памяти

64Mi

1.4.2

securityContext уровня POD

3.0.0.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.securityContext.fsGroup

Группа владения для подключаемых томов

10001

3.0.0.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.securityContext.runAsUser

UID используемый для запуска контейнера

10001

3.0.0.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.securityContext.runAsGroup

GID используемый для запуска контейнера

10001

3.0.0.0

securityContext контейнера istio-proxy

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.istio-proxy.securityContext.runAsUser

UID используемый для запуска контейнера

10001

3.0.0.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.istio-proxy.securityContext.runAsGroup

GID используемый для запуска контейнера

10001

3.0.0.0

securityContext контейнера fluent-bit-sidecar

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.fluent-bit-sidecar.securityContext.runAsUser

UID используемый для запуска контейнера

10001

3.0.0.0

dcgn.ose.istio.ingress.deployment.spec.template.spec.containers.fluent-bit-sidecar.securityContext.runAsGroup

GID используемый для запуска контейнера

10001

3.0.0.0

Авторизация внешних/внутренних вызовов

dcgn.ose.istio.ingress.common.cn_validation.enabled

Признак включения валидации по CN

Возможные значения: true, false

true

4.0.0

dcgn.ose.istio.ingress.envoy_filter.regex_match.client.cn

CN потребителей для Авторизации внешних вызовов

Маска CN=cn:max_program_size;…;…

необходимо задать значение

3.0.0.0

dcgn.ose.istio.ingress.envoy_filter.regex_match.balancer.cn

CN балансировщика для Авторизации внешних вызовов

Маска CN=cn:max_program_size;…;…

необходимо задать значение

4.0.0

PodDisruptionBudget, минимальное количество доступных pods

dcgn.ose.istio.egress.poddisruptionbudget.spec.minAvailable

Количество модулей, которые все еще должны быть доступны после вытеснения модуля, учитывая отсутствие этого модуля.
Рекомендуется устанавливать значение равным половине количеству реплик данного pod

Выражается абсолютным числом

1.1

dcgn.ose.istio.ingress.poddisruptionbudget.spec.minAvailable

Количество модулей, которые все еще должны быть доступны после вытеснения модуля, учитывая отсутствие этого модуля.
Рекомендуется устанавливать значение равным половине количеству реплик данного pod

Выражается абсолютным числом

1.1

Переключатель mTLS режима внутри namespace

dcgn.ose.istio.mtls.mode.strict

Режим работы по mTLS внутри проекта

Возможные значения: true, false

true

1.0

Настройки egress для проксирования подключения к Kafka

dcgn.ose.istio.egress.logger.kafka.bootstrap.servers

Серверы Apache Kafka для подключения

4.0.0

dcgn.ose.istio.egress.logger.kafka.virtual.port

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

19090

4.0.0

Настройки журналирования

dcgn.ose.istio.pilot-agent.logging.level

Уровень журналирования pilot-agent

Указывается в формате <scope>:<level>,<scope>:<level>

all:

1.4

dcgn.ose.istio.pilot-agent.logging.stdout.enabled

Переключатель вывода логов в stdout

Возможные значения: true, false

true

1.4

dcgn.ose.istio.envoy.logging.level

Уровень журналирования envoy

Возможные значения: trace, debug, info, warn/warning, error, critical, off

1.4

dcgn.ose.istio.envoy.component.logging.level

Уровень журналирования компонентов envoy

Указывается в формате <scope>:<level>,<scope>:<level>

misc:error

1.4

Ротация журналов istio

dcgn.ose.istio.log_rotate_max_size

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

10

1.4.3

dcgn.ose.istio.log_rotate_max_backups

Максимальное количество файлов

3

1.4.3

dcgn.ose.istio.log_rotate_max_age

Длительность хранения в днях

1

1.4.3

Настройки egress для БД

dcgn.ose.istio.egress.jdbc.postgres.servers

Параметр серверов postgres в формате dns:ip:external_port:external_protocol:internal_port:internal_protocol;…;…

1.4

Настройки ingress контроллера

dcgn.platform.k8s.ingress-proxy.class

Параметр отвечающий за выбор аннотаций ingress proxy (HAProxy или Nginx)

Возможные значения: nginx, haproxy

3.0.0.0

dcgn.platform.k8s.ingress.metadata.annotations.timeout-server

Время ожидания сервера для Ingress

50s

3.0.0.0

dcgn.platform.k8s.ingress.metadata.annotations.proxy-read-timeout

Время ожидания прокси-сервера для чтения

60s

3.0.0.0

dcgn.platform.k8s.ingress.metadata.annotations.proxy-connect-timeout

Время ожидания подключения прокси-сервера

60s

3.0.0.0

dcgn.platform.k8s.ingress.metadata.annotations.proxy-send-timeout

Время ожидания отправки прокси-сервера

60s

3.0.0.0

Сбор метрик с IGEG

dcgn.ose.istio.prometheus.io.path

Путь для сбора метрик с istio

/stats/prometheus

4.0.0

dcgn.ose.istio.prometheus.io.port

Порт для сбора метрик

15090

4.0.0

dcgn.ose.istio.prometheus.io.scrape

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

true

4.0.0

Сбор метрик с HashiCorp Vault

dcgn.ose.istio.vault.agent-inject-custom-listener

Хост:порт используемый для экспорта метрик

0.0.0.0:8101

4.0.0

dcgn.ose.istio.vault.agent-telemetry-prometheus_retention_time

Продолжительность удержания метрик

5m

4.0.0

dcgn.ose.istio.vault.prometheus.io.path

Путь для сбора метрик с istio

/agent/v1/metrics

4.0.0

dcgn.ose.istio.vault.prometheus.io.port

Порт для сбора метрик

4.0.0

dcgn.ose.istio.vault.prometheus.io.scrape

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

true

4.0.0

Если в инсталляции не будет настроена интеграция с системой управления секретами, то необходимо сконфигурировать сертификаты для mTLS.

Наименование параметра в файле конфигурирования

Описание параметра

Значение по умолчанию или глобальные параметры при установке Deploy tools

Версия ПО

Сертификаты для istio-egress

dcgn.ssl.ose.istio.keyStore.egress.keyStoreFromFile

Наименование файла-хранилища сертификатов

1.0

dcgn.ssl.ose.istio.keyStore.egress.password

Пароль хранилища

1.0

dcgn.ssl.ose.istio.keyStore.egress.certAlias

Алиас сертификата

1.0

dcgn.ssl.ose.istio.keyStore.egress.rootCertAlias

Алиас удостоверяющего центра

1.0

Сертификаты для istio-ingress

dcgn.ssl.ose.istio.keyStore.ingress.keyStoreFromFile

Наименование файла-хранилища сертификатов

1.0

dcgn.ssl.ose.istio.keyStore.ingress.password

Пароль хранилища

1.0

dcgn.ssl.ose.istio.keyStore.ingress.certAlias

Алиас сертификата

1.0

dcgn.ssl.ose.istio.keyStore.ingress.rootCertAlias

Алиас удостоверяющего центра

1.0