服务器状态未知怎么办


昨天,我构建了一个功能齐全的示例,使用Terraform在GoogleCloudPlatform中创建网络和GKE集群.整个事情的流浪运行在一个CentOS7虚拟机,同时安装gcloud,kubectl和helm.我还扩展了示例以使用Helm来安装Spinnaker.

在此之后,我能够使用各种kubectl命令getnodes,getpods,getservices,和getdeployments,以及所有其它集群管理命令.我还能够使用Helm安装Tiller并最终部署Spinnaker.

但是,今天,同样的过程对我不起作用.我启动了网络,子网,GKE集群和节点池,每当我尝试使用命令获取各种资源时,我都会得到以下响应:

当我在Google云端控制台中打开一个shell时,运行相同的登录命令后,我可以kubectl用来执行以上所有操作:

我能看到的唯一区别是kubectl版本之间的差异;Vagrant拥有最新版本1.11.0,GoogleCloud控制台拥有1.9.7.

编辑:这是可重复的,我找不到一种方法来防止它再次出现.我撕毁了我所有的基础设施,然后再次站起来.Terraform可在此处获得.

在通过销毁和重新创建所有基础设施成功地多次重现问题之后,我在GitLab上发现了一些神秘的帖子,提到了esGitHub问题,似乎表明:

升级主人和工人到es1.10似乎完全解决了这个问题,因为我现在可以列出节点和pod而不受惩罚:

kubectl:此客户端版本需要apps/v1API,因此它不适用于早于v1.9.0的群集版本.请注意,kubectl仅保证与 /-[一]次要版本的集群兼容.