Skip to content

Helm Charts#

k0s supports deploying applications with Helm charts in two ways:

  • Helm command can be used in runtime to install applications like described in the Helm Quickstart Guide.
  • Helm charts can be inserted directly into the k0s configuration file (k0s.yaml). This way a separate install of helm tool is not needed and the charts are automatically deployed at the k0s bootstrap phase.

Helm charts in k0s configuration#

When Helm charts are added into k0s configuration file, you'll get a declarative way to configure the cluster. k0s controller manages the setup of the defined extension Helm charts as part of the cluster bootstrap process.

Example#

This example configures Prometheus from "stable" Helms chart repository. Just add the following to your k0s configuration file (k0s.yaml) and restart k0s. Prometheus should now start automatically with k0s.

spec:
    extensions:
      helm:
        repositories:
        - name: stable
          url: https://charts.helm.sh/stable
        - name: prometheus-community
          url: https://prometheus-community.github.io/helm-charts
        charts:
        - name: prometheus-stack
          chartname: prometheus-community/prometheus
          version: "11.16.8"
          values: |
            storageSpec:
              emptyDir:
                medium: Memory
          namespace: default

Some example extensions that you could use with Helm charts: