The Issue
When trying to upgrade an attached Tanzu Kubernetes Grid Cluster via Tanzu Mission Control (TMC), that is either created by a Tanzu Management Cluster, or via the Tanzu Kubernetes Grid Service (vSphere with Tanzu), the console gives you an error message similar to:
API Error: Failed to upgrade cluster: (target=mc:01G4BGAVKHHB6C3JJ5R0WA44NM, intentId=01G4CMP025ZHEBQ000E4SM996H): admission webhook "default.validating.tanzukubernetescluster.run.tanzu.vmware.com" denied the request: updates to immutable fields are not allowed (invalid argument)
I’ve captured some screenshots below of the process.
The Cause
Tanzu Mission Control doesn’t keep information about the Tanzu Clusters CNI configuration. Today, TMC doesn’t support upgrading clusters that are provisioned using Callico. This is not documented in the TMC Documentation.
If you provision a cluster using TMC, it will use the Antrea CNI, and you cannot change this.
Below you can see that my cluster was provisioned using the Callico CNI.
The Fix
Upgrade the Tanzu Cluster outside of Tanzu Mission Control.
- VMware Tanzu Kubernetes Grid Product Documentation
- vSphere with Tanzu Configuration and Management
Regards