kubelet node资源的上报

资源上报是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。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 5,298评论 5 12
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 104,045评论 12 125
  • 文章图片上传不正常,如需文档,可联系微信:1017429387 目录 1 安装... 4 1.1 配置探针... ...
    Mrhappy_a7eb阅读 3,692评论 0 4
  • 一个星期前第一次接触简书,真的就有点相见恨晚的感觉;很多知识分享,方便学习交流。而且最最最重要的是之前偶然看见了...
    努力的颜控小仙女阅读 35评论 0 1
  • 今天在前台做一个ajax请求一个页面 http://xxx/ad/change_sort 改变某个广告排序的。然后...
    yundGo阅读 614评论 0 0