gpt4 book ai didi

kubernetes - 如何从节点本身检查Kubernetes节点的状态?

转载 作者:行者123 更新时间:2023-12-02 11:52:15 25 4
gpt4 key购买 nike

在Kubernetes集群的主节点上,我可以运行kubectl get nodes并查看集群上任何单个节点的状态,因为kubectl可以找到用于认证的集群证书。在本地工作站上,假设我已正确配置身份验证,则可以执行相同操作。

从连接到Kubernetes主节点的节点上,除了配置auth以便kubectl可以工作之外,还有什么方法可以识别节点是否处于ReadyNot Ready状态?

我正在尝试构建一些驻留在节点本身上的监视工具,并且我想避免不得不设置服务帐户等来检查节点状态的情况,以防万一我可以通过某种方式识别它kubelet,日志,节点上某处的文件,命令等...

最佳答案

没有规范的方法,一种选择是使用kubelet API。

kubelet公开了控制平面与之通信的API,以使其运行pod。默认情况下,它在端口10250上运行,但这是一个写API,需要进行身份验证。

但是,该kubelet还具有标志--read-only-port,默认情况下该标志位于端口10255上。您可以使用此标志通过单击healthz端点来检查kubelet是否已准备就绪。

curl http://<ip>:10255/healthz
ok

此healthz端点在localhost上也可用:
curl http://localhost:10248/healthz

如果这还不够,您可以通过点击pods API来检查正在运行的pod是否可用:
curl http://<ip>:10255/pods

关于kubernetes - 如何从节点本身检查Kubernetes节点的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54755740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com