Skip to main content

Standardize Cluster Provisioning and Maintenance with Cluster Templates

When you manage many Kubernetes clusters, configuring and upgrading them one by one does not scale. You need a way to apply the same configuration and upgrade rules across multiple clusters.

Palette supports this workflow with cluster templates. Cluster templates let you reuse a cluster configuration, control when upgrades happen, and apply changes to multiple clusters at once.

Cluster templates are built from two related concepts:

  • Cluster profiles, which define the software stack and infrastructure configuration of a cluster.
  • Cluster template policies, which define how clusters created from a template are operated, such as when upgrades are allowed to run.

A maintenance policy is one type of cluster template policy. Maintenance policies define a maintenance window that controls when upgrades can run. Currently, maintenance policies are the only cluster template policy type available in Palette.

Cluster templates link cluster profiles and policies. When you create clusters from the same template, those clusters share the same base configuration and follow the same operational rules.

In this tutorial, you will:

  • Create a cluster profile
  • Create a cluster template policy
  • Create a cluster template that uses the profile and policy
  • Deploy two clusters (dev and prod) from the same template
  • Use different cluster profile variables to apply environment-specific settings
  • Update the template and upgrade both clusters together

Cluster templates can be used across all supported environments in Palette. This tutorial demonstrates two workflows: Palette UI on AWS and Terraform on AWS or Azure. Choose the workflow that fits your preferred way of working.

Prerequisites

  • A Palette account with permission to create cluster profiles, cluster template policies, cluster templates, and clusters.
  • A cloud account registered in Palette. Refer to AWS for the Palette UI workflow, or AWS and Azure for the Terraform workflow.
  • Ensure that the Palette Community Registry is available in your Palette environment.

If you plan to use Terraform:

  • Terraform version 1.x installed.
  • A Palette API key set as an environment variable.

Provision and Upgrade Clusters Using the Palette UI for AWS

Import a Cluster Profile

Create a Cluster Template Policy (Maintenance)

Create a Cluster Template

Deploy a Dev Cluster from the Template

Deploy a Prod Cluster from the Template

Validate the Deployments

Create a New Cluster Profile Version

Update the Cluster Template to the New Profile Version

Upgrade Clusters

Validate the Upgrades

Cleanup

Provision and Upgrade Clusters Using Terraform

Configure the Terraform Provider

Create a Cluster Profile

Create a Cluster Template Policy (Maintenance)

Create a Cluster Template

Deploy Dev and Prod Clusters with Different Variable Values

Validate the Deployments

Create a New Cluster Profile Version

Update the Cluster Template to the New Profile Version

Upgrade Clusters

Validate the Upgrades

Cleanup