kubelet是kubernetes工作节点上的一个代理组件,运行在每个节点上。
image.png
KUbelet是工作节点上的主要服务,负责:

  • 定期从kube-apiserver组件接收新的或修改的Pod规范(其实是kubelet主动去要的)

相关:谁在帮kubelet获取新信息?

  • 确保Pod及其容器在期望规范下运行
  • 作为工作节点的监控组件,向kube-apiserver汇报主机的运行情况

架构

Kubelet组件的架构图,如下图所示,Kubelet由许多内部组件构成:

  • API

即server服务,监听端口,提供各种服务。包括:
10250 认证API、4194 端口的 cAdvisor API、10255 端口的只读 API 以及 10248 端口的健康检查 API

  • syncLoop

从API或者manifest目录接收Pod更新,发送到podWorkers处理,大量使用channel处理异步请求。

  • manager

  • CRI

image.png

核心组件介绍