k8s静态pod

静态 Pod 其实很好理解:它就是"这台节点自己养的 Pod"。我们平时用 kubectl apply 创建的 Pod,是先写进 API Server,再由调度器挑节点、控制器去拉起;那静态 Pod 走的路完全不一样------它直接由 kubelet 在本机创建和保活,不需要调度器帮你选位置,也不靠 API Server 来下发创建指令。那它是怎么创建出来的?很简单,把 Pod 的 YAML 丢进 kubelet 监听的目录里(最常见就是 /etc/kubernetes/manifests),kubelet 看到文件就立刻在这台机器上把 Pod 拉起来;文件还在,它就一直盯着,挂了就重启;文件删掉了,Pod 也就跟着消失。你会发现,这更像是"守护进程 + 配置文件"的玩法,而不是"集群统一调度"的玩法。

你可能会问:既然不归 API Server 管,那我用 kubectl get pod 为什么还能看到它?这是因为 kubelet 会给静态 Pod 在 API Server 里同步一个"镜像 Pod"(mirror pod),让集群能观测到它的状态,但这个镜像只是"展示用"。换句话说,你在集群里删除这个镜像 Pod,并不会真正干掉静态 Pod;真正能决定它生死的,还是节点上的那份 YAML。顺带还有个明显特征:静态 Pod 的名字通常会带上节点名做后缀,一眼就能看出来它是绑死在某台机器上的。

那静态 Pod 适合用来跑什么?答案也很直观:必须固定在指定节点启动的关键组件。比如控制面那几位------kube-apiserver、kube-controller-manager、kube-scheduler,很多时候就是用静态 Pod 方式在控制节点上直接拉起来的。毕竟这种东西你敢让它"漂"吗?它要是被调度到别的节点上,或者因为调度失败起不来,那整个集群还怎么玩。静态 Pod 的价值就在这:不花里胡哨,但足够可靠,节点在,它就得在。

相关推荐
ITKEY_1 小时前
docker 容器端口映射消失
docker·容器
倚肆3 小时前
windows安装docker(末尾附命令大全)
docker·容器
至此流年莫相忘5 小时前
Kubernetes实战篇之服务发现
容器·kubernetes·服务发现
归叶再无青5 小时前
web服务安装部署、性能升级等(Apache、Nginx)
运维·前端·nginx·云原生·apache·bash
Zaly.5 小时前
解决 Windows 下 Docker Desktop 启动失败:从虚拟化报错到成功运行的全流程
windows·docker·容器
梅孔立5 小时前
Docker 全场景安装与镜像管理实战教程(在线+内网离线+镜像导入导出)
运维·docker·容器
AC赳赳老秦5 小时前
云原生AI故障排查新趋势:利用DeepSeek实现高效定位部署报错与性能瓶颈
ide·人工智能·python·云原生·prometheus·ai-native·deepseek
only_Klein5 小时前
Kubernetes 版本升级
容器·kubernetes·upgrade
川trans6 小时前
云原生--Nginx
linux·运维·服务器·nginx·云原生
白云偷星子6 小时前
云原生笔记2
运维·笔记·云原生