使用本节可对 TKG 集群连接问题和登录错误进行故障排除。
权限不足错误
如果您对 vSphere 命名空间 没有足够的权限,则无法以 vCenter Single Sign-On 用户身份连接到 主管 或 TKG 集群。
当您尝试以 vCenter Single Sign-On 用户身份连接到 主管 或 TKG 集群时,kubectl 的 vSphere 插件 返回错误消息 Error from server (Forbidden)
。
您在 vSphere 命名空间 上的角色权限不足,或者您的用户帐户尚未被授予访问权限。
如果您是操作集群的 DevOps 工程师,请与您的 vSphere 管理员核实是否已向您授予对 vSphere 命名空间 的编辑权限。如果您是使用集群部署工作负载的开发人员,请与您的集群管理员核实是否已向您授予集群访问权限。
Kubectl vSphere 登录错误
如果在尝试使用
kubectl 的 vSphere 插件 登录到
主管 或 TKG 集群时收到以下错误,可能是由于登录错误所致。
Failed to get available workloads, response from the server was invalid.
要对登录错误进行故障排除,请使用
-v=10
获取更详细的日志输出。
kubectl vsphere login --server=10.110.150.56 --vsphere-username [email protected] -v=10
例如,下面显示了如何使用详细输出显示
invalid or missing credentials
错误。
DEBU[0000] User passed verbosity level: 10 DEBU[0000] Setting verbosity level: 10 DEBU[0000] Setting request timeout: DEBU[0000] login called as: /usr/local/bin/kubectl-vsphere login --server=10.110.150.56 --vsphere-username [email protected] -v=10 DEBU[0000] Creating wcp.Client for --server=10.110.150.56. INFO[0000] Does not appear to be a vCenter or ESXi address. DEBU[0000] Got response: INFO[0000] Using [email protected] as username. DEBU[0000] Env variable KUBECTL_VSPHERE_PASSWORD is present DEBU[0000] Error while getting list of workloads: invalid or missing credentials FATA[0000] Failed to get available workloads, response from the server was invalid.
通过 SSH 连接到 主管
可能需要通过 SSH 连接到
主管,以对登录错误进行故障排除。
警告: 通过 SSH 连接到
主管 控制平面节点时,您有权永久损坏
主管 集群。如果 VMware 技术支持团队发现客户从
主管 控制平面节点对
主管 组件进行更改的证据,VMware 技术支持团队可能会将
主管 集群标记为不受支持,并要求您重新部署
vSphere IaaS control plane 解决方案。此会话只能用于测试网络、查看日志以及运行 kubectl logs/get/describe 命令。如果知识库文章或 VMware 技术支持团队未明确允许,请勿通过此会话部署、删除或编辑任何内容。
要通过 SSH 连接到
主管 控制平面节点,请完成以下步骤。
- 使用 root 用户帐户登录 vCenter。
- 键入
dcli +i
,以在交互模式下使用数据中心 CLI。 - 运行命令
namespacemanagement software clusters list
以返回 主管 的状态。 - 键入
exit
以退出dcli
shell。 - 键入
shell
以进入 bash shell 模式。 - 键入
/usr/lib/vmware-wcp/decyptK8Pwd.py
以获取 主管 的 IP 地址和密码。 - 键入
ssh 10.100.150.56
以通过 ssh 连接到 主管,其中示例 IP 地址将替换为上一个命令返回的 IP 地址。