Helm Charts

Deploy Kubernetes applications using Helm charts from standard or OCI repositories

Helm Charts are packages of pre-configured Kubernetes resources that help you define, install, and upgrade Kubernetes applications. You can integrate Helm Charts with DuploCloud to deploy applications onto the Kubernetes clusters you've created in DuploCloud. For Helm Charts general guidance and best practices, see the Helm Charts Info page in the DuploCloud Extras section.

Helm Charts are only supported for administrator-level DuploCloud users.

Prerequisites

  • Ensure you have a Kubernetes cluster set up in DuploCloud.

  • Install Helm on your local machine or a machine with access to your Kubernetes cluster.

Creating Helm Charts

Identify the Helm charts you want to use for deploying your applications or services.

You can use community-maintained charts from public repositories like Artifact Hub, or you can create your own custom charts tailored to your specific needs.

To create custom Helm charts, modify the values.yaml or create custom templates as necessary. This might involve configuring resource limits, environment variables, or other settings specific to your deployment.

You can also modify Helm Chart values using the node selector. This is the most common method. For example, to deploy a chart into the duploservices-mytenant Tenant using the node selector, give:

nodeSelector:
  tenantname: duploservices-mytenant

To specify which hosts the chart should run on using the node selector with allocation tags, give:

nodeSelector:
  tenantname: duploservices-mytenant
  allocationtags: mychart

Adding Helm Repositories in DuploCloud

Add Helm chart repositories so you can deploy applications to your Kubernetes clusters. When adding a repository, you’ll select the repository type. You can choose standard Helm repositories, which use a catalog (index.yaml) to list charts, or OCI repositories, which allow certain OCI-compliant registries to be treated like Helm repositories. Once the repository is added, its charts become available for deploying Helm releases in your clusters.

To add a Helm repository in the DuploCloud Portal:

  1. Navigate to Kubernetes -> Helm.

  2. Select the Repository tab, and click Add. The Add Helm Repository pane displays.

Add Helm Repository pane
  1. Complete the following fields:

Name

Enter a friendly name for the repository.

Interval (MM:SS)

Select how often DuploCloud should check for changes in the repository and reconcile them in the Kubernetes cluster, e.g., 05:00.

Repository Type

Choose the type of repository. Select Helm Repository or OCI Repository (select OCI to treat certain OCI registries as Helm repos).

Repository URL

Enter the full URL of the Helm repository. Example: https://charts.bitnami.com/bitnami

  1. Click Create. The Helm repository is added.

Managing Helm Repositories

Once you've added a Helm repository, you can view its details, update its configuration, or delete from directly in the DuploCloud Portal.

  1. Navigate to Kubernetes Helm.

  2. Select the Helm Repository tab.

  3. Click the menu icon () in the row of the repository you want to manage.

  4. Choose one of the following actions:

View

View the repository’s current configuration, sync status, and metadata.

Update

Edit the repository name, URL, sync interval, or authentication settings.

Delete

Remove the repository from DuploCloud. Releases that depend on it will no longer reconcile.

Deleting a Helm repository will not remove any releases that were deployed from it, but those releases will no longer reconcile unless the repository is re-added.

Deploying a Helm Release

Deploy a Kubernetes cluster using a Helm Chart from the DuploCloud Platform.

  1. From the DuploCloud Portal, navigate to KubernetesHelm.

  2. Select the Release tab, and click Add. The Add Helm Release page displays

Add Helm Release page in the DuploCloud Portal
  1. Complete the following fields.

Name

Enter a unique name for this Helm release (e.g., nginx-release).

Release Name

Enter the name to identify the application deployment in Kubernetes (e.g., nginx-release).

Interval (MM:SS)

Set the time interval for periodic reconciliation of the release (e.g., 02:00).

Source Type

Choose where the Helm chart is stored (e.g., HelmRepository or OCIRepository).

Source Name

Select the name of the Helm repository or source.

Reconcile Strategy

Select how Helm should ensure the deployment stays consistent with the source chart:

  • Chart Version (default) – Select this option to produce a new chart artifact only when the chart version changes in the Helm repository. Updates to the source without a version change will be ignored.

  • Revision – Select this option to produce a new chart artifact whenever the source revision changes, even if the chart version remains the same.

Name

Specify the name of the Helm chart to use (e.g., nginx).

Version

Specify the Helm chart version (e.g., 15.1.0).

Interval (MM:SS)

Set how often the tool checks for updates in the repository and reconciles changes in the cluster (e.g., 02:00).

Values

Add any custom configuration values in YAML format to override chart defaults (e.g., replicaCount: 2).

ValuesFrom

Optionally, specify an external source (e.g., a ConfigMap or Secret) to provide values, instead of entering them directly in the Values field.

Labels

Enter key-value pairs to assign metadata to the Helm release.

  1. Click Add to deploy the Helm release. To check the status of your release, navigate to Kubernetes Helm and select the Release tab.

Release tab on the Kubernetes Helm page

Viewing Helm Deployments

Navigate to the Services page (KubernetesServices) to view a list of all deployed services, including those created using Helm Charts. Use this view to confirm that the service has deployed without errors and all components are running as expected.

  • Helm-deployed services are displayed in read-only mode. This means:

    • You can view details (e.g., replicas, resource allocation, logs) to confirm that the service is functioning as expected.

    • However, you cannot modify the service directly in DuploCloud. Any changes to the service must be made by updating the Helm chart and redeploying it.

Kubernetes Services page with the read-only nginx-release Service highlighted

Click on the name of the Service in the NAME column to view details.

The details page for the Service created using Helm Charts

Last updated

Was this helpful?