kubelet 理解

kubelet node资源的上报

2018-05-15  本文已影响0人  shinwing

资源上报是kubelet的心跳机制,定时上报节点状态,默认是10s,时间可以设定 

在kubelet创建的时候就已经创建了节点状态的收集方法 

pkg/kubelet/kubelet.go里面NewMainKubelet方法

klet.setNodeStatusFuncs= klet.defaultNodeStatusFuncs()

具体的方法定义在 pkg/kubelet/kubelet_node_status.go

其中包括节点信息、节点OOD信息、内存磁盘压力状态、节点监控状态等。 

以 setNodeDiskPressureCondition 为例,当发现有压力的时候,将status置为 true or false

在kubelet运行的时候,会按照间隔调用方法来上报node信息。

syncNodeStatus 调用 updateNodeStatus, 然后又调用 tryUpdateNodeStatus 来进行上报操作。而最终调用的是 setNodeStatus。

就是调用上面注册的那些方法,在状态变更后,会调用 PatchNodeStatus 使用 kl.heartbeatClient 把状态发给 APIServer。

上一篇下一篇

猜你喜欢

热点阅读