写点什么

利用 GitOps 优化阿迪达斯的容器平台

  • 2024-05-04
    北京
  • 本文字数:1435 字

    阅读完需:约 5 分钟

大小:704.89K时长:04:00
利用 GitOps 优化阿迪达斯的容器平台

阿迪达斯(Adidas)最近讨论了他们如何将平台配置演变为基于 GitOps 的设置。在一系列的博客文章中,阿迪达斯详细阐述了 GitOps 在其容器平台中的使用情况,以及他们计划如何改进其平台的管理。


阿迪达斯模式可能不适合初创公司或科技公司的模式,但它的技术实施可以帮助各个团队提高效率。实施是从实体店到他们的在线平台,再到他们的产品设计团队。阿迪达斯的基础设施从中国延伸到新加坡,横跨欧洲,并延伸到了北美和南美,在云上运行着许多临时服务器,全天候运行容器,以支持全球开发团队。


在开始这段旅程时,每个容器集群都有自己的专用存储库,其中包含多个分支。这些存储库中的每个分支都有用于配置应用程序的管道。维护了一个共享配置存储库,其中包含基于环境或地理因素覆盖配置的各种分支。


此外,还有与阿迪达斯内部系统集成的代码库。中央存储库有助于为这些内部开发创建可部署的包。这种方法具有挑战性,比如更新一个组件,需要跨多个存储库进行修改,范围从四个到可能的五十个,每个存储库都需要单独的变更请求及其审查和批准流程。


阿迪达斯将其战略从推送模式转变成了拉取模式,在推送模式中,一个系统将配置推送给另一个系统,在拉取模式中,系统从配置存储库中检索配置。


随着容器平台的全球扩张,以及在多个执行环境中运行的多样化内部客户,阿迪达斯采用了分层的方法。初始层包含了适用于所有集群的设置,称为全局配置。


随后,有一个特定于执行环境的层,如开发、测试(QA)或生产环境。另一层与地理区域有关,解决了一些独特性的问题,如由于国外容器存储库的图像提取速度较慢,中国的数据检索优化。最后,还有特定于集群的配置层。


资料来源:我们如何管理容器平台:一个关于把握现在的故事


这种结构提供了跨四个配置层独立定制详细信息的灵活性。变更可以在全局、每个环境、每个地理区域或专门针对单个集群上实施,其中特定于集群的配置优先于地理、环境和全局设置。


通过实施上述方法,阿迪达斯可以简化平台集群管理。他们实施了一系列对平台稳定性产生真正影响的预警。团队现在可以通过预执行配置来试运行以预见即将到来的平台变更,从而对不同集群之间的潜在比变更提供更深入的见解。


由于这一转变,团队通过将配置整合到更少的存储库中,而不是将它们分散到多个存储库中,从而减少了操作时间。这种整合最大限度地减少了确保平台上应用程序配置准确性所需的手动操作。他们现在可以在不考虑集群数量的情况下扩展容器平台,但是由于容量的原因,在建立新集群时,一些手动任务仍然不可避免。


阿迪达斯改进容器平台的方法似乎与我们在 2023 年旧金山 QCon 上看到的 Hazel Weakly 的演讲一致。Weakly 讨论了最初对平台的关注点往往围绕着最大限度地减少工作量。这一方面虽然并不总是其他人的首要任务,但对于个人贡献者来说却是一个重要的关注点。然而,要建立一个有效的平台,必须协调所有利益相关者的优先事项。


阿迪达斯团队还引入了一种机制,使每个集群能够在指定的维护窗口内自主安排新配置的应用。事实证明,在阿迪达斯的关键销售活动中,这种机制是有益的,它可以防止可能影响阿迪达斯的业务中断。

最后,他们直接在配置存储库中实现了自动的变更日志生成,这对于跟踪平台的演进和了解其历史变更至关重要。


当谈到容器平台管理方面的改进计划时,即将到来的变更包括 Operations CLI,以简化集中点的操作。并规划了临时集群,以实现集群内的自动基础设施部署。这里详细阐述了类似的改进计划。


原文链接:https://www.infoq.com/news/2024/04/adidas-container-platform-gitops/


声明:本文为 InfoQ 翻译整理,未经许可禁止转载。

2024-05-04 08:0010214

评论

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

十大 CI/CD 安全风险(二)

SEAL安全

DevOps CI/CD DevSecOps CI/CD管道 软件供应链安全

5分钟,带你创建一个智能电梯检测器模型

华为云开发者联盟

物联网 华为云 iotda 智慧电梯 企业号十月 PK 榜

面试官:你是怎样进行react组件代码复用的

beifeng1996

React

有人想用开源工具DBT取代 SQL,你同意吗?

雨果

sql

驱动企业数字化转型 低代码平台需要具备哪些能力?

力软低代码开发平台

SchedulX V1.7.0更新,规格压测、成本洞察等重磅功能发布!

星汉未来

云原生 降本增效 星汉未来

【Nacos源码之配置管理 十一】服务端LongPollingService推送变更数据到客户端

石臻臻的杂货铺

nacos 10月月更

明道云伙伴大会2022/秋,免费门票限量领

明道云

低代码 零代码 aPaaS

融云 uni-app 原生插件,生态丰富、高效集成

融云 RongCloud

sdk 集成 uri app

阿里高工携18位架构师耗时两个月整合1000页的Java岗面试八股文

程序知音

Java 架构 java面试 后端技术 Java面试八股文

如何使用华为云IoT平台实现远程控制无人机,资深物联网从业者手把书一步一步教你!

wljslmz

物联网 IoT 无人机 华为云 10月月更

别按部就班的背面试题了!吃透这份Java面试核心知识手册,大环境不好Offer也能拿到手软!

Java全栈架构师

程序员 面试 程序人生 架构师 Java后端

Gartner:被CIO们忽略的7个颠覆性趋势

雨果

CIO

技术解读:现代化工具链在大规模 C++ 项目中的运用 | 龙蜥技术

OpenAnolis小助手

c++ 开源 龙蜥技术 优化技术 ThinLTO

数字化转型案例解读:德意志银行数字化转型背后的故事

雨果

数字化转型

IT人士必须警惕这9个信号:说明你的IT架构很糟糕

雨果

数据管理工具 数据服务平台

专利解析|混合缓存技术在元年多维库中的应用

元年技术洞察

数据分析 多维数据库

什么是深度学习?人工智能能影响未来的特点之一

Finovy Cloud

人工智能 深度学习

阿里云块存储团队卓越工程实践

阿里技术

经验分享 语言 & 开发

公司合同管理软件有哪些?

优秀

合同管理软件

String、StringBuffer、StringBuilder的区别

zarmnosaj

10月月更

网易数帆数据治理2.0实践分享

网易数帆

大数据 数据中台 数据治理 数据质量 企业号十月 PK 榜

JFrog Xray 与 Amazon Security Hub 集成

亚马逊云科技 (Amazon Web Services)

安全 DevSecOps

企业集成方案

久歌

企业架构 企业集成

向量数据库是如何检索的?基于 Feder 的 IVF_FLAT 可视化实现

Zilliz

人工智能 可视化 向量检索 anns 以图搜图

爆火的RPA尚在初期阶段,拥挤的赛道厂商如何突围?

ToB行业头条

什么是数字体验平台(DXP)?

Baklib

客户体验 数字体验

【Nacos源码之配置管理 十】客户端长轮询监听服务端变更数据

石臻臻的杂货铺

nacos 10月月更

挑战海量数据:基于Apache DolphinScheduler对千亿级数据应用实践

白鲸开源

大数据任务调度 任务调度 dophinscheduler 大数据调度

用了这个API协作调试工具,忘记了postman

Liam

Postman 接口调试 开放api API接口 API调试

Flowable 任务如何认领,回退?

江南一点雨

Java springboot workflow flowable JavaEE

利用 GitOps 优化阿迪达斯的容器平台_架构_Aditya Kulkarni_InfoQ精选文章