Доступно в редакциях:  EE, CSE Lite (1.67), CSE Pro (1.67)

Экспериментальная версия. Функциональность может сильно измениться. Совместимость с будущими версиями не гарантируется.

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

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

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

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

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

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

    1kubectl -ti -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module enable operator-trivy
    

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

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

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

    1kubectl -ti -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module disable operator-trivy
    

Настройки

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

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

1apiVersion: deckhouse.io/v1alpha1
2kind: ModuleConfig
3metadata:
4  name: operator-trivy
5spec:
6  version: 1
7  enabled: true
8  settings: # <-- Параметры модуля из раздела "Параметры" ниже.

Параметры

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

  • settings
    объект
    • settings.additionalRegistryCA
      массив объектов

      Список корневых сертификатов (CA) приватных хранилищ образов контейнеров (container registry).

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

      Пример:

      1additionalRegistryCA:
      2  - name: example CA
      3    ca: |
      4      -----BEGIN CERTIFICATE-----
      5      .................
      6      -----END CERTIFICATE-----
      7  - name: CA with intermediate CA
      8    ca: |
      9      -----BEGIN CERTIFICATE-----
      10      .................
      11      -----END CERTIFICATE-----
      12      -----BEGIN CERTIFICATE-----
      13      .................
      14      -----END CERTIFICATE-----
      
      • settings.additionalRegistryCA.ca
        строка
      • settings.additionalRegistryCA.name
        строка
    • settings.additionalVulnerabilityReportFields
      массив строк

      Список дополнительных полей из базы уязвимостей, добавляемых к отчетам об уязвимостях (VulnerabilityReport).

      Пример:

      1additionalVulnerabilityReportFields:
      2- Class
      3- Target
      
    • settings.disableSBOMGeneration
      булевый

      Отключает генерацию отчетов SBOM.

      Внимание. При установке значения “true”, все текущие отчеты SBOM в кластере удаляются (очистка выполняется один раз).

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

      Примеры:

      1disableSBOMGeneration: true
      
      1disableSBOMGeneration: false
      
    • settings.insecureDbRegistry
      булевый

      Разрешает Trivy скачивать базы данных уязвимостей, используя недоверенные HTTPS-подключения (не прошедшие проверку TLS-сертификата) или подключения по HTTP.

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

      Примеры:

      1insecureDbRegistry: true
      
      1insecureDbRegistry: false
      
    • settings.insecureRegistries
      массив строк

      Список адресов хранилищ образов контейнеров (container registry), к которым разрешены недоверенные HTTPS-подключения (не прошедшие проверку TLS-сертификата) и подключения по HTTP.

      Пример:

      1insecureRegistries:
      2- my.registry.com
      3- http-only.registry.io
      
    • settings.linkCVEtoBDU
      булевый

      Включить конвертацию отчетов уязвимостей. Заменяет уязвимости из базы CVE на данные из базы BDU и выводит их в отчете.

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

      Примеры:

      1linkCVEtoBDU: true
      
      1linkCVEtoBDU: false
      
    • settings.nodeSelector
      объект

      Опциональный селектор для компонентов operator-trivy и заданий сканирования (Jobs).

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

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

      Пример:

      1nodeSelector:
      2  disktype: ssd
      
    • settings.reportResourceLabels
      массив строк

      Список дополнительных меток маркировки отчетов (VulnerabilityReport) Trivy.

      Значения этих меток будут соответствовать значениям меток сканируемых ресурсов.

      Пример:

      1reportResourceLabels:
      2- app
      3- env
      
    • settings.severities
      массив строк

      Фильтрация отчетов уязвимостей по уровню их критичности.

      Пример:

      1severities:
      2- UNKNOWN
      3- CRITICAl
      
      • Элемент массива
        строка

        Допустимые значения: UNKNOWN, LOW, MEDIUM, HIGH, CRITICAL

    • settings.storageClass
      строка

      Имя StorageClass, который будет использоваться по умолчанию в кластере.

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

      Настройка глобального параметра storageClass учитывается только при включении модуля. Изменение глобального параметра storageClass при включенном модуле не приведет к перезаказу диска.

      Внимание. Если указать значение, отличное от текущего (используемого в существующей PVC), диск будет перезаказан, и все данные удалятся.

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

      Примеры:

      1storageClass: ceph-ssd
      
      1storageClass: 'false'
      
    • settings.tolerations
      массив объектов

      Опциональные tolerations для компонентов operator-trivy и заданий сканирования (Jobs).

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

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

      Пример:

      1tolerations:
      2- key: key1
      3  operator: Equal
      4  value: value1
      5  effect: NoSchedule
      
      • settings.tolerations.effect
        строка
      • settings.tolerations.key
        строка
      • settings.tolerations.operator
        строка
      • settings.tolerations.tolerationSeconds
        целочисленный
      • settings.tolerations.value
        строка