Skip to content

Helm chart configuration parameters

Helm chart configuration parameters are specific values used to customize the deployment and behavior of a Helm chart within a Kubernetes cluster^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]. These parameters, often referred to as "values," allow users to override default settings defined by chart maintainers to suit their specific environment or requirements^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].

Configuration methods

Parameters can be passed to the Helm command during installation or upgrade using two primary methods^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]:

  • Command-line arguments: The --set flag allows for individual overrides using a key=value syntax^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].
  • YAML files: A values.yaml file can be provided using the -f flag to specify bulk configurations^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].

Common parameter categories

While specific parameters depend on the chart, standard categories typically include:

  • Image settings: Parameters such as image.repository, image.tag, and image.pullPolicy define the container source and update strategy^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].
  • Service exposure: The service object (e.g., service.type, service.externalPort) configures how the application is accessed internally or externally^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].
  • Ingress: Settings under ingress control routing, such as enabling the Ingress Controller, defining hosts, and managing TLS certificates^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].
  • Resource management: resources allows users to set specific requests and limits for CPU and memory to manage Pod scheduling and consumption^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].
  • Scaling and availability: replicaCount defines the number of Pod instances to run^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]. Settings for podDisruptionBudget can also be configured to manage availability during disruptions^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].
  • Security: Context parameters like containerSecurityContext and podSecurityContext enforce security settings such as running as a non-root user or read-only root filesystem^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].
  • Metadata: annotations and labels are used to attach identifying metadata to deployments or pods^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].
  • Health probes: Parameters like livenessProbe allow configuration of health checks, such as setting initial delay seconds^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].

Sources

^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]