Skip to main content
Version: Next

Values parameters reference

This page provides a complete, generated reference of all Helm chart configuration values, their defaults, and their purpose.

Parameters

Global

NameDescriptionValue
container_runtime[string] for raw logs format: json or cri (dockercontainerd)

Image

NameDescriptionValue
image.repository[string] docker image repository namecrowdsecurity/crowdsec
image.pullPolicy[string] Image pull policy (Always, IfNotPresent, Never)IfNotPresent
image.pullSecretsImage pull secrets (array of objects with a 'name' field)[]
image.tagdocker image tag (empty defaults to chart AppVersion)""
podAnnotationspodAnnotations to be added to pods (string:string map){}
podLabelsLabels to be added to pods (string:string map){}

Configuration

NameDescriptionValue
config.parsers.s00-rawFirst step custom parsers definitions, usually used to label logs{}
config.parsers.s01-parseSecond step custom parsers definitions, usually to normalize logs into events{}
config.parsers.s02-enrichThird step custom parsers definitions, usually to enrich events{}
config.scenariosCustom raw scenarios definition see https://docs.crowdsec.net/docs/next/log_processor/scenarios/intro{}
config.postoverflows.s00-enrichFirst step custom postoverflows definitions, usually used to enrich overflow events{}
config.postoverflows.s01-whitelistSecond step custom postoverflows definitions, usually used to whitelist events{}
config.simulation.yamlThis file is usually handled by the agent.""
config.console.yamlThis file is usually handled by the agent.""
config.capi_whitelists.yamlThis file is deprecated in favor of centralized allowlists see https://docs.crowdsec.net/docs/next/local_api/centralized_allowlists""
config.profiles.yamlUse for defining custom profiles""
config.config.yaml.localmain configuration file local overriden values. This is merged with main configuration file.""
config.notificationsnotification on alert configuration{}
config.agent_config.yaml.localThis configuration file is merged with agent pod main configuration file""
config.appsec_config.yaml.localThis configuration file is merged with appsec pod main configuration file""
tls.enabledIs tls enabled ?false
tls.caBundlepem format CA collectiontrue
tls.insecureSkipVerifyfalse
tls.certManagerUse of a cluster certManager configuration{}
tls.certManager.enabledUse of a cluster cert managertrue
tls.certManager.secretTemplatesecret configuration{}
tls.certManager.secretTemplate.annotationsadd annotation to generated secret{}
tls.certManager.secretTemplate.labelsadd annotation to generated labels{}
tls.certManager.durationvalidity duration of certificate (golang duration string)""
tls.certManager.renewBeforeduration before a certificate’s expiry when cert-manager should start renewing it.""
tls.bouncer.secretName of the Kubernetes Secret containing TLS materials for the bouncer""
tls.bouncer.reflector.namespacesList of namespaces from which the bouncer will watch and sync Secrets/ConfigMaps.[]
tls.agent.tlsClientAuthEnables mutual TLS authentication for the agent when connecting to LAPI.true
tls.agent.secretName of the Secret holding the agent’s TLS certificate and key.""
tls.agent.reflector.namespacesNamespaces where the agent’s TLS Secret can be reflected/synced.[]
tls.appsec.tlsClientAuthEnables mutual TLS authentication for the agent when connecting to LAPI.true
tls.appsec.secretName of the Secret holding the agent’s TLS certificate and key.""
tls.appsec.reflector.namespacesNamespaces where the agent’s TLS Secret can be reflected/synced.[]
tls.lapi.secretName of the Secret holding the lapidary's’s TLS certificate and key.""
tls.lapi.reflector.namespacesNamespaces where the LAPI TLS Secret can be reflected/synced.[]

secrets

NameDescriptionValue
secrets.usernameAgent username (default is generated randomly)""
secrets.passwordAgent password (default is generated randomly)""
secrets.externalSecret.nameName of the external secret to use (overrides lapi.secrets.csLapiSecret and lapi.secrets.registrationToken)""
secrets.externalSecret.csLapiSecretKeyThe key in the external secret that holds the csLapiSecret""
secrets.externalSecret.registrationTokenKeyThe key in the external secret that holds the registrationToken""

lapi

NameDescriptionValue
lapi.enabledEnable LAPI deployment (enabled by default)true
lapi.replicasNumber of replicas for the Local API1
lapi.envExtra environment variables passed to the crowdsecurity/crowdsec container[]
lapi.envFromEnvironment variables loaded from Kubernetes Secrets or ConfigMaps[]
lapi.ingress.enabledEnable ingress for the LAPI servicefalse
lapi.ingress.annotationsAnnotations to apply to the LAPI ingress object{}
lapi.ingress.ingressClassNameIngressClass name for the LAPI ingress""
lapi.ingress.hostHostname for the LAPI ingress""
lapi.priorityClassNamePod priority class name""
lapi.deployAnnotationsAnnotations applied to the LAPI Deployment{}
lapi.podAnnotationsAnnotations applied to LAPI pods{}
lapi.podLabelsLabels applied to LAPI pods{}
lapi.extraInitContainersAdditional init containers for LAPI pods[]
lapi.extraVolumesAdditional volumes for LAPI pods[]
lapi.extraVolumeMountsAdditional volumeMounts for LAPI pods[]
lapi.resourcesResource requests and limits for the LAPI pods{}
lapi.persistentVolume.data.enabledEnable persistent volume for the data folder (stores bouncer API keys)true
lapi.persistentVolume.data.accessModesAccess modes for the data PVC["ReadWriteOnce"]
lapi.persistentVolume.data.storageClassNameStorageClass name for the data PVC""
lapi.persistentVolume.data.existingClaimExisting PersistentVolumeClaim to use for the data PVC""
lapi.persistentVolume.data.subPathsubPath to use within the volume""
lapi.persistentVolume.data.sizeRequested size for the data PVC""
lapi.persistentVolume.config.enabledEnable persistent volume for the config folder (stores API credentials)true
lapi.persistentVolume.config.accessModesAccess modes for the config PVC["ReadWriteOnce"]
lapi.persistentVolume.config.storageClassNameStorageClass name for the config PVC""
lapi.persistentVolume.config.existingClaimExisting PersistentVolumeClaim to use for the config PVC""
lapi.persistentVolume.config.subPathsubPath to use within the volume""
lapi.persistentVolume.config.sizeRequested size for the config PVC""
lapi.serviceConfiguration of kubernetes lapi service{}
lapi.service.typeKubernetes service type for LAPI""
lapi.service.labelsExtra labels to add to the LAPI service{}
lapi.service.annotationsExtra annotations to add to the LAPI service{}
lapi.service.externalIPsList of external IPs for the LAPI service[]
lapi.service.loadBalancerIPSpecific loadBalancer IP for the LAPI servicenil
lapi.service.loadBalancerClassLoadBalancer class for the LAPI servicenil
lapi.service.externalTrafficPolicyExternal traffic policy for the LAPI service""
lapi.nodeSelectorNode selector for scheduling LAPI pods{}
lapi.tolerationsTolerations for scheduling LAPI pods[]
lapi.dnsConfigDNS configuration for LAPI pods{}
lapi.affinityAffinity rules for LAPI pods{}
lapi.topologySpreadConstraintsTopology spread constraints for LAPI pods[]
lapi.metrics.enabledEnable service monitoring for Prometheus (exposes port 6060)true
lapi.metrics.serviceMonitor.enabled[object] Create a ServiceMonitor resource for Prometheustrue
lapi.metrics.serviceMonitor.additionalLabelsExtra labels for the ServiceMonitor{}
lapi.metrics.podMonitor.enabledEnables prometheus operator podMonitorfalse
lapi.metrics.podMonitor.additionalLabelsadditional labels for podMonitor{}
lapi.strategy.typeDeployment strategy for the LAPI deployment""
lapi.secrets.csLapiSecretShared LAPI secret (randomly generated if not specified, must be >64 chars)""
lapi.secrets.registrationTokenRegistration token for AppSec (randomly generated if not specified, must be >48 chars)""
lapi.extraSecretsAdditional secrets to inject (e.g., external DB password){}
lapi.lifecycleLifecycle hooks for LAPI pods (postStart, preStop, etc.){}
lapi.storeCAPICredentialsInSecret[object] Store Central API credentials in a Secret (required if LAPI replicas > 1)false

agent

NameDescriptionValue
agent.enabled[object] Enable CrowdSec agent (enabled by default)true
agent.isDeployment[object] Deploy agent as a Deployment instead of a DaemonSetfalse
agent.serviceAccountNameService account name for the agent pods""
agent.lapiURLURL of the LAPI for the agent to connect to (defaults to internal service URL)""
agent.lapiHostHost of the LAPI for the agent to connect to""
agent.lapiPortPort of the LAPI for the agent to connect to8080
agent.replicasNumber of replicas when deploying as a Deployment1
agent.strategyDeployment strategy when isDeployment is true{}
agent.portsCustom container ports to expose (default: metrics port 6060 if enabled)[]
agent.additionalAcquisitionExtra log acquisition sources (see https://docs.crowdsec.net/docs/next/data_sources/intro)[]
agent.acquisitionPod log acquisition definitions (namespace, podName, program, etc.)[]
agent.priorityClassNamePriority class name for agent pods""
agent.daemonsetAnnotationsAnnotations applied to the agent DaemonSet{}
agent.deploymentAnnotationsAnnotations applied to the agent Deployment{}
agent.podAnnotationsAnnotations applied to agent pods{}
agent.podLabelsLabels applied to agent pods{}
agent.extraInitContainersExtra init containers for agent pods[]
agent.extraVolumesExtra volumes for agent pods[]
agent.extraVolumeMountsExtra volume mounts for agent pods[]
agent.resourcesResource requests and limits for agent pods{}
agent.persistentVolume.config.enabled[object] Enable persistent volume for agent configfalse
agent.persistentVolume.config.accessModesAccess modes for the config PVC[]
agent.persistentVolume.config.storageClassNameStorageClass name for the config PVC""
agent.persistentVolume.config.existingClaimExisting PVC name to use for config""
agent.persistentVolume.config.subPathsubPath to use within the volume""
agent.persistentVolume.config.sizeRequested size for the config PVC""
agent.hostVarLog[object] Mount hostPath /var/log into the agent podtrue
agent.envEnvironment variables passed to the crowdsecurity/crowdsec container[]
agent.nodeSelectorNode selector for agent pods{}
agent.tolerationsTolerations for scheduling agent pods[]
agent.affinityAffinity rules for agent pods{}
agent.livenessProbeLiveness probe configuration for agent pods{}
agent.readinessProbeReadiness probe configuration for agent pods{}
agent.startupProbeStartup probe configuration for agent pods{}
agent.metrics.enabledEnable service monitoring for Prometheus (exposes port 6060)true
agent.metrics.serviceMonitor.enabledCreate a ServiceMonitor resource for Prometheusfalse
agent.metrics.serviceMonitor.additionalLabelsExtra labels for the ServiceMonitor{}
agent.metrics.podMonitor.enabledCreate a PodMonitor resource for Prometheusfalse
agent.metrics.podMonitor.additionalLabelsExtra labels for the PodMonitor{}
agent.service.typeKubernetes Service type for agent""
agent.service.labelsLabels applied to the agent Service{}
agent.service.annotationsAnnotations applied to the agent Service{}
agent.service.externalIPsExternal IPs assigned to the agent Service[]
agent.service.loadBalancerIPFixed LoadBalancer IP for the agent Servicenil
agent.service.loadBalancerClassLoadBalancer class for the agent Servicenil
agent.service.externalTrafficPolicyExternal traffic policy for the agent Service""
agent.service.portsCustom service ports (default: metrics port 6060 if enabled)[]
agent.wait_for_lapi.image.repositoryRepository for the wait-for-lapi init container image""
agent.wait_for_lapi.image.pullPolicyImage pull policy for the wait-for-lapi init container""
agent.wait_for_lapi.image.tagImage tag for the wait-for-lapi init container""
appsec.enabled[object] Enable AppSec component (disabled by default)false
appsec.lapiURLURL the AppSec component uses to reach LAPI (defaults to internal service URL)""
appsec.lapiHostHostname the AppSec component uses to reach LAPI""
appsec.lapiPortPort the AppSec component uses to reach LAPI8080
appsec.replicasNumber of replicas for the AppSec Deployment1
appsec.strategyDeployment strategy for AppSec{}
appsec.acquisitionsAppSec acquisitions (datasource listeners), e.g. appsec listener on 7422[]
appsec.configsAppSec configs (key = filename, value = file content){}
appsec.rulesAppSec rule files (key = filename, value = file content){}
appsec.priorityClassNamePriority class name for AppSec pods""
appsec.deployAnnotationsAnnotations added to the AppSec Deployment{}
appsec.podAnnotationsAnnotations added to AppSec pods{}
appsec.podLabelsLabels added to AppSec pods{}
appsec.extraInitContainersExtra init containers for AppSec pods[]
appsec.extraVolumesExtra volumes for AppSec pods[]
appsec.extraVolumeMountsExtra volume mounts for AppSec pods[]
appsec.resourcesResource requests and limits for AppSec pods{}
appsec.envEnvironment variables for the AppSec container (collections/configs/rules toggles, etc.)[]
appsec.nodeSelectorNode selector for scheduling AppSec pods{}
appsec.tolerationsTolerations for scheduling AppSec pods[]
appsec.affinityAffinity rules for scheduling AppSec pods{}
appsec.livenessProbeLiveness probe configuration for AppSec pods{}
appsec.readinessProbeReadiness probe configuration for AppSec pods{}
appsec.startupProbeStartup probe configuration for AppSec pods{}
appsec.metrics.enabledEnable service monitoring (exposes metrics on 6060; AppSec listener typically 7422)true
appsec.metrics.serviceMonitor.enabledCreate a ServiceMonitor for Prometheus scrapingfalse
appsec.metrics.serviceMonitor.additionalLabelsExtra labels for the ServiceMonitor{}
appsec.metrics.podMonitor.enabledCreate a PodMonitor for Prometheus scrapingfalse
appsec.metrics.podMonitor.additionalLabelsExtra labels for the PodMonitor{}
appsec.service.typeKubernetes Service type for AppSec""
appsec.service.labelsAdditional labels for the AppSec Service{}
appsec.service.annotationsAnnotations to apply to the LAPI ingress object{}
appsec.service.externalIPsExternal IPs for the AppSec Service[]
appsec.service.loadBalancerIPFixed LoadBalancer IP for the AppSec Servicenil
appsec.service.loadBalancerClassLoadBalancer class for the AppSec Servicenil
appsec.service.externalTrafficPolicyExternal traffic policy for the AppSec Service""
appsec.wait_for_lapi.image.repositoryRepository for the wait-for-lapi init con""
appsec.wait_for_lapi.image.pullPolicyImage pull policy for the wait-for-lapi init container""
appsec.wait_for_lapi.image.tagImage tag for the wait-for-lapi init container1.28