When the TKG Controller provisions a TKG cluster, several status conditions are reported that you can use to get direct insight into key aspects of machine health.

Check TKG Cluster Readiness

You can use the TKG cluster readiness conditions to determine which, if any, phase or component is not ready.

Once you check for cluster readiness, to diagnose further you can use vSphereCluster and machine conditions to look further in more detail failure.

To check the readiness of a TKG cluster:
  1. Log in to the Supervisor.
  2. Switch conext to the vSphere Namespace where the target cluster is provisioned. For example:
    kubectl config use-context tkg-cluster-ns
  3. Run the command kubectl get tkc -o yaml or kubectl get cluster -o yaml depending on the type of TKG cluster.

    The command returns the readiness of cluster components. Refer to the sections that follow for a descriptions of the various states of readiness.

ControlPlaneReady Condition and Reasons

The table lists and describes the ControlPlaneReady condition.
Table 1. ControlPlaneReady Condition
Condition Type Description
ControlPlaneReady Reports if the control plane nodes are ready and functional for the cluster.

The table lists and describes the reasons why the ControlPlaneReady condition may be false.

Table 2. ControlPlaneReady False Reasons
Reason Description
WaitingForClusterInfrastructure Indicates that the cluster is waiting for prerequisites that are necessary for running machines, such as a load balancer. This reason is only used if the InfrastructureCluster is not reporting its own ready condition.
WaitingForControlPlaneInitialized Indicates that the first control plane node is initializing.
WaitingForControlPlane Reflects the condition of KubeadmControlPlane. This reason is used if the KubeadmControlPlane is not reporting its own ready condition.
Waiting for cluster infrastructure to be ready Message that indicates that the cluster is waiting for prerequisites that are necessary for running machines, such as networking and load balancers.

NodesHealthy Condition and Reasons

The table lists and describes the NodesHealthy condition.
Table 3. NodesHealthy Condition
Condition Type Description
NodesHealthy Reports the status of TanzuKubernetesCluster nodes.

The table lists and describes the reason for the NodesHealthy condition not being true.

Table 4. NodesHealthy False Reason
Reason Description
WaitingForNodesHealthy Documents that not all the Nodes are healthy.

Addons Conditions and Reasons

The table lists and describes the conditions related to cluster addon components.
Table 5. Addons Conditions
Condition Type Description
AddonsReady Summary of conditions for TanzuKubernetesCluster addons (CoreDNS, KubeProxy, CSP, CPI, CNI, AuthSvc) .
CNIProvisioned Documents the status of TanzuKubernetesCluster container network interface (CNI) addon.
CSIProvisioned Documents the status of TanzuKubernetesCluster container storage interface (CSI) addon.
CPIProvisioned Documents the status of TanzuKubernetesCluster cloud provider interface (CPI) addon.
KubeProxyProvisioned Documents the status of TanzuKubernetesCluster KubeProxy addon.
CoreDNSProvisioned Documents the status of TanzuKubernetesCluster CoreDNS addon.
AuthServiceProvisioned Documents the status of TanzuKubernetesCluster AuthService addon.
PSPProvisioned Documents the status of PodSecurityPolicy.
The table lists and describes the reasons addon conditions not being true. To troubleshoot the symptoms causing the warnings, refer to Troubleshooting TKG Service Clusters.
Table 6. Addons False Reasons
Reason Severity Description
AddonsReconciliationFailed N/A Summarized reason for all addons reconciliation failures.
CNIProvisioningFailed Warning Documents CNI addon failed to create or update.
CSIProvisioningFailed Warning Documents CSI addon failed to create or update.
CPIProvisioningFailed Warning Documents CPI addon failed to create or update.
KubeProxyProvisioningFailed Warning Documents KubeProxy addon failed to create or update.
CoreDNSProvisioningFailed Warning Documents CoreDNS addon failed to create or update.
AuthServiceProvisioningFailed Warning Documents AuthService addon failed to create or update.
AuthServiceUnManaged Documents AuthService is not managed by controller.
PSPProvisioningFailed Warning Documents PodSecurityPolicy addons failed to create or update.

Other Conditions and Reasons

The table lists and describes conditions for StorageClass and RoleBinding synchronization, ProviderServiceAccount resource reconciliation, ServiceDiscovery, and TKG 2.0 cluster compatibility.

Table 7. Other Conditions
Condition Description
StorageClassSynced Documents the status of StorageClass synchronization from Supervisor Cluster to workload cluster.
RoleBindingSynced Documents the status of RoleBinding synchronization from the Supervisor Cluster to the workload cluster.
ProviderServiceAccountsReady Documents the status of provider service accounts and related Roles, RoleBindings and Secrets are created.
ServiceDiscoveryReady Documents the status of service discoveries.
TanzuKubernetesReleaseCompatible Indicates if the TanzuKubernetesCluster is compatible with the TanzuKubernetesRelease.

The table lists and describes the reasons for other conditions not being true.

Table 8. Other Reasons
Reason Description
StorageClassSyncFailed Reports the StorageClass synchronization failed.
RoleBindingSyncFailed Reports the RoleBinding synchronization failed.
ProviderServiceAccountsReconciliationFailed Reports that provider service accounts related resources reconciliation failed.
SupervisorHeadlessServiceSetupFailed Documents the headless service setup for Supervisor Cluster API server failed.