Kubelet 组件详解笔记
·
目录标题
🧠Kubelet 组件详解笔记
一、组件概述
Kubelet 是 Kubernetes 每个节点上最核心的代理服务,负责:
- 保证 Pod 实例与期望状态一致;
- 管理容器的生命周期;
- 汇报节点状态至集群控制面;
- 对接容器运行时、网络与存储插件。
Kubelet 作为“节点大管家”,支撑着 Kubernetes 节点侧的正常运作。
二、Kubelet 暴露的端口与 API
| 端口 | 描述 |
|---|---|
:10250 | Kubelet 主 API 端口:供 apiserver 和外部工具与 kubelet 交互,支持安全认证和命令执行等操作。 |
:10255 | 只读 API 端口(已逐步废弃):无认证机制,对外提供节点与 Pod 状态的只读信息。 |
:4194 | cAdvisor UI 端口(非默认开启):用于暴露容器的实时资源监控信息。 |
:10248/healthz | 健康检查接口:被控制平面或监控系统用于探测 kubelet 自身运行状况。 |
三、Kubelet 核心功能模块详解
1️⃣ 同步与调度机制
(1)syncLoop(同步主循环)
持续监听:
- 来自 apiserver 的 Pod 配置;
- 容器运行时的实际状态;
根据变化触发操作(创建、更新、删除等),确保期望状态与实际一致。
(2)PodWorker(Pod 操作执行器)
-
响应 syncLoop 触发;
-
负责:
- 容器创建与初始化;
- 挂载存储卷;
- 网络设置与探针处理;
- 执行重启策略与清理任务。
2️⃣ 资源与健康监控
(1)cAdvisor(容器资源监控)
- 嵌入式工具,采集容器 CPU、内存、磁盘 IO 等;
- 为调度器、HPA 提供基础指标数据。
(2)OOMWatcher(内存溢出监测)
- 监听内核 OOM 事件;
- 标记对应 Pod 状态;
- 辅助故障诊断与节点资源评估。
(3)ProbeManager(探针管理器)
- 执行和管理 Liveness、Readiness、Startup 探针;
- 定期检查容器健康状况;
- 触发容器重启或就绪状态更新。
3️⃣ 容器与镜像管理
(1)ImageManager(镜像管理器)
- 拉取/缓存容器镜像;
- 与容器运行时交互;
- 处理镜像拉取失败、认证等问题。
(2)ImageGC(镜像垃圾回收)
- 当磁盘空间紧张时,清除未被使用的旧镜像;
- 保证镜像空间充足。
(3)ContainerGC(容器垃圾回收)
- 自动清除已终止的容器及其日志文件;
- 避免磁盘空间持续被占用。
4️⃣ 节点与存储管理
(1)StatusManager(状态上报器)
- 负责持续上报节点与 Pod 状态(如状态、阶段、使用率等)到 apiserver;
- 保持控制面对节点运行状态的实时感知。
(2)EvictionManager(驱逐管理器)
- 当节点资源不足(如内存、磁盘)时;
- 根据 QoS 与优先级驱逐低优先 Pod;
- 保证节点持续运行关键服务。
(3)DiskSpaceManager(磁盘空间管理器)
- 监控节点磁盘使用;
- 触发 GC 机制;
- 避免磁盘耗尽导致节点崩溃。
(4)VolumeManager(卷管理器)
- 管理存储卷的挂载与卸载;
- 与 CSI 插件或内置插件对接;
- 确保 Pod 能正确访问其所需存储资源。
(5)CertificateWatcher(证书热加载器)
- 监控 TLS 证书文件变化;
- 自动更新 Kubelet 与 apiserver 之间的通信凭据;
- 避免通信中断或认证失败。
5️⃣ 硬件加速与异构资源支持
GPUManager(GPU 资源管理)
- 管理 NVIDIA/AMD 等 GPU 的分配与回收;
- 与调度器配合确保 GPU 类型 Pod 落地;
- 支持拓展到 FPGA、TPU 等异构资源。
四、Kubelet 与运行时的接口(CRI 模型)
(1)CRI gRPC Server
- Container Runtime Interface(CRI):Kubelet 与容器运行时之间的协议;
- 标准化容器生命周期操作;
- 实现运行时解耦(支持 Docker、containerd、CRI-O 等)。
(2)容器运行时(Container Runtime)
- 创建、运行、停止容器;
- 管理镜像、日志等;
- 通过 CRI 屏蔽运行时差异。
(3)网络插件(CNI)
- Pod 网络由 CNI 插件配置(如 Flannel、Calico);
- 分配 IP 地址;
- 设置 NAT、路由规则,保障网络连通性。
五、总结
Kubelet 是 Kubernetes 节点侧运行的 核心控制器,通过:
- 同步循环驱动;
- 模块化资源管控;
- 与 CRI/CNI 的深度集成;
- 多种自动化机制(如 GC、Eviction、Probe);
构建了强大、稳定的容器运行平台。
它连接了控制面与实际执行环境,是每个 Kubernetes 节点稳定运行的中枢神经系统。
更多推荐


所有评论(0)