Skip to main content

Azure Marketplace Installation Guide

This guide walks you through deploying a Self-hosted Catalyst region to your own Azure subscription after subscribing to Diagrid Catalyst on the Azure Marketplace. The end-to-end journey is described in four phases: subscribing, registering, deploying a Solution Template, and verifying.

Prerequisites

Azure Account

  • An active Azure subscription with a valid payment method
  • Owner or Contributor + User Access Administrator role on the subscription
  • Sufficient Dsv7-family vCPU quota in your target Azure region (see the table below)

The solution template deployment uses D-series v7 VMs for both the AKS node pool and the jumpbox. The AKS node pool is provisioned with Cluster Autoscaler enabled, so quota must cover at least the baseline, and ideally the autoscaler peak:

SizeAKS nodes (desired → max)JumpboxBaseline vCPUsAutoscaler peak vCPUs
SmallD2s_v7 × 1 → 3D2s_v748
MediumD4s_v7 × 2 → 5D2s_v71022
LargeD8s_v7 × 3 → 10D4s_v72884

SSH Key

You will need an SSH public key for jumpbox access. If you don't have one:

ssh-keygen -t ed25519 -f ~/.ssh/catalyst-jumpbox

Step 1: Subscribe on Azure Marketplace

  1. Navigate to the Diagrid Catalyst Enterprise listing on Azure Marketplace.
  2. Click Get it now.
  3. Select your plan and click Subscribe.
  4. Once the subscription is confirmed, click Configure account now — you will be automatically redirected to the Diagrid registration page.

Step 2: Create a Diagrid Account

Catalyst portal "Deploy Catalyst Self-Hosted" step showing the join token, Catalyst version, and the Continue to Azure button

  1. You will land on the Catalyst login page.
  2. Sign up for a new Diagrid account, or log in if you already have one.
  3. Once logged in, Diagrid automatically creates a Catalyst region and displays a join token and a Catalyst version. Copy both values as you will paste them into the Azure Solution Template form.
  4. Click Continue to Azure to open the Catalyst Solution Template listing on Azure Marketplace in a new browser tab. Click Get it now to launch the Solution Template deployment form in the Azure Portal. Keep the Catalyst portal browser tab open; you will return here after deployment to verify your region.

Step 3: Deploy the Solution Template in Azure

Azure Portal "Create Diagrid Catalyst Enterprise Deployment" form — Basics tab

The Azure Portal opens on the Catalyst Solution Template page. Fill in the required fields below on each of the tabs, including the join token and Catalyst version you copied in Step 2:

Basics

FieldValue
SubscriptionSelect your Azure subscription
Resource groupSelect an existing resource group or click Create new
RegionSelect the Azure region for your deployment (e.g. East US)
Cluster nameA name prefix for all resources (default: catalyst)
Deployment sizeChoose Small, Medium, or Large based on your workload. See table above for details
Catalyst join tokenCopy from the Diagrid marketplace registration page

Networking & SSH

FieldValue
SSH public keyYour SSH public key created above in Prerequisites
Operator SSH CIDRYour IP range for SSH access to the jumpbox (e.g. 203.0.113.5/32). Use 0.0.0.0/0 only for short-lived testing.
VNet address spaceVNet CIDR — default 10.42.0.0/16 is fine for most deployments
Workload subnet CIDRSubnet for AKS and jumpbox — default 10.42.1.0/24 is fine for most deployments

DNS & TLS (optional)

Skip this section if you want Diagrid to manage your region's ingress domain automatically. If you require a custom domain, check Enable public DNS + TLS and provide your wildcard domain name and a contact email for Let's Encrypt certificate registration.

Advanced

FieldValue
Catalyst Helm chart versionCopy from the Diagrid marketplace registration page

Leave the remaining control plane endpoint values at their defaults unless instructed otherwise by Diagrid support.

Launch

  1. Click Review + Create.
  2. Review the deployment summary and click Create to begin the Azure resource deployment.

You can monitor progress in the Azure Portal under your resource group's Deployments blade.

Infrastructure Resources Deployed

The deployment creates a resource group and provisions the following infrastructure in sequence:

Networking: A VNet with a workload subnet for AKS nodes and an ACI-delegated subnet for the post-deploy automation.

Kubernetes cluster: A private AKS cluster is created in the workload subnet with Azure CNI networking. The cluster API endpoint is private (not publicly accessible). Workload Identity and OIDC issuer are enabled. A managed node pool is provisioned at the size you selected.

DNS (optional): If you enabled DNS integration, an Azure DNS zone is created along with user-assigned managed identities and federated credentials for cert-manager and external-dns. You will need to delegate NS records from your domain registrar to the Azure DNS name servers shown in the deployment outputs.

Jumpbox: An Ubuntu VM with a public IP is deployed in the same VNet, providing SSH access to the private AKS cluster for troubleshooting.

Catalyst region installation: A post-deploy script runs as an Azure Container Instance inside the VNet. It installs Helm and kubectl, optionally configures cert-manager and external-dns, then installs Catalyst via Helm using the join token. Once Catalyst connects to the Diagrid control plane, the deployment completes.

Step 4: Verify Your Deployment

Check the Azure Portal

Navigate to Resource Groups in the Azure Portal and find the resource group matching your cluster name. Confirm the deployment status shows Succeeded.

Azure Portal resource group showing the deployments as Succeeded and the created Catalyst resources

Check the Region status

Return to the Catalyst portal tab or go to the Catalyst portal and log in:

  1. Navigate to Regions in the left sidebar.
  2. Find your region by the name you noted in Step 2 and check the following two status indicators:
FieldValuesWhat it means
Connection Statejoiningonlinejoining means Catalyst has not connected yet. online means the agent is connected and communicating.
StatusreadyThe region is fully operational.

Once the region shows online and ready, your deployment is complete.

Check the Ingress Address

In the region detail view, the Ingress Addresses section shows the IP address or domain for your Catalyst region's gateway.

Troubleshooting

If the deployment fails or the region does not reach online / ready status, delete the resource group in the Azure Portal and redeploy. If the issue persists, contact Diagrid support.

Access the Cluster Directly

If you need to troubleshoot the cluster, SSH into the jumpbox:

ssh -i ~/.ssh/catalyst-jumpbox azureuser@<jumpbox-public-ip>

The jumpbox has network access to the private AKS cluster. From there you can run kubectl commands.

Next Steps

With your Catalyst region running, try the Operator Quickstart to create a project that your team can build in.