Доступно в редакциях:  EE

Стадия жизненного цикла модуля: Experimental
У модуля есть требования для установки

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

Явно включить или выключить модуль можно одним из следующих способов:

  • С помощью веб-интерфейса Deckhouse. В разделе «Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль security-events-manager, включите (или выключите) переключатель «Модуль включен». Сохраните изменения.

    Пример:

    Интерфейс включения и выключения модуля
  • С помощью Deckhouse CLI (d8).

    Используйте команду d8 system module enable для включения модуля, или d8 system module disable для выключения модуля (требуется Deckhouse CLI (d8), настроенный на работу с кластером).

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

    d8 system module enable security-events-manager
  • С помощью ModuleConfig security-events-manager.

    Установите spec.enabled в true или false в ModuleConfig security-events-manager (создайте его, при необходимости).

    Пример манифеста для включения модуля security-events-manager:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: security-events-manager
    spec:
      enabled: true

Как настроить модуль…

Настроить модуль можно одним из следующих способов:

  • С помощью веб-интерфейса Deckhouse.

    В разделе «Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль security-events-manager, включите переключатель «Дополнительные настройки». Заполните необходимые поля формы на вкладке «Конфигурация», или укажите настройки модуля в формате YAML на вкладке «YAML», не включая секцию settings. Сохраните изменения.

    Пример:

    Интерфейс настройки модуля

    Вы также можете отредактировать объект ModuleConfig security-events-manager на вкладке «YAML» в окне настроек модуля («Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль security-events-manager), указав версию схемы в параметре spec.version и необходимые параметры модуля в секции spec.settings.

  • С помощью Deckhouse CLI (d8) (требуется Deckhouse CLI (d8), настроенный на работу с кластером).

    Отредактируйте существующий ModuleConfig security-events-manager (подробнее о настройке Deckhouse читайте в документации), выполнив следующую команду:

    d8 k edit mc security-events-manager

    Внесите необходимые изменения в секцию spec.settings. При необходимости укажите версию схемы в параметре spec.version. Сохраните изменения.

    Вы также можете создать файл манифеста ModuleConfig security-events-manager, используя пример ниже. Заполните секцию spec.settings необходимыми параметрами модуля. При необходимости укажите версию схемы в параметре spec.version.

    Примените манифест с помощью следующей команды (укажите имя файла манифеста):

    d8 k apply -f <FILENAME>

    Пример файла манифеста ModuleConfig security-events-manager:

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

Как сменить канал обновлений модуля…

Для смены канала обновлений модуля воспользуйтесь инструкцией.

Требования

К версии Deckhouse: 1.74 и выше.

К версиям других модулей:

  • log-shipper: любая версия.
  • loki: любая версия.

Параметры

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

  • settings
    объект
    • settings.clusterSecurityEventDestination
      объект
      Параметры для генерации объектов ClusterSecurityEventDestination
      • settings.clusterSecurityEventDestination.clusterLoki
        булевый
        Генерировать ли объект ClusterSecurityEventDestination для отправки в Loki в кластере

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

    • settings.controller
      объект
      Настройки контроллера security-events-manager
      • settings.controller.replicas
        целочисленный
        Количество реплик контроллера.

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

      • settings.controller.resourcesRequests
        объект
        Управление запросом ресурсов для контроллера. При отключённом vertical-pod-autoscaler используются static или VPA min.
        • settings.controller.resourcesRequests.mode
          строка

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

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

        • settings.controller.resourcesRequests.static
          объект

          По умолчанию: {}

          • settings.controller.resourcesRequests.static.cpu

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

          • settings.controller.resourcesRequests.static.memory

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

        • settings.controller.resourcesRequests.vpa
          объект

          По умолчанию: {}

          • settings.controller.resourcesRequests.vpa.cpu
            объект

            По умолчанию: {}

            • settings.controller.resourcesRequests.vpa.cpu.max

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

            • settings.controller.resourcesRequests.vpa.cpu.min

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

          • settings.controller.resourcesRequests.vpa.memory
            объект

            По умолчанию: {}

            • settings.controller.resourcesRequests.vpa.memory.max

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

            • settings.controller.resourcesRequests.vpa.memory.min

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

          • settings.controller.resourcesRequests.vpa.mode
            строка

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

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

      • settings.controller.vectorValidateTimeout
        строка
        Таймаут запуска vector validate, который контроллер выполняет перед публикацией нового конфига Vector для gateway (строка длительности Go, например “30s”, “2m”). Контроллер валидирует с --no-environment, что занимает около 2 секунд на конфиге в 256 КБ, поэтому значение по умолчанию взято с большим запасом. Если проверку не удалось завершить за отведённое время, конфиг публикуется без неё, а валидацию выполняет reloader в gateway.

        По умолчанию: 60s

    • settings.gateway
      объект
      Настройки компонента gateway
      • settings.gateway.buffer
        объект
        Настройки буфера по умолчанию для всех Vector sink gateway. Могут быть переопределены для конкретного назначения в ClusterSecurityEventDestination.spec.buffer. По умолчанию Disk + Block для нулевых потерь событий безопасности.
        • settings.gateway.buffer.maxEvents
          целочисленный
          Максимальное количество событий в буфере. Используется как вторичное ограничение для типа Memory. Игнорируется при type=Disk (дисковый буфер использует только maxSize).

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

        • settings.gateway.buffer.maxSize
          строка
          Максимальный размер буфера в формате Kubernetes quantity с обязательным суффиксом единицы измерения (например, “512Mi”, “1Gi”, “256Mi”). Числа без суффикса единицы измерения НЕ принимаются. Для Disk: максимальное дисковое пространство на томе. Для Memory: приблизительное ограничение памяти для кольцевого буфера.

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

          Шаблон: ^[0-9]+(\.[0-9]+)?(Ki|Mi|Gi|Ti|Pi|Ei|k|M|G|T|P|E)$

        • settings.gateway.buffer.type
          строка

          Тип буфера.

          • Disk — дисковый буфер на LevelDB. Переживает рестарт процесса Vector в поде. ПО УМОЛЧАНИЮ — гарантирует отсутствие потерь событий при временной недоступности назначения.
          • Memory — буфер в оперативной памяти. Быстрее, но все события теряются при рестарте процесса Vector. Используйте только для тестовых/dev-окружений.

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

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

        • settings.gateway.buffer.whenFull
          строка

          Поведение при переполнении буфера.

          • Block — применять обратное давление к источнику. Пайплайн замедляется, но НЕТ потерь событий. ПО УМОЛЧАНИЮ — правильный выбор для событий безопасности.
          • DropNewest — отбрасывать входящие события. Происходит потеря данных, но без обратного давления. Используйте только когда потеря данных допустима (тестовые окружения).

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

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

      • settings.gateway.logShipperBuffer
        объект
        Настройки буфера для ClusterLogDestination log-shipper, который отправляет события с агентов в gateway. По умолчанию Disk + Block для нулевых потерь на стороне агента.
        • settings.gateway.logShipperBuffer.maxEvents
          целочисленный
          Максимальное количество событий в буфере агента. Используется как вторичное ограничение для типа Memory.

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

        • settings.gateway.logShipperBuffer.maxSize
          строка
          Максимальный размер буфера агента в формате Kubernetes quantity с обязательным суффиксом единицы измерения (например, “257Mi”, “512Mi”, “1Gi”). Числа без суффикса единицы измерения НЕ принимаются. На каждый узел-агент. Должен быть не меньше 268435488 байт (~256МБ) — это минимум дискового буфера log-shipper. Значение ровно “256Mi” (268435456 байт) агент отклонит.

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

          Шаблон: ^[0-9]+(\.[0-9]+)?(Ki|Mi|Gi|Ti|Pi|Ei|k|M|G|T|P|E)$

        • settings.gateway.logShipperBuffer.type
          строка

          Тип буфера для агента log-shipper.

          • Disk — дисковый буфер. Переживает рестарт процесса Vector на узле агента. ПО УМОЛЧАНИЮ.
          • Memory — буфер в оперативной памяти. События теряются при рестарте агента.

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

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

        • settings.gateway.logShipperBuffer.whenFull
          строка

          Поведение при переполнении буфера агента.

          • Block — применять обратное давление. НЕТ потерь событий. ПО УМОЛЧАНИЮ.
          • DropNewest — отбрасывать входящие события. Происходит потеря данных.

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

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

      • settings.gateway.nodeSelector
        объект
        Настройки размещения подов gateway на нодах.
      • settings.gateway.reloaderValidateTimeout
        строка
        Таймаут выполнения vector validate в сайдкаре reloader (строка длительности Go, например “45s”, “2m”). Увеличьте, если конфиг Vector велик (много SecurityEventDefinition × трансформов) и vector validate не успевает завершиться за таймаут. Диапазон: 5s–5m; некорректные значения сбрасываются в 120s.

        По умолчанию: 120s

      • settings.gateway.replicas
        целочисленный
        Количество реплик gateway.

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

      • settings.gateway.resources
        объект
        Настройки ресурсов (requests/limits) для подов gateway.
        • settings.gateway.resources.limits
          объект
          • settings.gateway.resources.limits.cpu
            строка
          • settings.gateway.resources.limits.memory
            строка
        • settings.gateway.resources.requests
          объект
          • settings.gateway.resources.requests.cpu
            строка

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

          • settings.gateway.resources.requests.memory
            строка

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

      • settings.gateway.resourcesRequests
        объект
        Управление запросом ресурсов для gateway (контейнер vector). При отключённом vertical-pod-autoscaler используются static или VPA min.
        • settings.gateway.resourcesRequests.mode
          строка

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

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

        • settings.gateway.resourcesRequests.static
          объект

          По умолчанию: {}

          • settings.gateway.resourcesRequests.static.cpu

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

          • settings.gateway.resourcesRequests.static.memory

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

        • settings.gateway.resourcesRequests.vpa
          объект

          По умолчанию: {}

          • settings.gateway.resourcesRequests.vpa.cpu
            объект

            По умолчанию: {}

            • settings.gateway.resourcesRequests.vpa.cpu.max

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

            • settings.gateway.resourcesRequests.vpa.cpu.min

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

          • settings.gateway.resourcesRequests.vpa.memory
            объект

            По умолчанию: {}

            • settings.gateway.resourcesRequests.vpa.memory.max

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

            • settings.gateway.resourcesRequests.vpa.memory.min

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

          • settings.gateway.resourcesRequests.vpa.mode
            строка

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

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

      • settings.gateway.tolerations
        массив объектов
        Tolerations для подов gateway.
    • settings.securityEventConfig
      объект
      Конфигурация по умолчанию источников и назначений (ресурс ClusterSecurityEventConfig). Может переопределяться в CR ClusterSecurityEventShipper.

      По умолчанию: { "destinations": [ "cluster-loki" ], "enabled": true, "sourcesMasks": [ "podSecurityEventShipper/*", "clusterSecurityEventShipper/*" ] }

      • settings.securityEventConfig.cef
        объект
        Метаданные CEF (Common Event Format) по умолчанию для генерируемого ClusterSecurityEventConfig. Эти значения заполняют spec.cef в стандартном CSEC и используются как fallback, когда ClusterSecurityEventDestination с encoding.codec=CEF не указывает собственные deviceVendor/deviceProduct/deviceVersion.
        • settings.securityEventConfig.cef.deviceProduct
          строка
          Поле device product по умолчанию для заголовка CEF.

          По умолчанию: security-events-manager

        • settings.securityEventConfig.cef.deviceVendor
          строка
          Поле device vendor по умолчанию для заголовка CEF.

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

        • settings.securityEventConfig.cef.deviceVersion
          строка
          Поле device version по умолчанию для заголовка CEF.

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

      • settings.securityEventConfig.destinations
        массив строк
        Список имён ClusterSecurityEventDestination.

        По умолчанию: [ "cluster-loki" ]

      • settings.securityEventConfig.enabled
        булевый
        Генерировать ли стандартный ClusterSecurityEventConfig

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

      • settings.securityEventConfig.minimumSeverityThreshold
        строка
        Минимальная критичность для отправки (включительно).

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

        Допустимые значения: Low, Medium, High, Critical

      • settings.securityEventConfig.sources
        массив строк
        Список идентификаторов источников (используется, если sourcesMasks не задан).
      • settings.securityEventConfig.sourcesMasks
        массив строк
        Список масок источников в стиле glob (например “*” — все). Взаимоисключающе с sources.