【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

Uber 将 4000 多个微服务迁移到新的多云平台 Up

  • 2023-10-27
    北京
  • 本文字数:1071 字

    阅读完需:约 4 分钟

大小:529.81K时长:03:00
Uber将4000多个微服务迁移到新的多云平台Up

Uber 将其大部分容器化微服务从µDeploy迁移到一个叫作 Up 的新多云平台,准备将相当一部分计算迁移到云端。Uber 花了两年时间将其许多微服务变得可移植,以便可以在不同的计算基础设施和容器管理平台之间进行迁移。

 

2014 年,Uber 还只是一个单体应用程序,随着业务的增长,开始迁移到微服务架构。Uber 开发了µDeploy来帮助标准化大规模的应用服务部署。这一措施抽象了主机管理方面的东西,但服务管理仍然是高度手动的,这意味着服务工程师仍然需要决定哪些服务应该在哪个特定区域的哪个区域(物理数据中心)内运行。

 

Uber 高级工程师Mathias Schwarz和工程经理Andrew Neverov解释了 Uber 决定将工程团队与基础设施团队完全解耦的原因:

 

在运营本地数据中心时,由于芯片短缺和供应链问题,我们的交付周期较长。2023 年 2 月 13 日,Uber与甲骨文和谷歌合作,致力于多元化和降低公司在供应链问题上的风险。如果没有一个可以将底层基础设施与数千名负责为业务提供数百种不同的服务 Uber 工程师解耦的系统,那么执行这一战略是不可能的。

 

2018 年,Uber 的平台团队开始研究一个新的多云、多租户联合控制平面,负责自动化服务部署和基础设施级迁移。这个叫作 Up 的新平台旨在成为服务工程师与基础设施系统交互的主要工具。它还将管理和执行最佳实践,以推动安全的代码部署。

 


Up 的高级架构(来源:Uber工程博客)

 

Up 平台采用了分层架构,其中体验层负责用户交互和系统管理,包括工作负载管理和伸缩。平台层为体验层组件提供通用的抽象和概念模型,用来表达基于主机能力和计算能力的服务部署约束。联邦层实现与计算集群的集成,并负责基于可用容量和定义的部署约束来执行服务部署。变更管理组件提供渐进式发布功能。最底层包含实际的集群实例,使用了基于Apache Mesos而构建的PeletonUber自己的开源容器编排平台)和Kubernetes

 

为了准备迁移到云端,Uber 花了两年时间使所有无状态微服务都变得可移植,可以在无需服务工程师参与的情况下在区域之间进行集中式管理。他们使用现有工具在区域之间移动服务,确保它们是可移植的。首先,他们允许将服务移回原始区域以解决可移植性问题,一旦解决了可移植性问题,就定期移动服务以验证其可移植性并防止出现回归。

 

在变得可移植之后,微服务逐步自动迁移到 Up 上,得益于自动伸缩和效率,节省了大量的资金,并大大减少了服务团队的维护负担。Uber 的大部分微服务平台现在都通过 Up 来管理,可以自由地启动其云迁移工作,而不会对服务团队产生太大影响。他们也关注自动化持续交付和部署安全方面的东西。

 

原文链接

https://www.infoq.com/news/2023/10/uber-up-cloud-microservices/

2023-10-27 08:0021459

评论

发布
暂无评论
发现更多内容

LeetCode题解:145. 二叉树的后序遍历,递归,JavaScript,详细注释

Lee Chen

大前端 LeetCode

架构师训练营 - 第 2 周课后作业(1 期)

阿甘

oeasy 教您玩转 linux 010400 总结 summary

o

golang 表格编程降低圈复杂度

猴子胖胖

表格开发 Go 语言

深度解析物联网设备的区块链技术

CECBC

区块链 智能合约 物联网

判断一个请求是否是Ajax异步请求

麦洛

ajax

时空碰撞优化系列·二

誓约·追光者

hive Sparksql 计算效率 优化

众盟科技2020智能化白皮书:穿越新商业周期,读懂商业智能化的真义

脑极体

微前端qiankun从搭建到部署的实践

fengxianqi

大前端 微应用

架构师训练营 - 第 2 周学习总结(1 期)

阿甘

架构师训练营 1 期第 2 周:框架设计 - 作业

piercebn

极客大学架构师训练营

网站日志分析最完整实践

MySQL从删库到跑路

甲方日常 20

句子

工作 随笔杂谈 日常 Java 25 周年

架构师训练营第 1 期 -week2

习习

第7周的总结

Vincent

极客时间 极客大学

“大数据+区块链”的智慧城市建设!

CECBC

区块链 大数据

架构师训练营第 1 期 第 1 周作业

李循律

一个草根的日常杂碎(9月22日)

刘新吾

生活 随笔 记录

高并发下为什么更喜欢进程内缓存

架构师修行之路

缓存 架构设计

添加字幕哪个视频剪辑软件比较简单?

奈奈的杂社

视频创作 视频剪辑 视频后期 自媒体 后期字幕

船长梁晓玲的猎鹰号真的能赚钱嘛?不分析不知道……

成周

心理学 船长梁晓玲 诈骗

第7周作业

Vincent

极客时间 极客大学

看动画学算法之:排序-count排序

程序那些事

动画 看动画学算法 看动画学数据结构 count排序

时空碰撞优化系列·一

誓约·追光者

hive 数据分析 Sparksql 计算效率 优化

一夜爆火,只因阿里内部作为参考的SpringBoot巅峰之作git开源

小Q

Java 架构 面试 微服务 springboot

响应式编程到底是什么?

博文视点Broadview

Java 响应式 响应式编程 reactor 并发

Redis 发布订阅,小功能大用处,真没那么废材!

楼下小黑哥

Java redis spring

救人于无形的“环境智能”,到底是一种什么智能?

脑极体

c++杂谈-1

菜鸟小sailor 🐕

c++

分布式高并发下Actor模型如此优秀

架构师修行之路

系统设计 reactor 高并发

Spring系列之新注解配置+Spring集成junit+注解注入

Java spring 微服务 架构师

Uber将4000多个微服务迁移到新的多云平台Up_微服务_Rafal Gancarz_InfoQ精选文章