Skip to content

Helm resource configuration

Helm resource configuration refers to the parameters and settings defined when deploying a Helm chart, typically managed via the helm_release resource in infrastructure-as-code tools like Terraform^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md]. This configuration controls the deployment behavior, specific values for the application, and metadata associated with the release^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].

Core Configuration

When defining a Helm release, several core parameters are required to identify and locate the chart^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md]:

  • Repository: The URL of the chart repository (e.g., https://kubernetes.github.io/dashboard/)^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].
  • Chart: The name of the chart to be installed (e.g., kubernetes-dashboard)^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].
  • Name: The specific release name to assign to the deployment (e.g., my-kubernetes-dashboard)^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].
  • Namespace: The Kubernetes Namespace where the resources will be deployed (defaults to default)^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].

Value Overrides

Configuration allows for the customization of chart defaults through set blocks^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md]. This mechanism overrides default values defined in the chart to suit specific requirements.

Common examples of value overrides include^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md]:

  • Replica Count: Setting the number of pods (e.g., "replicaCount" = "2").
  • Service Type: Exposing applications via LoadBalancer or NodePort (e.g., "service.type" = "LoadBalancer").
  • Port Configuration: Mapping external ports (e.g., "service.externalPort" = "80").
  • Feature Toggles: Enabling specific protocols or roles (e.g., "protocolHttp" = "true").

Deployment Behavior

Helm resources include specific arguments that dictate the lifecycle and behavior of the deployment process^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].

  • Atomic: If set to true, the installation process deletes the installation on failure^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].
  • Create Namespace: Determines if the target namespace should be created if it does not exist^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].
  • Dependency Update: Updates chart dependencies if set to true before installation^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].
  • Timeout: The time in seconds to wait for any individual Kubernetes operation (like a hook for a Pod start)^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md].

Sources

^[400-devops-06-kubernetes-devops-helm-terraform-helm-readme.md]