Skip to main content

Helm Chart Reference

Complete reference for configuring the PDB Operator Helm chart.

Install​

helm install pdb-operator oci://ghcr.io/pdb-operator/charts/pdb-operator \
--namespace pdb-operator-system \
--create-namespace

Controller​

ParameterDefaultDescription
controller.maxConcurrentReconciles5Maximum concurrent reconciliation loops
controller.watchNamespace""Namespace to watch (empty = all namespaces)
controller.syncPeriod"10h"Full cache resync period
controller.logLevel"info"Log level: debug, info, error

Cache​

ParameterDefaultDescription
cache.policyCacheTTL"5m"Time-to-live for cached policies
cache.policyCacheSize100Maximum number of cached policies
cache.maintenanceWindowCacheTTL"1m"TTL for maintenance window evaluations

Retry​

ParameterDefaultDescription
retry.maxAttempts5Maximum retry attempts
retry.initialDelay"100ms"Initial backoff delay
retry.maxDelay"30s"Maximum backoff delay
retry.backoffFactor2.0Exponential backoff multiplier

Webhooks​

ParameterDefaultDescription
webhooks.enabledtrueEnable admission webhooks
webhooks.port443Webhook service port
webhooks.targetPort9443Webhook container port
webhooks.failurePolicyFailWebhook failure policy
webhooks.timeoutSeconds10Webhook timeout

cert-manager​

ParameterDefaultDescription
certManager.enabledtrueUse cert-manager for webhook TLS
certManager.selfSignedtrueCreate a self-signed Issuer
certManager.issuerKindIssuerIssuer or ClusterIssuer
certManager.issuerName""External issuer name (when not self-signed)

Metrics​

ParameterDefaultDescription
metrics.bindAddress":8443"Metrics bind address
metrics.securetrueServe metrics over HTTPS
metrics.service.enabledtrueCreate metrics Service
metrics.service.port8443Metrics service port

Tracing​

ParameterDefaultDescription
tracing.enabledtrueEnable OpenTelemetry tracing
tracing.endpoint""OTLP collector endpoint
tracing.sampleRateTrace sampling rate (0.0-1.0)

High Availability​

ParameterDefaultDescription
replicaCount2Operator replicas
leaderElection.enabledtrueEnable leader election
autoscaling.enabledtrueEnable HPA
autoscaling.minReplicas2Minimum replicas
autoscaling.maxReplicas4Maximum replicas
autoscaling.targetCPUUtilizationPercentage80CPU target
autoscaling.targetMemoryUtilizationPercentage80Memory target
podDisruptionBudget.enabledtruePDB for operator pods
podDisruptionBudget.minAvailable1Min available operator pods

Observability​

ParameterDefaultDescription
serviceMonitor.enabledfalseCreate Prometheus ServiceMonitor
serviceMonitor.intervalScrape interval
serviceMonitor.scrapeTimeoutScrape timeout
prometheusRule.enabledfalseCreate PrometheusRule with alerting rules
prometheusRule.rules[]Custom alert rules (uses built-in when empty)

Security​

ParameterDefaultDescription
podSecurityContext.runAsNonRoottrueRun as non-root
securityContext.allowPrivilegeEscalationfalseNo privilege escalation
securityContext.readOnlyRootFilesystemtrueRead-only root filesystem
securityContext.capabilities.drop["ALL"]Drop all capabilities
networkPolicy.enabledfalseCreate NetworkPolicy for metrics
http2.enabledfalseEnable HTTP/2 (disabled for CVE mitigation)
crdRoles.enabledtrueCreate admin/editor/viewer ClusterRoles for PDBPolicy

Resources​

ParameterDefaultDescription
resources.limits.cpu500mCPU limit
resources.limits.memory512MiMemory limit
resources.requests.cpu100mCPU request
resources.requests.memory256MiMemory request

Scheduling​

ParameterDefaultDescription
nodeSelector{}Node selector
tolerations[]Tolerations
affinity{}Affinity rules
topologySpreadConstraints[]Topology spread constraints
priorityClassName""Priority class name

Extension Points​

ParameterDefaultDescription
extraEnv[]Additional environment variables
extraVolumes[]Additional volumes
extraVolumeMounts[]Additional volume mounts
commonLabels{}Labels applied to all resources
podAnnotationsAdditional pod annotations
podLabels{}Additional pod labels