欢迎光临散文网 会员登陆 & 注册

深究Kubernetes源码-Kubelet -1 总体模块分析

2022-09-21 11:05 作者:黑暗光影DIY  | 我要投稿

基于kubernetes1.26

1 总体模块

kubelet包含一系列的Manager,如上图,核心功能是处理节点上Pod的生命周期,创建/更新/删除。

kubelet实现了BootStrap和SyncHandler接口,BootStrap为启动过程接口,SyncHandler为处理Pod接口。


2 启动流程

主要分为两个阶段,第一阶段为实例化创建模块组件

第二阶段为创建实例化Kubelet结构体,并运行Kubelet,启动相关模块功能的协程,后面章节中会逐步分析各个模块功能。

kubelet核心功能是处理Node上的Pod生命周期,所以Pod的来源是个关键问题,如上图,Pod来源有三个:

  • Kube-apiServer ,常规Kube-apiserver中生成的Pod

  • 静态文件,通常所说的静态Pod,其中StaticPodPath默认为/etc/kubernetes/manifests

  • 静态URL,HTTP文件服务器提供静态Pod Config,与静态文件类似,不常用

从Kube-apiserver获取Pod是使用ListWatch机制,从apiserver获取Pod spec.nodeName与节点nodeName一致的Pod,即被调度器bind到此节点的Pod


深究Kubernetes源码-Kubelet -1 总体模块分析的评论 (共 条)

分享到微博请遵守国家法律