Koordinator koordlet初探

375 阅读1分钟

概述

koordlet 在项目中的地位相当于 kubelet在k8s中的地位,是最重要的组件。简单来说,koordlet由一系列子组件运行,有的子组件还运行plugin。

koordlet

main

func (d *daemon) Run(stopCh <-chan struct{}) {
    // metricCache 自动清理过期数据
    d.metricCache.Run(stopCh)
    // informer 和 plugin
    d.statesInformer.Run(stopCh)
    // 收集数据,写入 metricCache
    d.collector.Run(stopCh)
    // 管理资源,资源不足时进行驱逐
    d.resManager.Run(stopCh)
    // 运行qos plugin
    d.qosManager.Run(stopCh)
    // 运行hookServer 和 podgroup qosgroup reconciler
    d.runtimeHook.Run(stopCh)
}