Tanzu Kubernetes Grid 服務 佈建 Tanzu Kubernetes 叢集時,會報告多個狀態條件,您可以使用這些條件直觀地深入瞭解機器健全狀況的主要方面。

檢查 TanzuKubernetesCluster 準備情況

您可以使用 TanzuKubernetesCluster 準備情況條件,來判斷哪些階段或元件尚未就緒 (如果有)。請參閱ControlPlaneReady 條件和原因

檢查叢集準備情況後,若要進一步診斷,則可以使用 capwcluster 和機器條件來進一步詳細查看故障。請參閱檢查 Tanzu Kubernetes 機器健全狀況檢查 Tanzu Kubernetes 叢集健全狀況

檢查 Tanzu Kubernetes 叢集的準備情況:
  1. 登入 主管叢集
  2. 將內容切換到佈建目標叢集的命名空間。例如:
    kubectl config use-context tkgs-cluster-ns
  3. 執行 kubectl get tkc -o yaml 命令。系統會顯示叢集準備情況條件。例如:
      status:
        addons:
          authsvc:
            conditions:
            - lastTransitionTime: "2021-01-30T19:53:54Z"
              status: "True"
              type: AuthServiceProvisioned
            name: authsvc
            status: applied
            version: 0.1-66-g8b8f07f
          cloudprovider:
            conditions:
            - lastTransitionTime: "2021-01-30T19:53:53Z"
              status: "True"
              type: CPIProvisioned
            name: vmware-guest-cluster
            status: applied
            version: 0.1-77-g5875817
          cni:
            conditions:
            - lastTransitionTime: "2021-01-30T19:53:53Z"
              status: "True"
              type: CNIProvisioned
            name: calico
            status: applied
            version: 1.16.14+vmware.1-tkg.1.ada4837
          csi:
            conditions:
            - lastTransitionTime: "2021-01-30T19:53:54Z"
              status: "True"
              type: CSIProvisioned
            name: pvcsi
            status: applied
            version: v0.0.1.alpha+vmware.79-7ecdcb1
          dns:
            conditions:
            - lastTransitionTime: "2021-01-30T19:53:48Z"
              status: "True"
              type: CoreDNSProvisioned
            name: CoreDNS
            status: applied
            version: v1.6.2_vmware.10
          proxy:
            conditions:
            - lastTransitionTime: "2021-01-30T19:53:48Z"
              status: "True"
              type: KubeProxyProvisioned
            name: kube-proxy
            status: applied
            version: 1.16.14+vmware.1
          psp:
            conditions:
            - lastTransitionTime: "2021-01-30T19:53:47Z"
              status: "True"
              type: PSPProvisioned
            name: defaultpsp
            status: applied
            version: v1.16.14+vmware.1-tkg.1.ada4837
        clusterApiStatus:
          apiEndpoints:
          - host: 192.168.1.2
            port: 6443
          phase: Provisioned
        conditions:
        - lastTransitionTime: "2021-01-30T19:53:54Z"
          status: "True"
          type: AddonsReady
        - lastTransitionTime: "2021-01-30T19:51:11Z"
          status: "True"
          type: ControlPlaneReady
        - lastTransitionTime: "2021-01-30T19:51:04Z"
          message: 3/3 Control Plane Node(s) healthy. 1/1 Worker Node(s) healthy
          status: "True"
          type: NodesHealthy
        - lastTransitionTime: "2021-01-31T21:22:45Z"
          status: "True"
          type: ProviderServiceAccountsReady
        - lastTransitionTime: "2021-01-30T19:53:50Z"
          status: "True"
          type: RoleBindingSynced
        - lastTransitionTime: "2021-01-30T19:53:58Z"
          status: "True"
          type: ServiceDiscoveryReady
        - lastTransitionTime: "2021-01-30T19:53:59Z"
          status: "True"
          type: StorageClassSynced
        - lastTransitionTime: "2021-01-27T11:34:53Z"
          status: "True"
          type: TanzuKubernetesReleaseCompatible
        - lastTransitionTime: "2021-01-27T11:34:54Z"
          message: '[1.17.13+vmware.1-tkg.2.2c133ed]'
          severity: Info
          status: "True"
          type: UpdatesAvailable

ControlPlaneReady 條件和原因

下表列出並說明 ControlPlaneReady 條件。
表 1. ControlPlaneReady 條件
條件類型 說明
ControlPlaneReady 報告控制平面節點是否已就緒,且可支援該叢集正常運作。

下表列出並說明 ControlPlaneReady 條件為 false 的原因。

表 2. ControlPlaneReady False 原因
原因 嚴重性 說明
WaitingForClusterInfrastructure 指示該叢集正在等待執行機器 (例如負載平衡器) 所需的必要條件。僅在 InfrastructureCluster 未報告其自己的就緒條件時,才需要使用此原因。
WaitingForControlPlaneInitialized 表示第一個控制平面節點正在初始化。
WaitingForControlPlane 反映 KubeadmControlPlane 的條件。如果 KubeadmControlPlane 未報告其自己的就緒條件,則使用這個原因。
正在等待叢集基礎結構準備就緒 訊息 表示該叢集正在等待執行機器 (例如網路和負載平衡器) 所需的必要條件。

NodesHealthy 條件和原因

下表列出並說明 NodesHealthy 條件。
表 3. NodesHealthy 條件
條件類型 說明
NodesHealthy 報告 TanzuKubernetesCluster 節點的狀態。

下表列出並說明 NodesHealthy 條件不為 true 的原因。

表 4. NodesHealthy False 原因
原因 嚴重性 說明
WaitingForNodesHealthy 記錄並非所有節點都狀況良好。

附加元件條件和原因

下表列出並說明與叢集附加元件相關的條件。
表 5. 附加元件條件
條件類型 說明
AddonsReady TanzuKubernetesCluster 附加元件 (CoreDNS、KubeProxy、CSP、CPI、CNI、AuthSvc) 的條件摘要。
CNIProvisioned 記錄 TanzuKubernetesCluster 容器網路介面 (CNI) 附加元件的狀態。
CSIProvisioned 記錄 TanzuKubernetesCluster 容器儲存區介面 (CSI) 附加元件的狀態。
CPIProvisioned 記錄 TanzuKubernetesCluster 雲端提供者介面 (CPI) 附加元件的狀態。
KubeProxyProvisioned 記錄 TanzuKubernetesCluster KubeProxy 附加元件的狀態。
CoreDNSProvisioned 記錄 TanzuKubernetesCluster CoreDNS 附加元件的狀態。
AuthServiceProvisioned 記錄 TanzuKubernetesCluster AuthService 附加元件的狀態。
PSPProvisioned 記錄 PodSecurityPolicy 的狀態。
下表列出並說明附加元件條件不為 true 的原因。
表 6. 附加元件 False 原因
原因 嚴重性 說明
AddonsReconciliationFailed 所有附加元件重新調整失敗的摘要原因。
CNIProvisioningFailed 警告 記錄無法建立或更新 CNI 附加元件。
CSIProvisioningFailed 警告 記錄無法建立或更新 CSI 附加元件。
CPIProvisioningFailed 警告 記錄無法建立或更新 CPI 附加元件。
KubeProxyProvisioningFailed 警告 記錄無法建立或更新 KubeProxy 附加元件。
CoreDNSProvisioningFailed 警告 記錄無法建立或更新 CoreDNS 附加元件。
AuthServiceProvisioningFailed 警告 記錄無法建立或更新 AuthService 附加元件。
AuthServiceUnManaged 記錄 AuthService 未由控制器管理。
PSPProvisioningFailed 警告 記錄無法建立或更新 PodSecurityPolicy 附加元件。

其他條件和原因

下表列出並說明 StorageClass 與 RoleBinding 同步化、ProviderServiceAccount 資源重新調整、ServiceDiscovery 和 TanzuKubernetesCluster 相容性的條件。

表 7. 其他條件
條件 說明
StorageClassSynced 記錄 StorageClass 從主管叢集到工作負載叢集的同步化狀態。
RoleBindingSynced 記錄 RoleBinding 從主管叢集到工作負載叢集的同步化狀態。
ProviderServiceAccountsReady 記錄提供者服務帳戶以及相關的角色、RoleBinding 和密碼的狀態已建立。
ServiceDiscoveryReady 記錄服務探索的狀態。
TanzuKubernetesReleaseCompatible 指示 TanzuKubernetesCluster 是否與 TanzuKubernetesRelease 相容。

下表列出並說明其他條件不為 true 的原因。

表 8. 其他原因
原因 嚴重性 說明
StorageClassSyncFailed 報告 StorageClass 同步失敗。
RoleBindingSyncFailed 報告 RoleBinding 同步失敗。
ProviderServiceAccountsReconciliationFailed 報告提供者服務帳戶相關的資源重新調整失敗。
SupervisorHeadlessServiceSetupFailed 記錄主管叢集 API 伺服器的無周邊服務設定失敗。