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 的价值就在这:不花里胡哨,但足够可靠,节点在,它就得在。

相关推荐
一只小bit14 小时前
技术架构演进之路:从单体应用到Docker容器编排
docker·容器·架构
掘根15 小时前
【微服务即时通讯】语言识别子服务
微服务·云原生·架构
sszdzq15 小时前
docker 安装 Nginx
nginx·docker·容器
Stark-C15 小时前
专为NAS用户打造的导航页,支持Docker管理,极空间部署FlatNas
运维·docker·容器
@土豆16 小时前
K8s 单机二进制部署步骤(复制粘贴即可)
云原生·容器·kubernetes
wxjlkh1 天前
5分钟部署Docker!Rocky Linux极速安装+一键加速配置脚本
云原生·eureka
丈剑走天涯1 天前
kubernetes java app 部署使用harbor私服 问题集合
java·容器·kubernetes
Jinkxs1 天前
Java 部署:滚动更新(K8s RollingUpdate 策略)
java·开发语言·kubernetes
lpfasd1231 天前
Kubernetes (K8s) 底层早已不再直接使用 Docker 引擎了
java·docker·kubernetes
不吃香菜kkk、1 天前
通过夜莺n9e监控Kubernetes集群
安全·云原生·容器·kubernetes