1. Answers
  2. Deploying Dagster on Kubernetes

How do I deploy the Dagster Helm chart on Kubernetes?

In this guide, we will deploy the Dagster Helm chart on a Kubernetes cluster using Pulumi. Dagster is a data orchestrator for machine learning, analytics, and ETL. Helm is a package manager for Kubernetes that allows you to define, install, and upgrade complex Kubernetes applications. Pulumi is an infrastructure as code tool that lets you define your cloud resources using real programming languages.

Key Points

  • We will use the Pulumi Kubernetes provider to interact with our Kubernetes cluster.
  • We will deploy the Dagster Helm chart using the kubernetes.helm.v3.Chart resource.
  • All necessary entities will be defined within the Pulumi program.
import * as pulumi from "@pulumi/pulumi";
import * as k8s from "@pulumi/kubernetes";

// Create a namespace for Dagster
const dagsterNamespace = new k8s.core.v1.Namespace("dagster-namespace", {
    metadata: {
        name: "dagster",
    },
});

// Deploy the Dagster Helm chart
const dagster = new k8s.helm.v3.Chart("dagster", {
    chart: "dagster",
    version: "0.11.16",  // Specify the version of the Dagster chart
    fetchOpts: {
        repo: "https://dagster-io.github.io/helm",
    },
    namespace: dagsterNamespace.metadata.name,
    values: {
        // Customize your Dagster installation here
        dagit: {
            replicas: 2,
        },
        userDeployments: {
            enabled: true,
        },
    },
});

// Export the URL of the Dagster UI
export const dagsterUrl = pulumi.interpolate`http://dagster.${dagsterNamespace.metadata.name}.svc.cluster.local:3000`;

Summary

In this guide, we deployed the Dagster Helm chart on a Kubernetes cluster using Pulumi. We created a namespace for Dagster and used the kubernetes.helm.v3.Chart resource to deploy the Helm chart. We also customized the installation by specifying values for the Dagster UI and user deployments. Finally, we exported the URL of the Dagster UI for easy access.

Deploy this code

Want to deploy this code? Sign up for a free Pulumi account to deploy in a few clicks.

Sign up

New to Pulumi?

Want to deploy this code? Sign up with Pulumi to deploy in a few clicks.

Sign up