Skip to main content

Cluster Plan Details

< create overview | cluster plan creation workflow Cluster Plan Create Details

Prerequisite(s)


Overview

  • Identification and Description: Naming and describing your cluster plan helps workspace members (developers) quickly identify the appropriate configuration for their application environments (AppEnvs). This clarity reduces confusion and ensures that the right configuration is selected.

  • Versioning: You assign a unique semantic version (e.g., 1.0.0) to each cluster plan, which cannot be changed once created. This version uniquely identifies the configuration within Wayfinder, including the specific Kubernetes version. Developers refer to cluster plan versions to ensure consistency and compatibility with their AppEnvs.

    The Kubernetes version refers to the particular iteration of the Kubernetes software. For supported Kubernetes versions, refer to the documentation for AWS, Azure, and GCP. When you need to update the configuration, such as upgrading to a new Kubernetes version or deploying new package versions, you will create a new version of the cluster plan.

  • Cloud Provider Configuration: Cluster plans specify configuration details tailored to specific cloud providers such as AWS, Azure, or GCP. This ensures that the Kubernetes clusters are provisioned correctly with the necessary resources and settings unique to each cloud environment.

    If the desired cloud provider is not listed, configure a Cloud Access with the access type set to "Kubernetes Cluster Provisioning."

  • Automatic and Custom Labels: Wayfinder adds its own set of labels to clusters to identify the provider, stage, workspace and cloud region the cluster is within. These are used to target policies to a cluster. You can optionally add custom labels to allow further control over policy targeting.

Wayfinder allows you to create versioned cluster plans using its CLI or Web Interface. For newcomers, starting with the Web Interface helps in understanding Wayfinder's concepts and the structure of Wayfinder's cluster plan YAML files.

📚 For more details on key points, refer to the overview section.
📚 Explore the properties section for additional information on each UI property.



CLI Instructions

CLI Commands - Quick Reference

InstructionCLI Command
Create a cluster planwf init clusterplan PLANNAME --cloud CLOUD --network-plan NETWORKPLANNAME --kubernetes-version VERSION
Create a cluster plan interactivelywf init clusterplan PLANNAME
List all cluster plans and their versionswf get clusterplan
View versioned cluster plan's manifest in consolewf get clusterplan PLANNAME --version SEMVERSION -o yaml
Output versioned cluster plan's manifest to filewf get clusterplan PLANNAME --version SEMVERSION -o yaml > MYPLAN.yaml
Apply a versioned cluster plan's manifest from filewf apply -f MYPLAN.yaml

Create a new cluster plan

When creating a cluster plan using the CLI, you have two options: specifying the full command or using Wayfinder's interactive prompts.

- Full Command

FORMAT:

wf init clusterplan PLANNAME --cloud CLOUD --network-plan NETWORKPLANNAME --kubernetes-version VERSION

To initialise a cluster plan, use the following command:

wf init clusterplan azure-playground --cloud azure --network-plan aks-standard --kubernetes-version 1.29.6

This command outputs the cluster plan's YAML configuration to the console. Modify the YAML as needed, then apply the configuration with the command:

wf apply -f FILENAME.yaml


- Interactive Prompts

To create a cluster plan interactively, use the wf init clusterplan CLUSTERPLAN command. Wayfinder will guide you through a series of questions where you select the appropriate properties for your configuration. This method eases the process by eliminating the need to manually input all parameters.

After completing all the prompts, the cluster plan's YAML is output to the console. Make any necessary adjustments, then apply the YAML using the wf apply -f FILENAME.yaml command.

Wayfinder Init Clusterplan



- Alternative Method (Newcomers)

For newcomers, starting with a copy of one of Wayfinder's out-of-the-box cluster plans can help you understand what the YAML might look like for a specific configuration.

Follow these steps:

  1. Check which plans already exist using the wf get clusterplans command. If this is a new installation of Wayfinder, then you'll see Wayfinder's default cluster plans.
wf get clusterplans

NAME K8S VER DESCRIPTION CLOUD AGE LATEST VERSION
aks-hardened 1.30 Hardened AKS cluster with a default "restricted" PSS Policy and no public ingress controller. AKS 494d 0.0.0
aks-standard 1.27 General purpose AKS cluster on v1.27 AKS 10d 1.27.0
eks-hardened 1.28 Hardened EKS cluster with a default "restricted" PSS Policy and no public ingress controller. EKS 494d 0.0.0
eks-standard 1.29 General purpose EKS cluster. EKS 494d 0.0.0
gke-hardened 1.28 Hardened GKE cluster with a default "restricted" PSS Policy and no public ingress controller. GKE 494d 0.0.0
gke-standard 1.30 General purpose GKE cluster. GKE 494d 0.0.0


  1. Get the yaml from an existing plan:
wf get clusterplan aks-hardened --version 0.0.0 -o yaml > MYPLAN.yaml

This copies the the aks-hardened cluster plan and places it in a file MYPLAN.yaml. Note that the --version flag specifies the version of the cluster plan itself, not the Kubernetes version included in the plan.


  1. Edit the plan file as needed, being sure to change the metadata name to a new name and the cluster plan version to a new version, to indicate that you wish to make a new plan. Thereafter, apply the file:
wf apply -f MYPLAN.yaml


Define a management peering rule

info

If your cluster is private, then you need to define a management peering rule. Skip this step if your cluster plan does not enable a private cluster.



Web Interface Instructions

Note that Wayfinder's User Interface has several sections you need to follow in order to create a new cluster plan. Below only outlines the Details section.

Steps

  • Expand Admin, and then navigate to Kubernetes > Cluster Plans
  • Click the +Cluster Plan button
  • Fill in the details as outlined in the properties section.
  • Click Continue to proceed

Screenshot(s)

Create Cluster Plan - Details Section


Properties

FieldDescription
NameThe name if the cluster plan (e.g., eks-budget-plan). Assists developers in selecting the correct cluster plan when creating an AppEnv.
VersionThe version of the cluster plan. Uses semantic versioning (e.g., 2.1.5).
DescriptionA short description describing the purpose of the cluster plan (e.g., Low cost cluster configuration for testing purposes). Assists developers in selecting the correct cluster plan when creating an AppEnv.
Cloud ProviderThe Cloud Provider in which the clusters are to be created using this cluster plan. Select one per cluster plan.
Option(s):
- Amazon Web Services (EKS)
- Microsoft Azure (AKS)
- Google Cloud (GKE)

Note: If you don't see the cloud provider you're looking for, then create a Cloud Access with access type "Kubernetes Cluster Provisioning".
Kubernetes VersionThe particular iteration of the Kubernetes software.
See Cloud Providers for supported versions:
- AWS
- Azure
- GCP
SKU tier (Azure only)Azure provide multiple different service levels for AKS. This controls the performance of the control plane and the applicable uptime SLA.
There is significant cost differences between the options.
LabelsWayfinder adds its own set of labels to clusters to identify the provider, stage, workspace and cloud region the cluster is within. These are used to target policies to a cluster. You can optionally add custom labels to allow further control over policy targeting.


What comes next?