在我的ubuntu笔记本电脑上,我发出了一些kubectl命令,包括从本地Docker容器中运行kubernetes一切都很好......在某些时候我发出了这个命令
kubectl config set-cluster test-doc --server=https://104.196.108.118
现在我的本地kubectl无法执行......看起来服务器端需要重置为默认值
kubectl version
Client Version: version.Info{Major:"1", Minor:"2", GitVersion:"v1.2.2", GitCommit:"528f879e7d3790ea4287687ef0ab3f2a01cc2718", GitTreeState:"clean"}
error: couldn't get version/kind; json parse error: json: cannot unmarshal string into Go value of type struct { APIVersion string "json:\"apiVersion,omitempty\""; Kind string "json:\"kind,omitempty\"" }
我删除并重新安装了gcloud SDK二进制文件并运行
mv ~/.config/gcloud ~/.config/gcloud~ignore
gcloud init
gcloud components update kubectl
如何删除我当地的kubectl设置(在ubuntu 16.04上)并重新开始?
答案 0 :(得分:4)
请注意,您已为客户设置了kubeconfig设置,这一点非常重要。当您运行kubectl version
时,您将获得客户端和服务器的版本,在您的情况下,这似乎是版本命令的问题。
您需要将设置更新为适当的信息。您可以使用与设置服务器相同的命令将其更改为正确的服务器。
如果要根据客户端配置擦除平板,则应删除kubeconfig文件。根据我使用gcloud设置的经验,这只是~/.kube/config
。
如果您通过Google云引擎运行群集,则可以使用gcloud根据container engine quick start guide为您设置kubeconfig。以下假设您具有项目,区域和集群集的默认值。
gcloud container clusters get-credentials CLUSTER_NAME
如果你的目标是批发摆脱kubectl,你应该删除组件而不是重置gcloud。
gcloud components remove kubectl
但这不能解决您的问题,因为当我在Mac上运行它时,它不会删除或重置~/.kube/config
,如果您想继续使用它,那么您需要重新安装kubectl。