podWorkers 子模块 主要负责为每一个 Pod 启动,并且创建单独的 goroutine 去真实的对这个 Pod 完成相应的操作,比如创建,更新,删除等等。
podWorkers 子模块主要的作用就是处理针对每一个的 Pod 的更新事件,比如 Pod 的创建,删除,更新。而 podWorkers 采取的基本思路是:为每一个 Pod 都单独创建一个 goroutine 和 更新事件的 channel,goroutine 会阻塞式的等待 channel 中的事件,并且对获取的事件进行处理。而 podWorkers 对象自身则主要负责对更新事件进行下发。
podUpdates channel:buffer size是 1
managePodLoop
—》从podUpdates得到UpdatePodOptions
——》syncPodFn 对应的是(kl *Kubelet) syncPod ,
——》wrapUp: 作为syncPod执行完成之后,将pod加入队列,建立周期性检查的机制