当前全球云基础设施服务支出费用庞大,然而数据中心用户集群的平均CPU利用率却很低,存在巨大的资源浪费。因此,提升数据中心资源利用率是当前急需解决的一个重要问题。
将多种类型业务混合部署能够显著提升集群资源利用率,但也带来了共峰问题,该问题会导致部分业务服务质量(QoS)受损。如何在提升资源利用率之后,保障业务QoS不受损是技术上的关键挑战。
为此我们提出了Rubik资源利用率提升解决方案,Rubik字面意思为魔方,魔方由Rubik在1974年发明,故Rubik既是人名也指代魔方,在我们的解决方案中,Rubik象征着能够将服务器管理的有条不紊。
rubik容器调度在业务混合部署的场景下,根据用户对业务的配置(包括QoS分级、cache限制、弹性限流等配置),对资源进行合理调度与隔离,从而实现在保障在线业务的服务体验情况下,提升节点资源利用率。
Rubik当前支持如下特性列表:
我们推荐您在kubernetes集群中以daemonset形式执行rubik二进制。
OS: openEuler 21.09/22.03/22.09+
kubernetes: 1.17.0+
其余约束详见约束限制
我们提供了一键式脚本供用户使用,并在openEuler官方镜像仓库上提供了hub.oepkgs.net/cloudnative/rubik:latest
镜像(仅支持x86架构)。
下载rubik yaml脚本
$ curl -O https://gitee.com/openeuler/rubik/raw/master/hack/rubik-daemonset.yaml
在master节点上使用kubectl命令部署rubik daemonset:
$ kubectl apply -f rubik-daemonset.yaml
我们在kube-system
命名空间下创建了名为rubik-agent-xxx
的pod。
$ kubectl get pod -A -o wide | grep rubik
# NAMESPACE NAME READY STATUS RESTARTS AGE
# kube-system rubik-agent-6bn8n 1/1 Running 0 12m
如果您想自己动手参与修改、编译、按需使用rubik,请参考:
如果您在使用过程中遇到任何问题,可先查阅问题集锦。若未能解决您的问题,请直接联系我们或者向社区提出issue。我们热烈欢迎并且感谢您为社区贡献您的力量。
我们很高兴能有新的贡献者加入!
在一切开始之前,请签署CLA协议,并且你可能需要了解:
rubik遵从Mulan PSL v2版权协议
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型