阿里云协同万兴科技落地ACK One GitOps方案,全球多机房应用自动化发布,效率提升50%

简介: 阿里云协同万兴科技落地ACK One GitOps方案,全球多机房应用自动化发布,效率提升50%

【阅读原文】戳:阿里云协同万兴科技落地ACK One GitOps方案,全球多机房应用自动化发布,效率提升50%

作者:蔡靖、周章金、周晓晖

 

万兴科技深耕数字创意软件领域,并面向AIGC时代深度布局,旗下已推出万兴喵影、万兴播爆等视频创意软件。自2023年以来,AIGC如火如荼,万兴科技也蓬勃发展,业务在全球加速扩张。

 

随着业务的发展,万兴科技业务团队需要管理的K8s集群越来越多,且分布在多个地域,对集群管理的复杂度也越来越高,对分布式、多集群交付平台的需求也越来越强烈,经过详尽的调研后,最终选定基于ACK One GitOps来做多集群的分布式交付。

 

 

 

 

多集群交付痛点

 

 

 

随着业务蓬勃发展,当前业务发布更多地依赖人工,痛点主要有以下几点:

 

1)提升部署效率、减少失误可能性

 

阿里云上ACK和云下IDC共数十个Kubernetes集群,逐个集群逐个应用部署效率较低,需要提高效率,并减少人工操作失误的可能性。

 

2)优化发布追踪和回滚流程

 

难以追踪每一次发布记录,且回滚需要重新走一次发布流程。

 

3)多部门多租户应用权限管理困难

 

传统模式下,要管理每位用户可操作的应用存在较大挑战,易导致用户在操作中影响到其他团队或用户的应用。

 

 

 

 

ACK One GitOps方案

 

 

 

分布式云容器平台ACK One是阿里云面向混合云、多集群场景推出的企业级分布式云容器平台,提供多集群统一管理能力。通过全托管Argo CD,在开源能力基础上提升稳定性和体验等,并集成阿里云上多项能力,为客户提供开箱即用的Argo CD能力,快速、一致、安全地实现多集群的应用持续部署。


 

 


GitOps是使用Git仓库来管理应用的部署模板,将Git仓库作为Kubernetes集群中部署应用的唯一来源,实现应用的持续部署。ACK One GitOps依托这一理念,在ACK One GitOps中建立应用与集群的关系后,仅需提交代码(push commit)到Git仓库,即可完成业务应用的自动部署/同步到相应集群,大幅减少人工操作、提升发布效率。

 

ACK One支持通过注册集群将云下IDC Kubernetes集群注册到ACK上。在此基础上,万兴科技通过ACK One舰队,开发并实施了一系列高效管理策略,对在阿里云上ACK和云下IDC的数十个Kubernetes集群进行统一管理。同时,万兴科技深度运用ACK One GitOps,实现数千个Argo CD applications的稳定高效地自动化持续部署、灰度发布,并实现基于阿里云RAM的应用级别的权限管理。

 

 

 

 

落地过程中万兴团队解决的问题

 

 

 

1. 随着业务在全球范围内的快速发展,万兴科技跨境发布频次快速增长,从国内到美西、欧洲的发布,最初通过公网发布,多次遇到超时问题。万兴科技灵活调整策略,切换为通过专线发布,成功解决了这一问题,确保发布的稳定和高效。

 

2. 当ArgoCD同时有多个应用发版时,Gitlab的默认配置难以承受压力,万兴科技团队在Gitlab参数上进行精准优化,有效提升了系统承载能力,顺利解决了这一问题,实现了多个应用同时顺畅发版。

 

3. 一个应用会有多机房、多环境(测试、UAT、生产等)部署的需求,应用更新时,默认会触发ArgoCD的所有缓存更新,对Gitlab造成很大压力。万兴科技在与阿里云的合作中,设计并实施了针对性的解决方案,将应用更新时的缓存更新限定在特定环境,巧妙解决这一问题。


 

 

 

 

 

落地成果

 

 

 

大规模应用大规模集群的稳定分发

 

在万兴科技与阿里云的深度合作中,对网络拓扑进行了全面优化,对社区ArgoCD进行大量参数调优,精准定位并修复了社区中的缺陷,显著提升系统稳定性。当前,ACK One GitOps已可轻松支持万兴科技全球数十个集群和数千个Argo CD applications的快速、稳定、高效地持续部署。

 

自动化分发流程

 

合作过程中,万兴科技团队基于ArgoCD打造了一套自动化交付的业务平台,深度整合万兴科技的业务需求与ArgoCD能力,实现一次代码提交即可触发全球多机房自动化部署,提升了部署效率。

 

多租实现多团队权限隔离

 

ACK One GitOps通过集成阿里云RAM系统,不仅支持RAM用户SSO到Argo CD UI,还实现了基于阿里云RAM的应用级别的多租隔离管控。通过简单的配置后,即可对万兴科技多部门多租户应用权限进行隔离,提升了应用的安全性。

 

发布审计和一键回滚

 

ACK One GitOps通过全托管的Argo CD,可记录每一次用户发布,方便查看具体发布内容;同时,ACK One GitOps具备一键回滚机制,可在发布异常后,一键回滚到指定版本,减少发布失误带来的损失。

 

灵活的灰度控制

 

万兴科技团队基于业务需求,结合ArgoCD、Argo Rollouts和service mesh,构建了一套利用Metrics分析做自动渐进发布或刹车回滚的灰度方案。

 

 

 

 

总结

 

 

 

ACK One GitOps是在阿里云上落地GitOps方法论最佳工具,在保持GitOps的优秀理念之外,和云上的各种权限体系和ACK集群做了全面打通,实现了开箱即用。

 

通过与阿里云的深入合作,万兴科技深度参与该方案的落地实施,并结合业务需求进行优化,有效解决了上述业务痛点,助力应用发布效率提升了50%。

 

欢迎通过搜索钉钉群号加入ACK One客户交流钉钉与我们一同交流。(钉钉群号:35688562

 

相关链接:

 

[1] 分布式云容器平台ACK One:

https://help.aliyun.com/zh/ack/distributed-cloud-container-platform-for-kubernetes/product-overview/ack-one-overview

 

[2] ACK One舰队:

https://help.aliyun.com/zh/ack/distributed-cloud-container-platform-for-kubernetes/user-guide/fleet-management/?spm=a2c4g.11186623.help-menu-85222.d_2_2.1d4514abkXsG8X&scm=20140722.H_354195._.OR_help-T_cn~zh-V_1

 

[3] ACK One GitOps:

https://help.aliyun.com/zh/ack/distributed-cloud-container-platform-for-kubernetes/user-guide/gitops/?spm=a2c4g.11186623.help-menu-85222.d_2_2_4.59a04a88O6uf4gACK One CI/CD

 

[4] 最佳实践:

https://help.aliyun.com/zh/ack/distributed-cloud-container-platform-for-kubernetes/use-cases/ci-cd/?spm=a2c4g.11186623.help-menu-85222.d_3_6.56fa14abnAuKVq&scm=20140722.H_2802985._.OR_help-T_cn~zh-V_1



我们是阿里巴巴云计算和大数据技术幕后的核心技术输出者。

欢迎关注 “阿里云基础设施”同名微信微博知乎

获取关于我们的更多信息~

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
15天前
|
Cloud Native Serverless 数据中心
阿里云ACK One:注册集群支持ACS算力——云原生时代的计算新引擎
阿里云ACK One:注册集群支持ACS算力——云原生时代的计算新引擎
22 10
|
13天前
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
|
15天前
|
Kubernetes 持续交付 开发工具
阿里云协同万兴科技落地ACK One GitOps方案,全球多机房应用自动化发布,效率提升50%
阿里云协同万兴科技落地ACK One GitOps方案,全球多机房应用自动化发布,效率提升50%
|
15天前
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
|
2天前
|
人工智能 分布式计算 调度
打破资源边界、告别资源浪费:ACK One 多集群Spark和AI作业调度
ACK One多集群Spark作业调度,可以帮助您在不影响集群中正在运行的在线业务的前提下,打破资源边界,根据各集群实际剩余资源来进行调度,最大化您多集群中闲置资源的利用率。
|
13天前
|
Prometheus Kubernetes 监控
OpenAI故障复盘丨如何保障大规模K8s集群稳定性
OpenAI故障复盘丨如何保障大规模K8s集群稳定性
|
17天前
|
运维 分布式计算 Kubernetes
ACK One多集群Service帮助大批量应用跨集群无缝迁移
ACK One多集群Service可以帮助您,在无需关注服务间的依赖,和最小化迁移风险的前提下,完成跨集群无缝迁移大批量应用。
|
2月前
|
缓存 容灾 网络协议
ACK One多集群网关:实现高效容灾方案
ACK One多集群网关可以帮助您快速构建同城跨AZ多活容灾系统、混合云同城跨AZ多活容灾系统,以及异地容灾系统。
|
3月前
|
Kubernetes Ubuntu 网络安全
ubuntu使用kubeadm搭建k8s集群
通过以上步骤,您可以在 Ubuntu 系统上使用 kubeadm 成功搭建一个 Kubernetes 集群。本文详细介绍了从环境准备、安装 Kubernetes 组件、初始化集群到管理和使用集群的完整过程,希望对您有所帮助。在实际应用中,您可以根据具体需求调整配置,进一步优化集群性能和安全性。
185 12
|
3月前
|
Prometheus Kubernetes 监控
OpenAI故障复盘 - 阿里云容器服务与可观测产品如何保障大规模K8s集群稳定性
聚焦近日OpenAI的大规模K8s集群故障,介绍阿里云容器服务与可观测团队在大规模K8s场景下我们的建设与沉淀。以及分享对类似故障问题的应对方案:包括在K8s和Prometheus的高可用架构设计方面、事前事后的稳定性保障体系方面。

热门文章

最新文章