Модуль не включен по умолчанию в каком-либо наборе модулей.

Как явно включить или отключить модуль…

Чтобы явно включить или выключить модуль istio, установите spec.enabled в true или false в ModuleConfig/istio (создайте, при необходимости), или воспользуйтесь командой deckhouse-controller module в поде d8-system/deckhouse.

Пример включения модуля:

  • с помощью ресурса ModuleConfig:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: istio
    spec:
      enabled: true
    
  • с помощью команды deckhouse-controller (требуется kubectl, настроенный на работу с кластером):

    kubectl -ti -n d8-system exec deploy/deckhouse -c deckhouse -- deckhouse-controller module enable istio
    

Пример выключения модуля:

  • с помощью ресурса ModuleConfig:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: istio
    spec:
      enabled: false
    
  • с помощью команды deckhouse-controller (требуется kubectl, настроенный на работу с кластером):

    kubectl -ti -n d8-system exec deploy/deckhouse -c deckhouse -- deckhouse-controller module disable istio
    

Чтобы настроить модуль, используйте custom resource ModuleConfig с именем istio (подробнее о настройке Deckhouse…).

Пример ресурса ModuleConfig/istio для настройки модуля:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: istio
spec:
  version: 2
  enabled: true
  settings: # <-- Параметры модуля из раздела "Параметры" ниже.

Параметры

Версия схемы: 2

  • additionalVersionsмассив строк

    Дополнительные версии control plane Istio, которые будут установлены. Они будут обслуживать namespace’ы, где явно указана версия с помощью лейбла istio.io/rev=.

    По умолчанию: []

  • allianceобъект

    Общие настройки для федерации и мультикластера.

    Доступно только в enterprise edition.

    • alliance.ingressGatewayобъект

      Параметры для ingressgateway.

      Доступно только в enterprise edition.

      • alliance.ingressGateway.inletстрока

        Способ публикации ingressgateway:

        • LoadBalancer — рекомендуется в случае, если площадка облачная и поддерживает LB;
        • NodePort — для площадок без LB.

        По умолчанию: "LoadBalancer"

        Доступно только в enterprise edition.

        Допустимые значения: LoadBalancer, NodePort

        Пример:

        inlet: LoadBalancer
        
      • alliance.ingressGateway.nodePortобъект

        Специальные настройки для ingressgateway с инлетом NodePort.

        Доступно только в enterprise edition.

        Примеры:

        nodePort: {}
        
        nodePort:
          port: 30001
        
        • alliance.ingressGateway.nodePort.portцелочисленный

          Статичный порт для сервиса с типом NodePort. Должен быть из диапазона, заданного аргументом kube-apiserver --service-node-port-range (по умолчанию 30000-32767).

          Допустимые значения: 1024 <= X <= 65535

      • alliance.ingressGateway.nodeSelectorобъект

        Селектор для DaemonSet’а ingressgateway.

        Структура, аналогичная spec.nodeSelector пода Kubernetes.

        Доступно только в enterprise edition.

        Пример:

        nodeSelector:
          type: ingress
        
      • alliance.ingressGateway.serviceAnnotationsобъект

        Дополнительные аннотации для сервиса ingressgateway.

        Полезно, например, для настройки локального LB в Yandex Cloud (аннотация yandex.cpi.flant.com/listener-subnet-id).

        Доступно только в enterprise edition.

        Пример:

        serviceAnnotations:
          yandex.cpi.flant.com/listener-subnet-id: xyz-123
        
      • alliance.ingressGateway.tolerationsмассив объектов

        tolerations для DaemonSet’а ingressgateway.

        Структура, аналогичная spec.tolerations пода Kubernetes.

        Доступно только в enterprise edition.

        Пример:

        tolerations:
        - operator: Exists
        
        • alliance.ingressGateway.tolerations.effectстрока
        • alliance.ingressGateway.tolerations.keyстрока
        • alliance.ingressGateway.tolerations.operatorстрока
        • alliance.ingressGateway.tolerations.tolerationSecondsцелочисленный
        • alliance.ingressGateway.tolerations.valueстрока
  • authобъект

    Опции, связанные с аутентификацией или авторизацией в приложении.

    Пример:

    auth:
      externalAuthentication:
        authURL: https://dex.d8.svc.cluster.local/dex/auth
        authSignInURL: https://example.com/dex/sign_in
      allowedUserGroups:
      - admins
    
    • auth.allowedUserGroupsмассив строк

      Массив групп, пользователям которых позволен доступ в публичные веб-интерфейсы модуля.

      Используется, если включен модуль user-authn или параметр externalAuthentication.

      Внимание! При использовании совместно с модулем user-authn необходимо также добавить разрешенные группы в соответствующее поле в настройках DexProvider.

    • auth.externalAuthenticationобъект

      Параметры для подключения внешней аутентификации (используется механизм NGINX Ingress external-auth, работающий на основе модуля Nginx auth_request.

      Внешняя аутентификация включается автоматически, если включен модуль user-authn.

      • auth.externalAuthentication.authSignInURLстрока

        URL, куда будет перенаправлен пользователь для прохождения аутентификации (если сервис аутентификации вернул код ответа HTTP, отличный от 200).

        Пример:

        authSignInURL: https://example.com/dex/sign_in
        
      • auth.externalAuthentication.authURLстрока

        URL сервиса аутентификации. Если пользователь прошел аутентификацию, сервис должен возвращать код ответа HTTP 200.

        Пример:

        authURL: https://example.com/dex/auth
        
    • auth.satisfyAnyбулевый

      Разрешает пройти только одну из аутентификаций.

      В комбинации с опцией whitelistSourceRanges позволяет считать авторизованными всех пользователей из указанных сетей без ввода логина и пароля.

      По умолчанию: false

      Пример:

      satisfyAny: true
      
    • auth.whitelistSourceRangesмассив строк

      Массив адресов в формате CIDR, которым разрешено проходить авторизацию в публичные веб-интерфейсы модуля.

      Пример:

      whitelistSourceRanges:
      - 1.1.1.1/32
      
  • caобъект

    Явно заданный корневой сертификат, который будет использован для подписывания индивидуальных сертификатов сервисов в случае включения MTLS.

    • ca.certстрока

      Корневой или промежуточный сертификат в формате PEM.

    • ca.chainстрока

      Цепочка сертификатов в формате PEM на случай, если cert — промежуточный сертификат.

    • ca.keyстрока

      Ключ корневого сертификата в формате PEM.

    • ca.rootстрока

      Корневой сертификат в формате PEM на случай, если cert — промежуточный сертификат.

  • controlPlaneобъект

    Настройки для компонента istiod.

    • controlPlane.nodeSelectorобъект

      Опциональный селектор для компонентa istiod. Структура, аналогичная spec.nodeSelector пода Kubernetes.

      Если ничего не указано или указано false, будет использоваться автоматика.

    • controlPlane.replicasManagementобъект

      Настройки управления репликами и горизонтальным масштабированием istiod.

      Примеры:

      replicasManagement:
        mode: Standard
      
      replicasManagement:
        mode: Static
        static:
          replicas: 3
      
      replicasManagement:
        mode: HPA
        hpa:
          minReplicas: 2
          maxReplicas: 5
          metrics:
          - type: CPU
            targetAverageUtilization: 80
      
      • controlPlane.replicasManagement.hpaобъект

        Параметры управления репликами и масштабированием в режиме HPA.

        • controlPlane.replicasManagement.hpa.maxReplicasчисло

          Обязательный параметр

          Максимальное количество реплик, которое может быть установлено HPA. Не может быть меньше minReplicas.

          Допустимые значения: 1 <= X

        • controlPlane.replicasManagement.hpa.metricsмассив объектов

          Обязательный параметр

          HPA будет основываться на этих метриках при принятии решения об увеличении или уменьшении количества реплик.

          • controlPlane.replicasManagement.hpa.metrics.targetAverageUtilizationчисло

            Обязательный параметр

            Целевое значение средней загрузки CPU во всех репликах. Задается в процентах от Requests CPU.

            Допустимые значения: 1 <= X <= 100

          • controlPlane.replicasManagement.hpa.metrics.typeстрока

            Обязательный параметр

            Тип метрики.

            Допустимые значения: CPU

        • controlPlane.replicasManagement.hpa.minReplicasчисло

          Обязательный параметр

          Минимальное количество реплик, которое может быть установлено HPA.

          Допустимые значения: 1 <= X

      • controlPlane.replicasManagement.modeстрока

        Режим работы с репликами:

        • Standard — режим управления репликами и масштабированием в соответствии с глобальным режимом отказоустойчивости (параметр highAvailability);
        • Static — режим, где количество реплик указывается явно (параметр static.replicas);
        • HPA — режим, где количество реплик рассчитывается автоматически с помощью HPA на основе загрузки CPU. Настраивается в секции параметров hpa.

        По умолчанию: "Standard"

        Допустимые значения: Standard, Static, HPA

      • controlPlane.replicasManagement.staticобъект

        Параметры управления репликами и масштабированием в режиме Static.

        • controlPlane.replicasManagement.static.replicasчисло

          Обязательный параметр

          Желаемое количество реплик.

          Допустимые значения: 1 <= X

    • controlPlane.resourcesManagementобъект

      Настройки запросов (requests) и ограничений (limits) использования CPU и памяти подами istiod.

      Примеры:

      resourcesManagement:
        mode: VPA
        vpa:
          mode: Auto
          cpu:
            min: 50m
            max: 2
            limitRatio: 1.5
          memory:
            min: 256Mi
            max: 2Gi
            limitRatio: 1.5
      
      resourcesManagement:
        mode: Static
        static:
          requests:
            cpu: 55m
            memory: 256Mi
          limits:
            cpu: '2'
            memory: 2Gi
      
      • controlPlane.resourcesManagement.modeстрока

        Режим управления ресурсами:

        • Static — с помощью прямого указания запросов/ограничений (requests/limits). Настраивается в секции параметров static;
        • VPA — с помощью VPA. Настраивается в секции параметров vpa.

        По умолчанию: "VPA"

        Допустимые значения: VPA, Static

      • controlPlane.resourcesManagement.staticобъект

        Настройка управления ресурсами в режиме Static.

        • controlPlane.resourcesManagement.static.limitsобъект

          Настройка ограничений (limits) использования CPU и памяти.

          • controlPlane.resourcesManagement.static.limits.cpu

            Настройка ограничений использования CPU (CPU limits).

          • controlPlane.resourcesManagement.static.limits.memory

            Настройка ограничений использования памяти (memory limits).

        • controlPlane.resourcesManagement.static.requestsобъект

          Настройки запросов ресурсов (requests) подов.

          • controlPlane.resourcesManagement.static.requests.cpu

            Настройка запроса CPU (CPU requests).

          • controlPlane.resourcesManagement.static.requests.memory

            Настройка запроса памяти (memory requests).

      • controlPlane.resourcesManagement.vpaобъект

        Параметры управления ресурсами в режиме VPA.

        • controlPlane.resourcesManagement.vpa.cpuобъект

          Настройки VPA при работе с CPU.

          • controlPlane.resourcesManagement.vpa.cpu.limitRatioчисло

            Коэффициент расчета ограничений использования CPU относительно запросов (limits/requests).

            Применяется для расчета начальных ограничений использования CPU для пода (CPU limits).

            Если параметр указан, то VPA, при пересчете запросов CPU (CPU requests) будет пересчитывать ограничения использования CPU (CPU limits) сохраняя указанное соотношение ограничений к запросам (limits/requests).

          • controlPlane.resourcesManagement.vpa.cpu.max

            Максимальное значение, которое может выставить VPA для запроса CPU (CPU requests).

            По умолчанию: 2

          • controlPlane.resourcesManagement.vpa.cpu.min

            Минимальное значение, которое может выставить VPA для запроса CPU (CPU requests).

            По умолчанию: 50m

        • controlPlane.resourcesManagement.vpa.memoryобъект

          Настройки VPA при работе с памятью.

          • controlPlane.resourcesManagement.vpa.memory.limitRatioчисло

            Коэффициент расчета ограничений использования памяти относительно запросов (limits/requests).

            Применяется для расчета начальных ограничений использования памяти для пода (memory limits).

            Если параметр указан, то VPA, при пересчете запросов памяти (memory requests) будет пересчитывать ограничения использования памяти (memory limits) сохраняя указанное соотношение ограничений к запросам (limits/requests).

          • controlPlane.resourcesManagement.vpa.memory.max

            Максимальное значение, которое может выставить VPA для запроса к памяти (memory requests).

            По умолчанию: 2Gi

          • controlPlane.resourcesManagement.vpa.memory.min

            Минимальное значение, которое может выставить VPA для запроса к памяти (memory requests).

            По умолчанию: 256Mi

        • controlPlane.resourcesManagement.vpa.modeстрока

          Режим работы VPA.

          По умолчанию: "Auto"

          Допустимые значения: Initial, Auto

    • controlPlane.tolerationsмассив объектов

      Опциональные tolerations для компонента istiod.

      Структура, аналогичная spec.tolerations пода Kubernetes.

      Если ничего не указано или указано false, будет использоваться автоматика.

      • controlPlane.tolerations.effectстрока
      • controlPlane.tolerations.keyстрока
      • controlPlane.tolerations.operatorстрока
      • controlPlane.tolerations.tolerationSecondsцелочисленный
      • controlPlane.tolerations.valueстрока
  • enableHTTP10булевый

    Обрабатывать ли HTTP/1.0-запросы в sidecar-контейнерах или отвергать их с кодом ответа 426 Upgrade Required.

    По умолчанию: false

    Пример:

    enableHTTP10: true
    
  • federationобъект

    Параметры федерации с другими кластерами.

    Доступно только в enterprise edition.

    • federation.enabledбулевый

      Обозначить данный кластер как участник федерации (см. Включение федерации).

      По умолчанию: false

      Пример:

      enabled: true
      
  • globalVersionстрока

    Явно заданная версия control plane Istio, который обслуживает data plane по умолчанию (namespace с лейблом istio-injection=enabled, но не istio.io/rev=).

    По умолчанию: "1.19"

  • highAvailabilityбулевый

    Ручное управление режимом отказоустойчивости.

    По умолчанию режим отказоустойчивости определяется автоматически. Подробнее про режим отказоустойчивости.

    Пример:

    highAvailability: true
    
  • httpsобъект

    Тип сертификата, используемого для публичных веб-интерфейсов модуля.

    При использовании этого параметра полностью переопределяются глобальные настройки global.modules.https.

    Примеры:

    https:
      mode: CustomCertificate
      customCertificate:
        secretName: foobar
    
    https:
      mode: CertManager
      certManager:
        clusterIssuerName: letsencrypt
    
    • https.certManagerобъект
      • https.certManager.clusterIssuerNameстрока

        ClusterIssuer, используемый для Kiali/metadata-exporter (including SPIFFE endpoint)/api-proxy.

        Доступны letsencrypt, letsencrypt-staging, selfsigned, но вы можете определить свои.

        По умолчанию: "letsencrypt"

    • https.customCertificateобъект
      • https.customCertificate.secretNameстрока

        Имя Secret’а в namespace d8-system, который будет использоваться для Kiali/metadata-exporter (including SPIFFE endpoint)/api-proxy.

        Secret должен быть в формате kubernetes.io/tls.

        По умолчанию: "false"

    • https.modeстрока

      Режим работы HTTPS:

      • CertManager — Kiali/metadata-exporter (including SPIFFE endpoint)/api-proxy будут работать по HTTPS и заказывать сертификат с помощью ClusterIssuer заданном в параметре certManager.clusterIssuerName.
      • CustomCertificate — Kiali/metadata-exporter (including SPIFFE endpoint)/api-proxy будут работать по HTTPS, используя сертификат из namespace d8-system.
      • OnlyInURI — Kiali/metadata-exporter (including SPIFFE endpoint)/api-proxy будут работать по HTTP (подразумевая, что перед ними стоит внешний балансировщик, который терминирует HTTPS) и все ссылки в user-authn будут генерироваться с HTTPS-схемой. Балансировщик должен обеспечивать перенаправление с HTTP на HTTPS.

      Важно! В отличие от остальных модулей, istio не поддерживает работу без использования HTTPS (mode: Disabled).

      По умолчанию: "CertManager"

      Допустимые значения: CertManager, CustomCertificate, OnlyInURI

  • ingressClassстрока

    Класс Ingress-контроллера, который используется для Kiali, metadata-exporter и api-proxy.

    Опциональный параметр, по умолчанию используется глобальное значение modules.ingressClass.

    Шаблон: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$

  • multiclusterобъект

    Параметры мультикластерной инсталляции.

    Доступно только в enterprise edition.

    • multicluster.enabledбулевый

      Обозначить данный кластер как участник мультикластера (см. Включение мультикластера).

      По умолчанию: false

      Пример:

      enabled: true
      
  • nodeSelectorобъект

    Опциональный селектор для компонентов istio-operator, metadata-exporter и Kiali.

    Структура, аналогичная spec.nodeSelector пода Kubernetes.

    Если ничего не указано или указано false, будет использоваться автоматика.

  • outboundTrafficPolicyModeстрока

    Как поступать с запросами в сторону внешних, то есть не учтенных в mesh’е сервисов:

    • AllowAny — пропускать;
    • RegistryOnly — запрещать. В данном случае для работы с внешними сервисами потребуется регистрировать их с помощью ресурса ServiceEntry или организовывать egressgateway.

    По умолчанию: "AllowAny"

    Допустимые значения: AllowAny, RegistryOnly

    Пример:

    outboundTrafficPolicyMode: AllowAny
    
  • proxyConfigобъект

    Централизованная настройка ProxyConfig.

    • proxyConfig.holdApplicationUntilProxyStartsбулевый

      Этот параметр заставляет sidecar-injector вставлять sidecar-контейнер на первое место в списке контейнеров пода. Также он добавляет postStart-хук для того, чтобы убедиться, что Envoy инициализировался раньше самого приложения. Это позволит избежать сетевых ошибок при старте пода.

      Этот глобальный параметр может быть переопределен на уровне пода аннотацией proxy.istio.io/config: '{ "holdApplicationUntilProxyStarts": true }'.

      По умолчанию: false

      Пример:

      holdApplicationUntilProxyStarts: true
      
    • proxyConfig.idleTimeoutстрока

      Тайм-аут для соединений без прикладной активности, которые установлены между istio-сайдкаром клиента и сервисом. По истечении тайм-аута, соединение между сайдкаром и сервисом закрывается, но между приложением и сайдкаром — не закрывается. Если установить значение 0s, то тайм-аут будет отключен. Этот глобальный параметр может быть переопределен на уровне пода аннотацией:

          proxy.istio.io/config: |-
            proxyMetadata:
              ISTIO_META_IDLE_TIMEOUT: "12h"
      

      Внимание! Отключение этого таймаута (значение 0s) с большой вероятностью может привести к утечке соединений из-за потери пакетов TCP FIN и т.п. Внимание! После изменения настройки необходим рестарт клиентских подов.

      По умолчанию: "1h"

      Шаблон: ^[0-9]+(s|m|h)$

      Пример:

      idleTimeout: 24h
      
  • sidecarобъект

    Настройки для перехвата сетевого трафика в istio-sidecar.

    • sidecar.excludeInboundPortsмассив строк

      Диапазоны входящих портов, чей трафик гарантированно не заворачивается через Istio.

      Можно переопределить этот параметр для отдельного пода с помощью аннотации traffic.sidecar.istio.io/excludeInboundPorts.

      По умолчанию: []

      Пример:

      excludeInboundPorts:
      - '8080'
      - '8443'
      
      • Элемент массивастрока

        Шаблон: ^[0-9]{1,5}$

    • sidecar.excludeOutboundIPRangesмассив строк

      Трафик в сторону этих диапазонов IP гарантированно не заворачивается через Istio.

      Можно переопределить этот параметр для отдельного пода с помощью аннотации traffic.sidecar.istio.io/excludeOutboundIPRanges.

      По умолчанию: []

      Пример:

      excludeOutboundIPRanges:
      - 10.1.1.0/24
      
      • Элемент массивастрока

        Шаблон: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}$

    • sidecar.excludeOutboundPortsмассив строк

      Диапазоны исходящих портов, чей трафик гарантированно не заворачивается через Istio.

      Можно переопределить этот параметр для отдельного пода с помощью аннотации traffic.sidecar.istio.io/excludeOutboundPorts.

      По умолчанию: []

      Пример:

      excludeOutboundPorts:
      - '8080'
      - '8443'
      
      • Элемент массивастрока

        Шаблон: ^[0-9]{1,5}$

    • sidecar.includeOutboundIPRangesмассив строк

      Трафик в сторону этих диапазонов IP безоговорочно заворачивается через Istio.

      Можно переопределить этот параметр для отдельного пода с помощью аннотации traffic.sidecar.istio.io/includeOutboundIPRanges.

      По умолчанию: ["0.0.0.0/0"]

      Пример:

      includeOutboundIPRanges:
      - 10.1.1.0/24
      
      • Элемент массивастрока

        Шаблон: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}$

    • sidecar.resourcesManagement

      Управляет ресурсами sidecar-контейнера Istio.

      Внимание! Настройка применяется только для новых подов с istio-proxy.

      Пример:

      resourcesManagement:
        static:
          requests:
            cpu: 100m
            memory: 128Mi
          limits:
            memory: 1Gi
      
      • sidecar.resourcesManagement.modeстрока

        The mode for managing resource requests. Classical Static requests/limit.

        По умолчанию: "Static"

        Допустимые значения: Static

      • sidecar.resourcesManagement.staticобъект

        Настройки управления ресурсами в статическом режиме.

        • sidecar.resourcesManagement.static.limitsобъект

          Limits configuration.

          • sidecar.resourcesManagement.static.limits.cpu

            Лимиты для CPU.

          • sidecar.resourcesManagement.static.limits.memory

            Лимиты для памяти.

            По умолчанию: 1Gi

        • sidecar.resourcesManagement.static.requestsобъект

          Requests configuration.

          • sidecar.resourcesManagement.static.requests.cpu

            Реквесты к CPU.

            По умолчанию: 100m

          • sidecar.resourcesManagement.static.requests.memory

            Реквесты к памяти.

            По умолчанию: 128Mi

  • tolerationsмассив объектов

    Опциональные tolerations для компонентов istio-operator, metadata-exporter и Kiali.

    Структура, аналогичная spec.tolerations пода Kubernetes.

    Если ничего не указано или указано false, будет использоваться автоматика.

    • tolerations.effectстрока
    • tolerations.keyстрока
    • tolerations.operatorстрока
    • tolerations.tolerationSecondsцелочисленный
    • tolerations.valueстрока
  • tracingобъект

    Параметры трассировки.

    • tracing.collectorобъект

      Параметры отправки трейсов в коллектор.

      • tracing.collector.zipkinобъект

        Параметры протокола zipkin, который использует Istio для отправки трейсов.

        Jaeger поддерживает этот протокол.

        • tracing.collector.zipkin.addressстрока

          Сетевой адрес в формате <IP of FQDN>:<port>, по которому доступен zipkin-коллектор.

          Шаблон: [0-9a-zA-Z\.-]+

          Пример:

          address: zipkin.myjaeger.svc:9411
          
    • tracing.enabledбулевый

      Включить отправку трейсов в коллектор и интегрировать их отображение в Kiali.

      По умолчанию: false

      Пример:

      enabled: true
      
    • tracing.kialiобъект

      Настройки отображения span’ов в Kiali.

      Если настройки не предоставлены, Kiali не будет отображать трассировку.

      Примеры:

      kiali: {}
      
      kiali:
        jaegerURLForUsers: https://tracing-service:4443/jaeger
        jaegerGRPCEndpoint: http://tracing.myjaeger.svc:16685/
      
      • tracing.kiali.jaegerGRPCEndpointстрока

        Адрес GRPC-интерфейса Jaeger’а в формате <proto>://<fqdn>[:port]/, доступный сервису Kiali изнутри кластера для служебных запросов.

        Если не указать, то Kiali не будет интерпретировать трейсы самостоятельно и ограничится генерацией ссылок на jaegerURLForUsers.

        Пример:

        jaegerGRPCEndpoint: http://tracing.myjaeger.svc:16685/
        
      • tracing.kiali.jaegerURLForUsersстрока

        Адрес UI Jaeger, доступный пользователю в формате <proto>://<fqdn>[:port]/<base path>.

        Обязательный параметр.

        Пример:

        jaegerURLForUsers: https://tracing-service:4443/jaeger
        
    • tracing.samplingчисло

      Параметр sampling используется для определения процента запросов, которые передаются в систему трассировки.

      Этот параметр должен быть настроен в зависимости от трафика в сети и количества данных трассировки, которые необходимо собрать.

      Параметр можно переопределить для каждого пода индивидуально с помощью следующей аннотации:

      proxy.istio.io/config: |
        tracing:
          sampling: 100.0
      

      По умолчанию: 1.0

      Допустимые значения: 0.01 <= X <= 100.0

      Пример:

      sampling: 50.05
      

Аутентификация

По умолчанию используется модуль user-authn. Также можно настроить аутентификацию через externalAuthentication (см. ниже). Если эти варианты отключены, модуль включит basic auth со сгенерированным паролем.

Посмотреть сгенерированный пароль можно командой:

kubectl -n d8-system exec deploy/deckhouse -- deckhouse-controller module values istio -o json | jq '.istio.internal.auth.password'

Чтобы сгенерировать новый пароль, нужно удалить Secret:

kubectl -n d8-istio delete secret/kiali-basic-auth

Внимание! Параметр auth.password больше не поддерживается.