Available in: Ultimate/EE
The module lifecycle stage: Experimental
The module has requirements for installation
Before enabling the module, you need to allow the use of experimental modules in the deckhouse ModuleConfig. To do this, set the allowExperimentalModules parameter to true.
Requirements
To the Deckhouse Platform version: 1.74 and above.
To the versions of other modules:
-
log-shipper: any version. -
loki: any version.
Parameters
Schema version: 1
-
-
objectsettings.clusterSecurityEventDestinationConfigs for ClusterSecurityEventDestination objects
-
booleansettings.clusterSecurityEventDestination.clusterLokiWhether to generate ClusterSecurityEventDestination for cluster Loki.
Default:
true
-
-
objectsettings.controllerSecurity events controller settings.
-
integersettings.controller.replicasNumber of controller replicas.
Default:
1 -
objectsettings.controller.resourcesRequestsResource request management for controller. When vertical-pod-autoscaler is disabled, static or VPA min values are used as requests.
-
stringsettings.controller.resourcesRequests.mode
Default:
VPAAllowed values:
VPA,Static -
objectsettings.controller.resourcesRequests.static
Default:
{}-
settings.controller.resourcesRequests.static.cpu
Default:
10m -
settings.controller.resourcesRequests.static.memory
Default:
64Mi
-
-
objectsettings.controller.resourcesRequests.vpa
Default:
{}-
objectsettings.controller.resourcesRequests.vpa.cpu
Default:
{}-
settings.controller.resourcesRequests.vpa.cpu.max
Default:
100m -
settings.controller.resourcesRequests.vpa.cpu.min
Default:
10m
-
-
objectsettings.controller.resourcesRequests.vpa.memory
Default:
{}-
settings.controller.resourcesRequests.vpa.memory.max
Default:
256Mi -
settings.controller.resourcesRequests.vpa.memory.min
Default:
64Mi
-
-
stringsettings.controller.resourcesRequests.vpa.mode
Default:
InitialAllowed values:
Initial,Auto
-
-
-
stringsettings.controller.vectorValidateTimeoutTimeout for the
vector validaterun the controller performs before publishing a new gateway Vector config (Go duration string, for example “30s”, “2m”). The controller validates with--no-environment, which takes about 2 seconds for a 256 KB config, so the default leaves a wide margin. If the check cannot be completed within the timeout, the config is published anyway and the gateway reloader validates it instead.Default:
60s
-
-
objectsettings.gatewaySecurity events gateway settings.
-
objectsettings.gateway.bufferDefault buffer settings for all gateway Vector sinks. Can be overridden per-destination in ClusterSecurityEventDestination.spec.buffer. Defaults to Disk + Block for zero data loss of security events.
-
integersettings.gateway.buffer.maxEventsMaximum number of events in the buffer. Used as a secondary limit for Memory type. Ignored when type is Disk (disk buffer uses maxSize only).
Default:
500 -
stringsettings.gateway.buffer.maxSizeMaximum size of the buffer as a Kubernetes quantity string with a mandatory unit suffix (e.g. “512Mi”, “1Gi”, “256Mi”). Plain numbers without a unit suffix are NOT accepted. For Disk type: maximum disk space used on the volume. For Memory type: approximate memory limit for the in-memory ring buffer.
Default:
512MiPattern:
^[0-9]+(\.[0-9]+)?(Ki|Mi|Gi|Ti|Pi|Ei|k|M|G|T|P|E)$ -
stringsettings.gateway.buffer.type
Buffer type.
- Disk: disk-based buffer using LevelDB. Survives Vector process restarts within the pod. DEFAULT — ensures no security events are lost during temporary destination outages.
- Memory: in-memory ring buffer. Faster, but all events are lost on Vector process restart. Use only for test/dev environments.
Default:
DiskAllowed values:
Memory,Disk -
stringsettings.gateway.buffer.whenFull
Behavior when the buffer is full.
- Block: apply backpressure to upstream. Pipeline slows down but NO events are lost. DEFAULT — the correct choice for security events.
- DropNewest: discard incoming events. Data loss occurs but no backpressure. Use only when data loss is acceptable (test environments).
Default:
BlockAllowed values:
Block,DropNewest
-
-
objectsettings.gateway.logShipperBufferBuffer settings for the log-shipper ClusterLogDestination that ships events from agents to the gateway. Defaults to Disk + Block for zero data loss on the agent side.
-
integersettings.gateway.logShipperBuffer.maxEventsMaximum number of events in the agent buffer. Used as a secondary limit for Memory type.
Default:
500 -
stringsettings.gateway.logShipperBuffer.maxSizeMaximum size of the agent buffer as a Kubernetes quantity string with a mandatory unit suffix (e.g. “257Mi”, “512Mi”, “1Gi”). Plain numbers without a unit suffix are NOT accepted. Per node agent. Must be at least 268435488 bytes (~256MB) — log-shipper’s disk buffer minimum. A value of exactly “256Mi” (268435456 bytes) is rejected by the agent.
Default:
257MiPattern:
^[0-9]+(\.[0-9]+)?(Ki|Mi|Gi|Ti|Pi|Ei|k|M|G|T|P|E)$ -
stringsettings.gateway.logShipperBuffer.type
Buffer type for the log-shipper agent buffer.
- Disk: disk-based buffer. Survives Vector process restarts on the agent node. DEFAULT.
- Memory: in-memory ring buffer. Events are lost on agent restart.
Default:
DiskAllowed values:
Memory,Disk -
stringsettings.gateway.logShipperBuffer.whenFull
Behavior when the agent buffer is full.
- Block: apply backpressure. NO events are lost. DEFAULT.
- DropNewest: discard incoming events. Data loss occurs.
Default:
BlockAllowed values:
Block,DropNewest
-
-
objectsettings.gateway.nodeSelectorNode selector for gateway Deployment.
-
stringsettings.gateway.reloaderValidateTimeoutTimeout for
vector validateexecuted by the gateway reloader sidecar (Go duration string, e.g. “45s”, “2m”). Increase this if the gateway vector config is large (many SecurityEventDefinitions × transforms) andvector validateis being killed by the reloader before completing. Range: 5s–5m; invalid values fall back to 120s.Default:
120s -
integersettings.gateway.replicasNumber of gateway replicas.
Default:
2 -
objectsettings.gateway.resourcesResource requests/limits for gateway pods.
-
objectsettings.gateway.resources.limits
-
stringsettings.gateway.resources.limits.cpu
-
stringsettings.gateway.resources.limits.memory
-
-
objectsettings.gateway.resources.requests
-
stringsettings.gateway.resources.requests.cpu
Default:
100m -
stringsettings.gateway.resources.requests.memory
Default:
128Mi
-
-
-
objectsettings.gateway.resourcesRequestsResource request management for gateway (vector container). When vertical-pod-autoscaler is disabled, static or VPA min values are used as requests.
-
stringsettings.gateway.resourcesRequests.mode
Default:
VPAAllowed values:
VPA,Static -
objectsettings.gateway.resourcesRequests.static
Default:
{}-
settings.gateway.resourcesRequests.static.cpu
Default:
100m -
settings.gateway.resourcesRequests.static.memory
Default:
128Mi
-
-
objectsettings.gateway.resourcesRequests.vpa
Default:
{}-
objectsettings.gateway.resourcesRequests.vpa.cpu
Default:
{}-
settings.gateway.resourcesRequests.vpa.cpu.max
Default:
3000m -
settings.gateway.resourcesRequests.vpa.cpu.min
Default:
100m
-
-
objectsettings.gateway.resourcesRequests.vpa.memory
Default:
{}-
settings.gateway.resourcesRequests.vpa.memory.max
Default:
4096Mi -
settings.gateway.resourcesRequests.vpa.memory.min
Default:
128Mi
-
-
stringsettings.gateway.resourcesRequests.vpa.mode
Default:
InitialAllowed values:
Initial,Auto
-
-
-
array of objectssettings.gateway.tolerationsTolerations for gateway pods.
-
-
objectsettings.securityEventConfigDefault configuration of security alert sources and destination (default resource ClusterSecurityEventConfig). Can be overridden per CR ClusterSecurityEventShipper.
Default:
{ "destinations": [ "cluster-loki" ], "enabled": true, "sourcesMasks": [ "podSecurityEventShipper/*", "clusterSecurityEventShipper/*" ] }-
objectsettings.securityEventConfig.cefDefault CEF (Common Event Format) metadata for the generated ClusterSecurityEventConfig. These values populate spec.cef in the default CSEC and are used as fallbacks when a ClusterSecurityEventDestination with encoding.codec=CEF does not specify its own device vendor/product/version.
-
stringsettings.securityEventConfig.cef.deviceProductDefault device product for CEF header.
Default:
security-events-manager -
stringsettings.securityEventConfig.cef.deviceVendorDefault device vendor for CEF header.
Default:
Deckhouse -
stringsettings.securityEventConfig.cef.deviceVersionDefault device version for CEF header.
Default:
1
-
-
array of stringssettings.securityEventConfig.destinationsList of ClusterSecurityEventDestination names.
Default:
[ "cluster-loki" ] -
booleansettings.securityEventConfig.enabledGenerate default ClusterSecurityEventConfig.
Default:
true -
stringsettings.securityEventConfig.minimumSeverityThresholdMinimal severity to ship (inclusive).
Default:
LowAllowed values:
Low,Medium,High,Critical -
array of stringssettings.securityEventConfig.sourcesList of enabled source identifiers (used when sourcesMasks is not set).
-
array of stringssettings.securityEventConfig.sourcesMasksList of glob-style masks for enabled sources (e.g. “*” for all). Mutually exclusive with sources. When set, ClusterSecurityEventConfig uses enabledSourcesMasks.
-
-