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. 加IPU错误原因
原因 严重性 描述
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 记录创建提供商服务帐户以及相关角色、RoleBindings 和密钥的状态。
ServiceDiscoveryReady 记录服务发现的状态。
TanzuKubernetesReleaseCompatible 指示TanzuKubernetesCluster是否与TanzuKubernetesRelease兼容。

下表列出并描述了其他状况不为 true 的原因。

表 8. 其他原因
原因 严重性 描述
StorageClassSyncFailed 报告StorageClass同步失败。
RoleBindingSyncFailed 报告RoleBinding同步失败。
ProviderServiceAccountsReconciliationFailed 报告提供商服务帐户相关资源协调失败。
SupervisorHeadlessServiceSetupFailed 记录主管集群 API 服务器的无头服务设置失败。