写点什么

优步针对微服务和大规模计算工作负载完成了大规模的 Kubernetes 迁移

作者:Claudio Masolo

  • 2025-05-31
    北京
  • 本文字数:1685 字

    阅读完需:约 6 分钟

大小:828.08K时长:04:42
优步针对微服务和大规模计算工作负载完成了大规模的Kubernetes迁移

优步(Uber)已成功完成一项大规模的Kubernetes迁移,将其整个计算平台从Apache Mesos迁移到Kubernetes,覆盖了多个数据中心和云环境。这家网约车巨头的工程团队在一系列技术博客文章中详细描述了他们的全面旅程,揭示了迁移数千个微服务和大规模计算工作负载时所面临的挑战、解决方案和经验教训。

 

这一迁移代表着优步基础设施架构的根本性转变,影响着全球市场上从叫车到送餐的数千项服务。该公司之前的计算平台是基于 Apache Mesos 构建的,在优步(Uber)快速增长阶段为其提供了良好的服务,但随着组织向更云原生的方式演进,它也呈现出了局限性。

 

优步的工程团队解释说:“这次迁移不仅仅是一次技术变革,而是对我们如何运营计算基础设施的彻底重新构想。”该项目历经多年,并需要在众多工程团队之间进行了仔细协调,以确保关键服务的零停机时间过渡。

 

优步对 Kubernetes 迁移的方法是有条理且存在风险规避的,优先考虑服务的可靠性而不是迁移速度。工程团队开发了一个复杂的迁移框架,允许逐步进行服务转换,同时保持与现有基于 Mesos 的服务的完全向后兼容性。

 

迁移策略围绕几个关键原则展开:

  • 在整个转换过程中保持服务的可靠性

  • 确保与现有工具和工作流程的无缝集成

  • 在新的 Kubernetes 环境中建立健壮的监控和可观测性能力。

 

该团队采用了双栈方法,在过渡期间同时在 Mesos 和 Kubernetes 上运行服务,以最大限度地降低风险。

 

最重要的技术挑战之一是如何调整优步内部广泛的工具和平台套件,使其与 Kubernetes 适配并协同工作。这包括重新实现部署管道、监控系统和与 Mesos 生态系统紧密集成的服务发现机制。

 


优步从 Mesos 迁移到 Kubernetes 的生态系统

 

除了迁移标准的微服务之外,优步还面临着迁移大规模计算工作负载的复杂性挑战,这些工作负载为包括机器学习模型训练、数据处理管道和分析工作负载在内的关键业务功能提供动力。由于资源需求和性能敏感性,对这些计算密集型应用程序提出了独特的挑战。

 

工程团队为在 Kubernetes 中处理这些工作负载开发了专门的解决方案,例如将 DSW 会话建模为 Kubernetes 中的自定义资源定义(Custom Resource Definition,CRD),优化的网络配置和增强的调度能力。优步工程师还使用 Federator 实施了复杂的资源分配机制,Federator 是一个集群联邦层,提供了对 Kubernetes 批处理集群的抽象。这因为如此,大规模批处理作业才可以与实时服务高效共存,而不会影响面向用户的应用程序。

 


使用联邦和不使用联邦的 Kubernetes 集群

 

迁移过程中并非没有重大的技术障碍。优步的工程团队遇到了与网络复杂性、大规模资源管理和在不同基础设施范式之间保持性能基准相关的挑战。该公司的全球业务对此增加了额外的复杂性,需要在多个地区和云提供商之间提供一致的有效解决方案。

 

其中一个特别的挑战是,在将服务前移到新平台时,需要保持优步严格的延迟要求。团队实施了全面的性能测试和逐步的推出策略,以确保在整个迁移过程中服务质量能保持一致。

 

工程团队还必须解决文化和运营方面的挑战,包括培训数百名工程师以了解 Kubernetes 的概念,并更新开发工作流程以与云原生实践保持一致。

 

完成的迁移在多个维度上带来了实质性的好处。优步报告说称,其运营效率得到了提高,开发人员的生产力得到了增强,整个基础设施的资源利用率也得到了提高。迁移到 Kubernetes 还使公司能够更好地利用云原生技术和实践,实现了更快的创新和更灵活的部署策略。

 

新平台提供了增强的可扩展性能力,使优步能够更有效地处理流量高峰和季节性的需求变化。此外,迁移还简化了优步的基础设施管理,降低了运营开销,并使团队能够更多地专注于产品开发,而不是平台维护。

 

同样,其他大公司也将他们的核心基础设施迁移到了 Kubernetes:Figma 在 12 个月内将核心服务迁移到了 Kubernetes,或者像 CERN 这样的组织,他们将 CMSWEB 集群迁移到了 Kubernetes。这些例子以及优步成功迁移到 Kubernetes 的案例,为其他考虑类似转型的大型组织提供了宝贵的案例研究。该公司详细记录了他们的旅程,提供了对企业采用 Kubernetes 的最佳实践的洞见,特别是对于那些在显著规模上运营的组织。

 

原文链接:

https://www.infoq.com/news/2025/05/uber-kubernetes-migration/

2025-05-31 12:001

评论

发布
暂无评论

构建测试平台与对应的组织架构需要哪些能力? 21/100

霍格沃兹测试开发学社

公排自动滑落模式智能合约dapp系统开发逻辑详情

开发微hkkf5566

测试面试题集锦(五)| 自动化测试与性能测试篇(附答案)

霍格沃兹测试开发学社

微软出品自动化神器Playwright,不用写一行代码(Playwright+Java)系列(二) 之脚本的录制及调试...

Java-fenn

Java

详解Java中的异常和处理时间

Java-fenn

Java

测试面试真题 | 从屡次碰壁到成长蜕变,半年拿下某大厂 60W 年薪测试开发 Offer!

霍格沃兹测试开发学社

数据持久化技术(Python)的使用

霍格沃兹测试开发学社

测试开发基础 | 计算机网络篇(二):物理层与数据链路层

霍格沃兹测试开发学社

Github点击破百万!这部《从零开始学架构》神书就此霸榜

Java-fenn

Java 程序员 java面试 Java面试题 Java面试Java面试题

飞书项目负责人洪涛:从抖音研发到飞书项目背后的管理经验

B Impact

飞书 飞书项目

版本控制神器GitHub的基本使用与踩坑,教你一铲子填平!

霍格沃兹测试开发学社

公私域营销新技术:小程序一键转App

Speedoooo

小程序 APP开发 APP软件开发 小程序容器

外包程序员的开源 Java 低代码开发平台光 2.3.0 Beta4 版发布,显著提升生成物质量

Java-fenn

Java

Java基础 | 如何用Javadoc Tool写规范正确的java注释

Java-fenn

Java

智能遍历测试在回归测试与健壮性测试的应用

霍格沃兹测试开发学社

测试工程师如何突破职场瓶颈?

霍格沃兹测试开发学社

测试面试真题|工作2年,从小厂到大厂,薪资翻倍是怎样的体验?

霍格沃兹测试开发学社

用 Pytest+Allure 生成漂亮的 HTML 图形化测试报告

霍格沃兹测试开发学社

Java注解系统学习与实战

Java-fenn

Java

接口自动化你不懂?听HttpRunner的作者怎么说

霍格沃兹测试开发学社

业务场景抽离,助力测试提效

转转技术团队

Java 函数式编程

Java-fenn

Java

Java毕设项目——超市POS收银管理系统(java+SSM+Maven+Mysql+Jsp)

Java-fenn

Java

BAT 名企大厂做接口自动化如何高效使用 Requests ?

霍格沃兹测试开发学社

测试开发基础|一文搞定计算机网络(一)

霍格沃兹测试开发学社

测试面试题集锦(三)| 计算机网络和数据库篇(附答案)

霍格沃兹测试开发学社

测试面试题集锦(二)| 测试工具篇(附答案)

霍格沃兹测试开发学社

最流行的接口测试体系,从入门到项目实战

霍格沃兹测试开发学社

测试开发基础 mvn test | 利用 Maven Surefire Plugin 做测试用例基础执行管理

霍格沃兹测试开发学社

测试必会 | 通过容器化 Python Web 应用掌握 Docker 容器核心技能

霍格沃兹测试开发学社

测试面试题集锦(六)| 软素质篇与反问面试官篇(附答案)

霍格沃兹测试开发学社

优步针对微服务和大规模计算工作负载完成了大规模的Kubernetes迁移_云计算_InfoQ精选文章