Kubernetes/Container 引擎:TLS 握手超时

Kubernetes/Container Engine: TLS handshake timeout

大约 7 小时前,我在使用 kubectl 时没有遇到任何问题。现在(经过几个小时的睡眠,并重新启动我的计算机)所有 kubectl get 命令都给我这个错误:

Unable to connect to the server: net/http: TLS handshake timeout

我没有做任何事情,因为它除了关闭我的电脑外还有效。

由于我是 Kubernetes 和 GCE 的新手,所以我需要一些提示,了解这可能是什么,以及在哪里寻找。

所以我发现了问题。

kubernetes 被设置为使用错误的上下文和集群(我创建了一个 GC 项目并再次删除它,然后创建了一个新项目)。

我从 GC 获得了新凭据:

gcloud container clusters get-credentials CLUSTER_NAME_FROM_GC

要获取我使用的新上下文名称和集群名称:

kubectl config view

并更新我使用的当前上下文和集群:

kubectl config set-cluster CLUSTER_NAME_FROM_CREDENTIALS
kubectl config set-context CONTEXT_NAME_FROM_CREDENTIALS

这解决了问题。