奥迪借助Karpenter为关键业务节省63%成本
原文链接:
https://aws.amazon.com/cn/solutions/case-studies/audi-efficient-compute-case-study/
翻译:cloudpilot.ai
Karpenter开源地址:https://github.com/kubernetes-sigs/karpenter
全球高档汽车制造商奥迪股份公司(AUDI)借助其在线汽车配置工具帮助客户和经销商定制汽车的完美配置。这一项服务已在全球 30 多个市场推出,但奥迪的单一本地基础架构使其效率低下且难以维护。通过迁移到 AWS 并利用 Karpenter,奥迪提高了其工具的可扩展性、性能和成本,节省了63%的业务成本并且应用启动时间缩短了20%。
奥迪借助 AWS 提高可扩展性、可用性、效率和延迟
奥迪是大众汽车集团的子公司,为全球 100 多个市场生产高档汽车。经销商可以使用奥迪汽车配置工具为客户定制和下订单。客户也可以使用该工具在奥迪网站上选购和比较车辆。汽车配置工具是客户的主要入口,因此它对于业务来说至关重要。

奥迪的汽车配置工具后台系统最初是一个本地的单体应用,但为了应对流量激增和减少资源浪费,同时为各市场快速发布软件更新,奥迪需要更高的效率、高可用性和无缝的可扩展性。
在本地环境中,资源过度配置,且需要额外的服务器待命,因此部署新环境通常需要花费数天甚至数周来完成内部流程。
2018年,奥迪在北美市场测试了其工具的云端原型。在验证云计算的优势后,奥迪将其生产应用迁移到 Amazon EC2,利用其安全且可扩展的计算能力。
接着,公司开始使用 Terraform 和 AWS CloudFormation 进行基础设施自动化和快速部署。通过迁移到云端,奥迪不再需要管理设备和数据中心,而是按需配置资源。此外,奥迪还通过在全球 AWS 区域内部署工作负载,解决了海外客户的延迟问题。
在 AWS 上,奥迪的开发速度和稳定性得到了提升,开发人员的生产力也提高了。奥迪的PO和系统架构师 Florian Königer 表示:“我们现在一切都使用 IaC。”整个环境使用 Terraform 搭建,部分组件使用 AWS CloudFormation。奥迪通过细粒度的权限设置简化了维护工作,减少了不必要的开销。同时,通过蓝绿部署(blue/green deployments),奥迪能够在云端更好地应对资源高峰期,从而稳定环境。
为了提高应用程序的敏捷性、部署速度和可扩展性,奥迪将其架构迁移到容器化平台。这使得向不同市场发布更新变得更加简单。
奥迪通过使用 Kubernetes 及其集群自动扩展工具(Cluster Autoscaler)功能,将原来的单体应用拆分为微服务。但由于 Cluster Autoscaler 对节点组深度依赖,无法灵活管理多种类型实例、应对突发流量高峰存在延迟并且对于节点扩缩容的处理比较低效。

为了进一步优化运维管理并提升灵活性,奥迪决定迁移到 Karpenter ——一个由AWS构建并贡献给 CNCF 的开源高性能 Kubernetes 集群自动扩展工具。
Karpenter项目地址:https://github.com/kubernetes-sigs/karpenter
“在AWS上,我们的可用性相比本地部署有所提升。我们还实现了更低的延迟和更短的响应时间。”奥迪 PO 兼系统架构师 Florian Königer 表示。
利用基于Graviton的实例和Karpenter提升性能和灵活性
通过 Karpenter,奥迪能够在单一配置中使用不同的 Amazon EC2 购买选项、实例类型和尺寸,搭配不同处理器的实例,自动根据价格和容量优化策略选择最佳实例。奥迪使用的选项包括按需实例、Spot实例和预留实例。
在云妙算(Cloudpilot.ai)中用户可以采用智能节点选择功能,为其工作负载匹配多样化的实例类型,以提升计算性能、增加系统的冗余度和容错性,增强应用的稳定性。
2021年,奥迪开始使用搭载 AWS Graviton 处理器的 Amazon EC2 实例,提供高达40%的价格性能提升。到2024年,奥迪扩展了多架构方案,利用 Karpenter 简化 Graviton 实例的配置。
奥迪的开发团队将 Graviton 实例与预留实例和 Spot 实例结合使用,从而优化工作负载的价格性能,并降低汽车配置工具的计算成本。Karpenter 的性能表现是 Cluster Autoscaler 的3-5倍。 基于此,奥迪使用 Karpenter 运行生产环境中的大约1,000个 Kubernetes Pod,使每个实例都能直接由Karpenter 管理,提高灵活性。相比本地系统,Graviton 实例的计算成本降低了63%,应用启动时间缩短了20%。

然而,Spot实例可能随时被回收,用户只能提前2分钟接到中断通知。对于大规模节点部署而言,会导致回滚操作时间不足。
为解决这一问题,云妙算(Cloudpilot.ai)的** Spot Predict 功能通过机器学习算法准确预测出 AWS 全球数十万 Spot 实例的中断时刻,提前60分钟进行回退操作**,进而大幅减少中断事件。结合增强版Karpenter,确保大规模使用 Spot 实例的稳定性。
为了进一步榨干 Spot 实例的价值,云妙算提供 Spot Automation 特性,让尽可能多的应用以尽可能长的时间跑在竞价实例上,进一步帮助您的团队节省云成本,把预算用在关键的业务拓展上。
此外,奥迪还优化了资源使用,特别是在周末的开发环境中,通过 Karpenter 提高了效率,减少了配置容量。
继续云迁移以改善客户体验
通过将汽车配置工具迁移到混合使用 Amazon EC2 实例和 Karpenter 的架构,奥迪加快了应用启动时间,提升了可扩展性,并减少了客户的延迟。“在AWS上,我们的可用性相比本地部署有所提升,”Königer表示,“我们还实现了更低的延迟和更短的响应时间。”
迁移到云端后,奥迪优化了计算基础设施,提升了客户和经销商的整体体验。
项目介绍
Karpenter 于2021年11月由AWS推出,是一款开源的Kubernetes集群自动扩展工具,专为优化 Kubernetes 集群的工作负载设计,旨在以灵活、高性能和简洁的方式实现节点的弹性扩展。今年9月已发布1.0版本。
目前,Karpenter 已为全球超500家知名企业在生产环境中提供服务,包括阿迪达斯、Anthropic、Slack、Figma等。
Karpenter项目地址:
https://github.com/kubernetes-sigs/karpenter
奥迪借助Karpenter为关键业务节省63%成本的更多相关文章
- SpringAop实操之记录关键业务请求数据
AOP,中文名称,切面.在不影响业务代码情况下,实现想要的功能,是个真炫酷的事. aop是个好东西,记录日志是必须的. 记录数据也一样的,那么也是可以用aop来实现的,这里借助注解一起解决问题吧. 因 ...
- 易趣:使用MongoDB创建关键业务的多数据中心应用
eBay:使用MongoDB创建关键业务的多数据中心应用 作为全球前十的零售品牌,eBay的活跃用户有一亿七千多万,并拥有跨越全世界190个市场的10亿购物清单,这样的规模下,eBay绝对不允许出现宕 ...
- 关键业务系统的JVM参数推荐(2018仲夏版) (强烈推荐 唯品会)
年更贴,因为两年里遇到的事情,一些想法变了.也补充了不少VJTools的内容,比如为伸手党们准备的jvm-options.sh. 在关键的业务系统里,除了继续追求技术人员最爱的高吞吐与低延时之外,系统 ...
- 内存回收导致关键业务抖动案例分析-论云原生OS内存QoS保障
蒋彪,腾讯云高级工程师,10+年专注于操作系统相关技术,Linux内核资深发烧友.目前负责腾讯云原生OS的研发,以及OS/虚拟化的性能优化工作. 导语 云原生场景,相比于传统的IDC场景,业务更加复杂 ...
- 云服务利用Auto Scaling节省30%成本
公有云提供了很多免费的高级功能,很多中小用户以为自己用不上.实际上稍微研究一下,就能享受很多便利和节省不少成本. 本方案就是利用弹性伸缩(auto-scaling)减少服务器成本,几乎适合所有集群式部 ...
- FreeWheel基于Go的实践经验漫谈——GC是大坑(关键业务场景不用),web框架尚未统一,和c++性能相比难说
摘自:http://www.infoq.com/cn/news/2017/06/freewheel-experience-on-go Go语言是FreeWheel公司目前主要力推的一个方向,在其看来, ...
- DDos攻击的一些领域知识——(流量模型针对稳定业务比较有效)不稳定业务采用流量成本的检测算法,攻击发生的时候网络中各个协议的占比发生了明显的变化
在过去,很多防火墙对于DDoS攻击的检测一般是基于一个预先设定的流量阈值,超过一定的阈值,则会产生告警事件,做的细一些的可能会针对不同的流量特征设置不同的告警曲线,这样当某种攻击突然出现的时候,比如S ...
- 网络流量分析——NPMD关注IT运维、识别宕机和运行不佳进行性能优化。智能化分析是关键-主动发现业务运行异常。科来做APT相关的安全分析
科来 做流量分析,同时也做了一些安全分析(偏APT)——参考其官网:http://www.colasoft.com.cn/cases-and-application/network-security- ...
- 借助 ASR 和 System Center 执行基于 SAN 复制的企业级灾难恢复
Abhishek A. Hemrajani 云 + Enterprise项目经理 对于Azure Site Recovery,我们的优先级已经提升为每个人都可以在任意地点获取易于使用的灾难恢复 (DR ...
- 构建微软智能云:介绍新的Azure业务转型创新技术
在我和用户的交流中发现,在任何类型和规模的组织中,每当涉及到在云中实现商业价值的最大化并取得竞争优势的时候,就会明显呈现三个趋势.首先,应用程序促进着组织更快速实现价值.同时,诸如机器学习.数据预测分 ...
随机推荐
- python pyqt6 设定窗口置顶
self.setWindowFlag(Qt.WindowType.WindowStaysOnTopHint)即可效果一般,页面会出现闪烁一次, # 置顶按钮 self.top_button = QPu ...
- MiniMax:如何基于 JuiceFS 构建高性能、低成本的大模型 AI 平台
MiniMax 成立于 2021 年 12 月,是领先的通用人工智能科技公司,致力于与用户共创智能.MiniMax 自主研发了不同模态的通用大模型,其中包括万亿参数的 MoE 文本大模型.语音大模型以 ...
- 26.删除有序数组中的重复项 Golang实现
题目描述: 给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度.元素的 相对顺序 应该保持 一致 .然后返回 nums 中唯 ...
- QT硬件通讯基础
QT硬件通讯基础 使用AI技术辅助生成 1 QT与硬件通讯概述 1.1 QT硬件通讯的基本概念 1.1.1 QT硬件通讯的基本概念 QT硬件通讯的基本概念 QT硬件通讯的基本概念 QT作为一种跨平台的 ...
- 基于图扑 HT for Web 实现的昼夜切换场景应用
图扑软件 HT 的案例中有许多白天黑夜效果.这种效果在各类不同的项目中得到了广泛的应用和认可. 白天黑夜效果是视觉设计和交互设计中常见的一种手法.通过细致巧妙地调整色彩.亮度.对比度等视觉参数,即可成 ...
- NoC简介
一.什么是NoC NOC(Network on Chip)是一种用于片上系统(SoC, System on Chip)中的通信架构,它在芯片内为处理器.存储器.I/O 设备和其他硬件模块之间提供数据通 ...
- Linux 进程调度之schdule主调度器
考虑到文章篇幅,在这里我只讨论普通进程,其调度算法采用的是CFS(完全公平)调度算法. 至于CFS调度算法的实现后面后专门写一篇文章,这里只要记住调度时选择一个优先级最高的任务执行 一.调度单位简介 ...
- vue前端使用nexus配置npm私有仓库
当我们运行前端项目的时候,常常在解决依赖的时候会加上一个参数npm install --registry=https://registry.npm.taobao.org将源指定为淘宝的源,以期让速度加 ...
- c#传统读取配置文件
using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration.Json; namespace C ...
- 谈一谈 vuex 里边,actions,mutations ,state 之间的运转方式
首先,调用 actions 中的方法,一般我们在 actions 做登录和登出的请求 : 然后调用 mutations 的方法修改数据 ,因为 mutations 方法是修改state的数据的唯一方法 ...