Kubernetes之集群调度
我们一起学习 Kubernetes 的集群调度吧!
我们现在有这样一个需求,就是集群中多台服务的配置是不一致的。这就导致资源分配并不是均匀的,比如我们需要有些服务节点用来运行计算密集型的服务,而有些服务节点来运行需要大量内存的服务。而在 k8s 中当然也配置了相关服务来处理上述的问题,那就是 Scheduler。 Scheduler 是 kubernetes 的调度器,主要的任务是把定义的 Pod 分配到集群的节点上。听起来非常简单,但有很多要考虑的问题:
- 公平
- 如何保证每个节点都能被分配资源
- 资源高效利用
- 集群所有资源最大化被使用
- 效率
- 调度的性能要好,能够尽快地对大批量的 Pod 完成调度工作
- 灵活
- 允许用户根据自己的需求控制调度的逻辑