Kubelet Pod 生命周期管理
基于 Kubernetes v1.37 源码(pkg/kubelet/) 一、Kubelet 的职责
Kubelet 是运行在每个节点上的节点代理,其核心职责是管理 Pod 的生命周期:
调度器将 Pod 调度到节点
↓
kubelet 监听到 Pod 分配
↓
创建容器(通过 CRI)
↓
监控容器状态
↓
上报状态到 API Server
↓
处理删除/更新/驱逐
二、Kubelet 架构全景
┌────────────────────────────────────────────────────────────┐
│ Kubelet │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ Pod Sync Loop │ │
│ │ LIST/WATCH API Server → 对比期望与实际状态 → 执行 │ │
│ └──────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ Container Manager (CM) │ │
│ │ ┌───────────┐ ┌───────────┐ ┌──────────────────┐ │ │
│ │ │ CRI Client │ │ cgroup │ │ Device Plugin │ │ │
│ │ │ 容器运行时 │ │ 资源隔离 │ │ 设备管理 │ │ │
│ │ └───────────┘ └───────────┘ └──────────────────┘ │ │
│ └──────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ CRI (Container Runtime Interface) │ │
│ │ containerd / CRI-O / cri-dockerd │ │
│ └──────────────────────────────────────────────────────┘ │
└────────────────────────────────────────────────────────────┘
三、Pod Sync Loop(Pod 同步循环)
Kubelet 的核心是一个持续运行的 Pod 同步循环,它监听多个通道来触发同步:
评论
?
参与讨论