无法使用 kubectl 管理集群 - "failed to negotiate an api version"
Unable to use kubectl to administer cluster - "failed to negotiate an api version"
我尝试在通过云控制台创建集群后在本地使用 kubectl,但我一直收到错误消息。以下是我采取的步骤:
通过云控制台
gcloud containers cluster create test
本地
gcloud container clusters get-credentials test
kubectl cluster-info
我收到以下错误:
error: failed to negotiate an api version; server supports: map[], client supports: map[componentconfig/v1alpha1:{} rbac.authorization.k8s.io/v1alpha1:{} authentication.k8s.io/v1beta1:{} apps/v1alpha1:{} batch/v1:{} authorization.k8s.io/v1beta1:{} autoscaling/v1:{} batch/v2alpha1:{} v1:{} extensions/v1beta1:{} policy/v1alpha1:{} federation/v1beta1:{}]
下面是kubectl版本的输出
Client Version: version.Info{Major:"1", Minor:"3", GitVersion:"v1.3.5", GitCommit:"b0deb2eb8f4037421077f77cb163dbb4c0a2a9f5", GitTreeState:"clean", BuildDate:"2016-08-11T20:29:08Z", GoVersion:"go1.6.2", Compiler:"gc", Platform:"windows/amd64"}
以下摘自 kubectl cluster-info --v=8
的输出
212 request.go:891] Response Body: Forbidden: "/api"
非常感谢任何帮助
运行 再次使用 --v=8 查看所有网络调用的踪迹
我终于找到了解决方法。我在我的本地机器上设置了两组授权,我使用以下方法选择了其中一组:
gcloud config set account
gcloud config set project
gcloud container get-credentials
上述步骤导致了原始问题中显示的错误。如果我执行以下步骤,它将起作用:
gcloud auth login
gcloud config set project
gcloud container get-credentials
所以,我猜 auth login 做了一些 config set account 没有做的事情。有没有人有任何见解?
我尝试在通过云控制台创建集群后在本地使用 kubectl,但我一直收到错误消息。以下是我采取的步骤:
通过云控制台
gcloud containers cluster create test
本地
gcloud container clusters get-credentials test
kubectl cluster-info
我收到以下错误:
error: failed to negotiate an api version; server supports: map[], client supports: map[componentconfig/v1alpha1:{} rbac.authorization.k8s.io/v1alpha1:{} authentication.k8s.io/v1beta1:{} apps/v1alpha1:{} batch/v1:{} authorization.k8s.io/v1beta1:{} autoscaling/v1:{} batch/v2alpha1:{} v1:{} extensions/v1beta1:{} policy/v1alpha1:{} federation/v1beta1:{}]
下面是kubectl版本的输出
Client Version: version.Info{Major:"1", Minor:"3", GitVersion:"v1.3.5", GitCommit:"b0deb2eb8f4037421077f77cb163dbb4c0a2a9f5", GitTreeState:"clean", BuildDate:"2016-08-11T20:29:08Z", GoVersion:"go1.6.2", Compiler:"gc", Platform:"windows/amd64"}
以下摘自 kubectl cluster-info --v=8
的输出212 request.go:891] Response Body: Forbidden: "/api"
非常感谢任何帮助
运行 再次使用 --v=8 查看所有网络调用的踪迹
我终于找到了解决方法。我在我的本地机器上设置了两组授权,我使用以下方法选择了其中一组:
gcloud config set account
gcloud config set project
gcloud container get-credentials
上述步骤导致了原始问题中显示的错误。如果我执行以下步骤,它将起作用:
gcloud auth login
gcloud config set project
gcloud container get-credentials
所以,我猜 auth login 做了一些 config set account 没有做的事情。有没有人有任何见解?