享道出行:容器弹性技术驱动下的智慧出行稳定性实践

💡 原文中文,约4100字,阅读约需10分钟。
📝

内容提要

享道出行是上汽集团的移动出行战略品牌,利用容器技术和弹性扩缩容计划提升出行服务的质量和效率。他们采用阿里云ACK的AHPA弹性猜测来处理弹性滞后问题,并通过预先扩容和混合布置ECS和ECI来提高资源利用率和容错性。他们还使用自定义弹性资源优先级调度和向虚拟节点注入Sidecar容器来解决资源调度和日志收集问题。最后,他们使用自定义弹性目标和外部指标机制来实现更灵活的扩缩容。这些措施使享道出行能够应对突发流量并降低成本。

🔎

延伸解读

弹性滞后:出行平台稳定性的关键挑战

享道出行原有Kubernetes HPA和CronHPA方案存在分钟级冷启动延迟,导致无法承接预期外流量,造成流量丢失和运维成本高。这揭示了在潮汐明显的出行场景中,传统弹性扩缩容的滞后性会直接影响服务稳定性。文章指出,算力预备、调度、镜像拉取等环节拉长了扩容响应时间,成为业务连续性的主要风险点。

AHPA与混合部署:预测与弹性的组合策略

AHPA通过历史数据预测未来24小时每分钟的Pod需求,提前一个Ready Time扩容,缓解应用层滞后。但底层资源不足仍可能拖慢扩容,因此享道采用ECS与ECI混合部署:基线业务用包年包月ECS,周期型用按量付费ECS,突发流量由ECI保障。这种组合兼顾成本与稳定性,但需注意ECI单价较高,适合作为补充而非主力。

调度与日志:自定义策略解决混合架构难题

混合部署下,享道通过ResourcePolicy自定义调度优先级,优先使用包年包月ECS,缩容时优先释放ECI,确保资源确定性。同时,针对虚拟节点不支持DaemonSet的问题,利用虚拟节点SidecarSet向调度到ECI的Pod注入日志Sidecar,保持与ECS节点一致的日志收集能力,且对存量业务侵入小,兼容OpenKruise原生SidecarSet。

自定义指标与业务价值:更贴合实际需求的弹性

基于CPU/内存的弹性目标难以完全拟合复杂业务,享道利用AHPA的External Metrics机制,结合alibaba-cloud-metrics-adapter,实现基于自定义指标的扩缩容。上线后,智能容器弹性能力在保证稳定性的同时显著降低资源成本,并能有效应对突发流量。这表明,弹性策略需与业务指标深度结合,才能实现成本与稳定的平衡。

❓

Q&A

享道出行如何提升出行服务的质量和效率?

享道出行通过容器技术和弹性扩缩容计划来提升出行服务的质量和效率,利用阿里云ACK的AHPA智能弹性来处理弹性滞后问题。

AHPA弹性预测是如何工作的?

AHPA根据历史数据预测未来的Pod需求,提前扩容以应对流量高峰,确保在流量上涨时Pod已准备好。

享道出行如何解决资源调度和日志收集问题?

享道出行通过向虚拟节点Pod注入Sidecar容器来解决日志收集问题,保持系统的兼容性。

享道出行的混合布置策略有什么优势?

混合布置策略结合了ECS和ECI的优势,优化了成本和稳定性,适合应对流量突发场景。

自定义弹性资源优先级调度的目的是什么?

自定义弹性资源优先级调度确保资源的高效利用,优先使用包年包月的ECS资源,以降低运维成本。

享道出行如何应对突发流量?

享道出行通过智能容器弹性能力和预先扩容策略来应对突发流量,确保服务的稳定性。

🏷️

标签

➡️

继续阅读