扫码阅读
手机扫码阅读

在线业务极致伸缩、CPU 利用率达 60%,涂鸦的云原生资源优化实践

52 2024-07-04

背景

涂鸦云原生平台在容器化基础上,已通过监控分析、弹性伸缩等手段降低k8s集群成本,但资源使用仍有优化空间。面对成本与稳定性的对立,需精细优化资源同时保障应用稳定性。通过扩展k8s功能,进一步降低成本且提升稳定性。

弹性伸缩挑战与解决方案

弹性伸缩面临的挑战包括Java应用启动时间长、kafka消费者应用重平衡等。其解决方案为引入keda和crane的EHPA,实现通过自定义业务指标的弹性伸缩,以及固定的定时弹性扩缩容策略。案例显示EHPA通过流量预测实现提前扩容,定制业务指标精准扩容,定时扩缩容精确控制。

在线业务节点无损缩容挑战与解决方案

面临在线业务节点无损缩容挑战,社区的cluster-autoscaler组件被用于解决。方案包括调整集群默认调度策略和弹性节点组的扩缩容方案,以实现低峰期缩容时减少对服务的影响,高峰期快速扩容。

负载差异平衡挑战与解决方案

为平衡节点间负载差异,采用了调度策略,引入scheduler-plugins项目的Trimaran插件优化,并结合descheduler进行重调度。

多AZ部署弹性伸缩调度挑战与解决方案

针对多可用区部署的服务,通过调度策略和重调度解决了Pod的可用区分布均衡、扩缩容时的可用区选择和均衡分布维持问题。

成果

实施上述方案后,集群的整体状况显著改善,如美国区节点组资源水位维持在95%,实际CPU使用率日均在60%以上,弹性伸缩的CPU核数占比显著。

总结和展望

基于kubegrus平台,计划持续优化功能降低使用门槛,并围绕故障恢复、调度能力和云原生架构升级等方向提供更完善的云原生解决方案。

作者简介

毛琦,涂鸦智能云原生开发工程师,关注云原生领域技术。

相关项目地址

想要了解更多,点击 查看原文

为一线互联网公司核心技术人员提供优质内容。科技圈的观察者,前沿技术的传播者。

94 篇文章
浏览 3978
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设 白皮书上线