Rancher如何按计算资源调度

简介:

引言


按计算资源调度基本上是各大编排引擎的标配,Rancher在v1.2版本后也推出了这个功能。但部分朋友认为当前的实现还并不是那么智能,所以不知道如何按计算资源调度。故本文教大家如何按计算资源调度。


实现机制


Rancher的实现比较简单,其主要是通过Infra services中的scheduler服务来实现,整体的逻辑架构如下:


wKiom1i4Kx6TZDL0AAB8isE8-eU317.jpg


scheduler会订阅Rancher Events,主要是scheduler相关事件,当有调度需求时候,scheduler就会收到消息, 通过计算将合适的调度目标返回给cattle。比如说现在支持memory和cpu为基准, 那么scheduler会不断根据metadata的数据变化来计算资源的使用量,最后可根据资源剩余量为调度目标排序, 这样就可以完成按计算资源调度的目标。


之前有说,Rancher的实现并不智能,这在于在计算资源使用量的时候,Rancher并不是通过一套复杂数据采集机制来计算, 而是通过用户在创建service的时候标注reservation的方式,这个地方很多朋友并没有注意到:


wKioL1i4Ky3jK75uAABZLC94Zn0691.jpg


除此之外,在每个节点的资源总量上也是可配置的,我们完全可以进行一个整体预留的设置,比如:


wKioL1i4Kzui7iYZAABBPzREcyY608.jpg


总结


这个实现看似简单,其实这是提供了一个很好的扩展能力。如果我们有自己的监控采集体系,完全可以在scheduler的时候调用我们自身监控接口来计算资源,这样就能达到我们所认可的“智能”了。


本文转自 RancherLabs 51CTO博客,原文链接:http://blog.51cto.com/12462495/1902864

相关文章
|
7天前
|
机器学习/深度学习 Kubernetes 调度
Kubernetes与GPU的调度:前世今生
本文详细探讨了Kubernetes与GPU的结合使用,阐述了两者在现代高性能计算环境中的重要性。Kubernetes作为容器编排的佼佼者,简化了分布式系统中应用程序的部署与管理;GPU则凭借其强大的并行计算能力,在加速大规模数据处理和深度学习任务中发挥关键作用。文章深入分析了Kubernetes如何支持GPU资源的检测与分配,并介绍了热门工具如NVIDIA GPU Device Plugin和Kubeflow的应用。
|
监控 Cloud Native 容器
基于阿里云容器服务监控 Kubernetes集群GPU指标
### 简介 当您在阿里云容器服务中使用GPU ECS主机构建Kubernetes集群进行AI训练时,经常需要知道每个Pod使用的GPU的使用情况,比如每块显存使用情况、GPU利用率,GPU卡温度等监控信息,本文介绍如何快速在阿里云上构建基于Prometheus + Grafana的GPU监控方案。
16480 0
|
2月前
|
资源调度 Kubernetes 异构计算
Serverless Kubernetes 复杂性问题之Kubernetes中的多形态异构资源的问题如何解决
Serverless Kubernetes 复杂性问题之Kubernetes中的多形态异构资源的问题如何解决
|
11月前
|
Kubernetes Cloud Native 微服务
Kubernetes 简介:容器编排与集群管理的进化
Kubernetes 简介:容器编排与集群管理的进化
214 0
BXA
|
存储 Kubernetes API
在Kubernetes上部署和管理容器化存储系统
Kubernetes是一款容器编排系统,它可以帮助用户快速部署、扩展和管理复杂的容器化应用。容器化存储系统则是一种存储方式,它将数据存储在容器中,并可以在容器之间进行移动和共享。Kubernetes可以通过容器化存储系统来实现数据的持久化,从而保证应用的可靠性和高可用性。
BXA
214 0
|
缓存 Prometheus 运维
kubernetes 部署Prometheus监控集群传统部署方案(1)
kubernetes 部署Prometheus监控集群传统部署方案(1)
kubernetes 部署Prometheus监控集群传统部署方案(1)
|
域名解析 Prometheus Kubernetes
kubernetes 部署Prometheus监控集群传统部署方案)(2)
kubernetes 部署Prometheus监控集群传统部署方案)(2)
kubernetes 部署Prometheus监控集群传统部署方案)(2)
|
域名解析 Kubernetes Ubuntu
基于K3S构建高可用Rancher集群
基于K3S构建高可用Rancher集群
基于K3S构建高可用Rancher集群
|
缓存 Kubernetes 专有云
Sealer - 把 Kubernetes 看成操作系统集群维度的 Docker
功能上 sealer 已经完成了“集群维度的 Docker”这一设定,未来在生态发展上会增加更多的投入,创造更多更优质的官方镜像,建立更多的合作伙伴,真正把软件的提供者与使用者连接起来,高效的协作。
988 6
Sealer - 把 Kubernetes 看成操作系统集群维度的 Docker
|
Kubernetes Cloud Native 应用服务中间件
云原生容器实战(四)-Kubernetes工作负载资源之Deployment
云原生容器实战(四)-Kubernetes工作负载资源之Deployment
341 0
云原生容器实战(四)-Kubernetes工作负载资源之Deployment