点击这里,查看调度算法及如何配置调度器等重要内容
调度流程
调度流程概览
Kubernetes 作为当下最主流的容器自动化运维平台,作为 K8s 的容器编排的核心组件 kube-scheduler 将是我今天介绍的主角,如下介绍的版本都是以 **release-1.16 **为基础,下图是 kube-scheduler 的主要几大组件:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JnYGhk4m-1578642536312)(https://ucc.alicdn.com/pic/developer-ecology/956c74c2e1e546c691eaf1c788895960.png “1.png”)]
Policy
Scheduler 的调度策略启动配置目前支持三种方式,配置文件 / 命令行参数 / ConfigMap。调度策略可以配置指定调度主流程中要用哪些过滤器 (Predicates)、打分器 (Priorities) 、外部扩展的调度器 (Extenders),以及最新支持的 SchedulerFramwork 的自定义扩展点 (Plugins)。
Informer
Scheduler 在启动的时候通过 K8s 的 informer 机制以 List+Watch 从 kube-apiserver 获取调度需要的数据例如:Pods、Nodes、Persistant Volume(PV), Persistant Volume Claim(PVC) 等等,并将这些数据做一定的预处理作为调度器的的 Ca