从零开始入门 K8s | 调度器的调度流程和算法介绍( 六 )
整个调度流水线只有在 Scheduler Thread 阶段是串行的一个 Pod 一个 Pod 的进行调度 , 在 Wait 和 Bind 阶段 Pod 都是异步并行执行 。
调度详细流程
解说完 kube-scheduler 的几大部件的作用和关联关系之后 , 接下来深入理解下 Scheduler Pipeline 的具体工作原理 , 如下是 kube-scheduler 的详细流程图 , 先解说调度队列:
SchedulingQueue有三个子队列 activeQ、backoffQ、unschedulableQ 。
Scheduler 启动的时候所有等待被调度的 Pod 都会进入 activieQ , activeQ 会按照 Pod 的 priority 进行排序 , Scheduler Pipepline 会从 activeQ 获取一个 Pod 进行 Pipeline 执行调度流程 , 当调度失败之后会直接根据情况选择进入 unschedulableQ 或者 backoffQ , 如果在当前 Pod 调度期间 Node Cache、Pod Cache 等 Scheduler Cache 有变化就进入 backoffQ , 否则进入 unschedulableQ 。
unschedulableQ 会定期较长时间(例如 60 秒)刷入 activeQ 或者 backoffQ , 或者在 Scheduler Cache 发生变化的时候触发关联的 Pod 刷入 activeQ 或者 backoffQ;backoffQ 会以 backoff 机制相比 unschedulableQ 比较快地让待调度的 Pod 进入 activeQ 进行重新调度 。
推荐阅读
- 手机游戏|LOL手游福利送完,开始努力割韭菜?新皮肤玉剑传说即将上线
- 侠盗猎车手4|LOL转会期开始!小虎去留成谜,滔博,FPX和RNG大概率拆队重建?
- DOTA|48岁阿姨:如果你最开始接触的是DOTA,就很难再喜欢别的游戏了!
- 原神|原神:为啥这4个角色,前期被玩家称为真神,后期却开始无人问津
- ig|Dota2-刀圈地震来了?继小象宣布解散后,iG领队也开始“暗示”了
- 成吉思汗|16号2款新皮上线,新英雄开始预热,澜新传说巨帅,成吉思汗哭了
- 电子竞技|武将外号,你都知道几个?老玩家:这不是我先开始这么叫的吗!
- 金铲铲之战|为了防腾讯米哈游抢人,游戏厂商也开始内卷,育碧竟被偷家?
- 梦幻西游|梦幻西游:战神阿轩开启梦幻新玩法!放弃强P,开始升堂审案,为民做主?
- 吃鸡游戏|之前是“吃鸡”大主播,现成功转战联盟,为何越来越多主播开始转型?