Create and Manage Nutanix Cluster
Palette supports creating and managing Kubernetes clusters deployed to a Nutanix infrastructure environment. This section guides you in creating and updating a Kubernetes cluster in a Nutanix cloud managed by Palette.
Deploy a Nutanix Cluster
Prerequisites
- A Nutanix cloud account added to Palette. Refer to Add Nutanix Cloud Account.
-
A Nutanix Private Cloud Gateway (PCG) deployed. For guidance, review Install Private Cloud Gateway.
-
An infrastructure cluster profile created for the Nutanix cloud. For guidance on creating a profile, refer to Create an Infrastructure Profile. At the Cloud Type step of profile creation, select Nutanix listed under the Tech Preview. Select the custom packs provided at the OS and Kubernetes layers. Palette provides out-of-the-box packs for the network and storage profile layers, including the Nutanix CSI storage pack.
-
A Nutanix Prism Central account with Prism Admin role.
-
A Nutanix Prism Element cluster created.
-
A Nutanix subnet created in Nutanix Prism Central that will be assigned to the Virtual Machines (VMs) that will make up the Kubernetes cluster.
-
A Nutanix Cluster API (CAPI) OS image. For guidance on creating the image, refer to Building CAPI Images for Nutanix Cloud Platform.
Enablement
Follow the steps below to deploy a Nutanix cluster.
-
Log in to Palette.
-
Ensure you are in the correct project scope.
-
From the left Main Menu, select Clusters and click Add New Cluster.
-
In Tech Preview, select Nutanix.
-
In the bottom-right corner, click Start Nutanix Configuration.
-
Fill out the following basic information, and click Next to continue.
Field Description Cluster Name A custom name for your cluster. Description Use the description to provide context about the cluster. Tags Assign any desired cluster tags. Cloud Account Select your Nutanix account from the drop-down Menu. -
Select the Nutanix cluster profile you created and click Next. Palette displays the profile layers.
-
Review profile layers, leaving the OS and Kubernetes packs empty, and customize parameters as desired in the YAML files that display when you select the network and storage layers. Click Next when you are done.
-
In the Cluster Configuration Macros pane, enter values that apply to your Nutanix cloud environment and, if necessary, adjust the Cluster configuration YAML file to configure your cluster. Click Next when you are ready to proceed.
infoThe inactive fields are auto-populated from your Nutanix cloud account configuration. When entering other macros, make sure to verify the default values.
Field Description NUTANIX_ADDITIONAL_TRUST_BUNDLE An optional environment variable that allows CAPX to verify certificates that are not issued by a publicly trusted certificate authority. For more information, refer to the Nutanix Certificate Trust guide. CONTROL_PLANE_ENDPOINT_IP The host IP of the CAPX Kubernetes cluster. CONTROL_PLANE_ENDPOINT_PORT Port of the CAPX Kubernetes cluster that you assigned in cloudClusterTemplate.yaml
. Defaults to6443
. -
In the Node Pool Configuration Macros panes for the control plane and worker pools, enter the values that apply to your Nutanix cloud environment and, if necessary, adjust their Node pool configuration YAML files.
You can configure scaling in the Palette UI by specifying the number of nodes in the pool. This corresponds to
replicas
in the YAML file.infoThe inactive fields are auto-populated from the cluster configuration specified in the previous step. When entering other macros, make sure to verify the default values.
Control Plane Pool
Field Description TLS_CIPHER_SUITES Cryptographic algorithms for securing network communications. Refer to Nutanix Cryptographic Module for OpenSSL for more options and details. KUBEVIP_SVC_ENABLE This setting enables a service of type LoadBalancer
. Refer to the Kubernetes Service Load Balancing docs for details.KUBEVIP_LB_ENABLE This setting allows control plane load balancing using IPVS. Refer to the Control Plane Load-Balancing docs for details. KUBEVIP_SVC_ELECTION This setting enables watching services of type LoadBalancer
.NUTANIX_SSH_AUTHORIZED_KEY Your public SSH key. KUBERNETES_VERSION Your cluster Kubernetes version preceded with v
, for example,v1.26.3
.NUTANIX_MACHINE_BOOT_TYPE The VM boot type. Depends on the OS image you're using. Allowed values: legacy
,uefi
. Defaults tolegacy
.NUTANIX_PRISM_ELEMENT_CLUSTER_NAME The name of your Nutanix AHV cluster as defined in Prism. NUTANIX_MACHINE_TEMPLATE_IMAGE_NAME The name of your OS image as defined in Prism Central. To locate images, in the Nutanix Prism dashboard, navigate to Compute & Storage and select Images. NUTANIX_MACHINE_MEMORY_SIZE Amount of memory. Defaults to 4Gi
.NUTANIX_SUBNET_NAME The name of the subnet defined in Prism Central, which will be assigned to the VMs deployed in this cluster. NUTANIX_SYSTEMDISK_SIZE Amount of storage assigned to the system disk. Defaults to 40Gi
.NUTANIX_MACHINE_VCPU_SOCKET Number of vCPU sockets. Defaults to 2
.NUTANIX_MACHINE_VCPU_PER_SOCKET Number of vCPUs per socket. Defaults to 1
.Worker Pool
Field Description KUBERNETES_VERSION Your cluster Kubernetes version preceded with v
, for example,v1.26.3
.NUTANIX_MACHINE_BOOT_TYPE The VM boot type. Depends on the OS image you're using. Allowed values: legacy
,uefi
. Defaults tolegacy
.NUTANIX_PRISM_ELEMENT_CLUSTER_NAME The name of your Nutanix AHV cluster as defined in Prism. NUTANIX_MACHINE_TEMPLATE_IMAGE_NAME The name of your OS image as defined in Prism Central. To locate images, in the Nutanix Prism dashboard, navigate to Compute & Storage and select Images. NUTANIX_MACHINE_MEMORY_SIZE Amount of memory. Defaults to 4Gi
.NUTANIX_SUBNET_NAME The name of the subnet defined in Prism Central, which will be assigned to the VMs deployed in this cluster. NUTANIX_SYSTEMDISK_SIZE Amount of storage assigned to the system disk. Defaults to 40Gi
.NUTANIX_MACHINE_VCPU_SOCKET Number of vCPU sockets. Defaults to 2
.NUTANIX_MACHINE_VCPU_PER_SOCKET Number of vCPUs per socket. Defaults to 1
.TLS_CIPHER_SUITES Cryptographic algorithms for securing network communications. Refer to Nutanix Cryptographic Module for OpenSSL for more options and details. NUTANIX_SSH_AUTHORIZED_KEY Your public SSH key. -
Click Next when you are done.
-
Review the options for OS patching schedule, scanning, backups, and RBAC.
-
Click Validate and review the cluster configuration and settings summary.
-
Click Finish Configuration to deploy the cluster. The cluster details page contains the status and details of the deployment. Use this page to track deployment progress. Provisioning clusters can take several minutes to complete.
Validate
-
Log in to Palette.
-
Navigate to the left Main Menu and select Clusters. The Clusters page displays a list of all available clusters that Palette manages.
-
Click on the Nutanix cluster you created to view its details page.
-
Ensure the Cluster Status field displays Running.
Update a Deployed Cluster
Palette supports editing the settings of a deployed Nutanix cluster, including the control plane and worker node pool configurations. You can change the memory, CPU, or storage of your node pools. Follow the steps described below to update your cluster.
Prerequisites
- An active Nutanix cluster in Palette.
- The
cluster.update
permission to update clusters. Refer to Roles and Permissions for more information.
Enablement
-
Log in to Palette.
-
From the left Main Menu, select Clusters.
-
Click on the Nutanix cluster you created.
-
To edit the cluster settings, from the cluster details page, click Settings and select Cluster Configuration. Edit the YAML file that Palette displays.
Update Control Plane Node Pool
-
Navigate to the cluster details page and click the Nodes tab.
-
In the control plane node pool you want to edit, click Edit to open its YAML configuration file.
-
Edit the
NutanixMachineTemplate
object. You can update the memory (memorySize
), CPU (vcpuSockets
andvcpuPerSocket
), and storage (systemDiskSize
). Once you are finished changing the node pool configurations, update thename
parameter under themetadata
line. For example, if the previous name was control-plane-pool-resource-3, rename it to control-plane-pool-resource-4.warningYou must update the node pool name for the configuration updates to take effect.
-
Edit the
KubeadmControlPlane
object. Change thename
parameter under thekind: NutanixMachineTemplate
line to match the new name you used in theNutanixMachineTemplate
object. -
When you are done updating the control plane node pool configuration, click Confirm and Continue to confirm the changes.
Update Worker Node Pool
-
Navigate to the cluster details page and click the Nodes tab.
-
In the worker node pool you want to edit, click Edit to open its YAML configuration file.
-
Edit the
NutanixMachineTemplate
object. You can update the memory (memorySize
), CPU (vcpuSockets
andvcpuPerSocket
), and storage (systemDiskSize
). Once you are finished editing the node pool configurations, update thename
parameter under themetadata
line. For example, if the previous name was worker-pool-resource-3, rename it to worker-pool-resource-4.warningYou must update the node pool name for the configuration updates to take effect.
-
Edit the
MachineDeployment
object. Change thename
parameter under thekind: NutanixMachineTemplate
line to match the new name you used in theNutanixMachineTemplate
object. -
When you are done updating the worker node pool configuration, click Confirm and Continue to confirm the changes.
-
The node pool alterations will trigger a cluster repave. Follow the Approve Cluster Repave guide to incorporate the updates to your cluster.
Validate
-
Log in to Palette.
-
From the left Main Menu, select Clusters.
-
Click on the Nutanix cluster you deployed, and then click on the Nodes tab.
-
Verify that all nodes are in the Running and Healthy status, and reflect the applied repave changes.