Kubernates集群实例

时间:2020-02-20 09:20:01

标签: kubernetes gcloud kubectl

我创建了一个Kubernetes集群,该集群中的一个实例处于非活动状态 我想查看非活动配置的已配置Kubernetes Engine集群,应通过哪个命令检查? 我应该使用这个“ kubectl config get-contexts”吗? 要么 kubectl配置使用上下文和kubectl配置视图?

是云初学者吗,有人解释吗?

3 个答案:

答案 0 :(得分:0)

您可以在命令下方运行以检查kubernetes集群的所有节点的状态。请注意,如果您使用的是GKE托管服务,则将无法看到主节点的状态,而只能看到工作节点的状态。

kubectl get nodes -o wide
kubectl describe node nodename

您还可以在命令下方运行以检查控制平面组件的状态。

kubectl get componentstatus

答案 1 :(得分:0)

您可以使用以下命令获取GKE集群中所有节点的列表:

kubectl get nodes -o wide

一旦有了节点列表,就可以描述该节点以获取事件”

kubectl describe node <Node-Name>

基于事件,您可以调试节点。

答案 2 :(得分:0)

kubectl config get-context不能帮助您调试实例失败的原因。基本上,它只会向您显示上下文列表。 context是一组集群访问参数。每个上下文包含一个Kubernetes集群,一个用户和一个名称空间。 current context是当前kubectl的默认群集。另一方面,kubectl config view只会打印您kubeconfig的设置。

最好的开始方法是Kubernestes official documentation。它提供了排除群集故障的良好基本步骤。其中一些步骤可以应用于GKE以及Kubeadm或Minikube集群。

如果使用的是GKE,则可以从Stackdriver中读取节点日志。当您想直接在日志查看器中检查日志时,此document是绝佳的起点。

如果您的一个实例在用NotReady列出后报告了kubectl get nodes,我建议ssh到该实例并检查kubernetes组件(kubeletkube-proxy)。您可以从实例页面查看GKE节点。

Kube代理日志:

/var/log/kube-proxy.log

如果要检查kubelet日志,它们是COS中systemd中的一个单位,可以使用jorunactl进行访问。

小程序日志:

sudo journalctl -u kubelet

为进一步调试,值得一提的是,GKE主节点是Google托管项目内的一个节点,它与您的集群项目不同。 对于详细的主日志,您将打开一个Google支持票证。 Here是有关GKE集群架构如何工作的更多信息,以防万一与api服务器相关的事情。

让我知道是否有帮助。

相关问题