zoukankan      html  css  js  c++  java
  • k8s源码分析之kubelet

    一、概述

    二、Kubelet对象创建过程:(pkg/kubelet/kubelet.go )

      NewMainKubelet 正如名字所示,主要的工作就是创建 Kubelet 这个对象,它包含了 kubelet 运行需要的所有对象,上面的代码就是各种对象的初始化和赋值的过程,这里只介绍几个非常重要的对象来说:

      • podConfig:这个对象里面会从文件、网络和 apiserver 三个来源中汇聚节点要运行的 pod 信息,并通过管道发送出来,读取这个管道就能获取实时的 pod 最新配置;
      • ServiceLister:能够读取 kubernetes 中服务信息;
      • nodeLister:能够读取 apiserver 中节点的信息;
      • diskSpaceManager:返回容器存储空间的信息;
      • podManager:缓存了 pod 的信息,是所有需要该信息都会去访问的地方;
      • runtime:容器运行时,对容器引擎(docker 或者 rkt)的一层封装,负责调用容器引擎接口管理容器的状态,比如启动、暂停、杀死容器等;
      • probeManager:如果 pod 配置了状态监测,那么 probeManager 会定时检查 pod 是否正常工作,并通过 statusManager 向 apiserver 更新 pod 的状态;
      • volumeManager:负责容器需要的 volume 管理。检测某个 volume 是否已经 mount、获取 pod 使用的 volume 等;
      • podWorkers:具体的执行者,每次有 pod 需要更新的时候都会发送给它;

       

  • 相关阅读:
    小波变换的引入,通俗易懂
    Leetcode 437. Path Sum III
    Leetcode 113. Path Sum II
    Leetcode 112 Path Sum
    Leetcode 520 Detect Capital
    Leetcode 443 String Compression
    Leetcode 38 Count and Say
    python中的生成器(generator)总结
    python的random模块及加权随机算法的python实现
    leetcode 24. Swap Nodes in Pairs(链表)
  • 原文地址:https://www.cnblogs.com/chris-cp/p/7485007.html
Copyright © 2011-2022 走看看