阿里云容器服务 ACK One 分布式云容器企业落地实践

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
函数计算FC,每月15万CU 3个月
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: 3年前的云栖大会,我们发布分布式云容器平台ACK One,随着3年的发展,很高兴看到ACK One在混合云,分布式云领域帮助到越来越多的客户,今天给大家汇报下ACK One 3年来的发展演进,以及如何帮助客户解决分布式领域多云多集群管理的挑战。

【阅读原文】戳:阿里云容器服务 ACK One 分布式云容器企业落地实践

阿里云容器服务ACK提供丰富的产品功能,在弹性、调度、可观测、成本治理、安全合规方面提供强大且成熟的产品能力,但如果您有IDC资源或者三方资源,无法短期迁移到阿里云容器服务ACK,又有弹性、调度、可观测、成本治理、安全等方面的痛点,可以考虑采用ACK One分布式云容器平台。

 

3年前的云栖大会,我们发布分布式云容器平台ACK One,随着3年的发展,很高兴看到ACK One在混合云,分布式云领域帮助到越来越多的客户,今天给大家汇报下ACK One 3年来的发展演进,以及如何帮助客户解决分布式领域多云多集群管理的挑战。

 

 

首先我们总结下分布式云容器领域企业面临的挑战, 对本地IDC自建集群,会出现IDC资源的确定性和业务流量不确定性的矛盾,业务高峰,IDC资源不足,在线业务受损,离线业务排队。业务低峰,IDC资源浪费。随着业务的发展,集群数量多,又来自不同的供应商,运维技术差异大,工作量大。另外,企业对高可用的要求提高,如何构建多集群应用容灾系统也是企业面临的难题。最后,对于分散在不同位置的服务器,边缘侧的服务器,GPU服务,如何通过K8s集群管理起来,统一中心和边缘的技术栈,也是一个难题。

 

 

通过分布式云容器平台ACK One可以快速构建分布式云原生基础设施,为了应对上述的挑战。ACK注册集群可以接入管理IDC自建集群和三方公有云集群。

 

ACK边缘集群可以接入并容器化管理IDC/ENS中的服务器,也可以管理位于工厂/门店等分散的服务器。

 

接入后,可以将云上的ECS/ECI接入IDC集群扩展弹性算力,进而使用ACK提供的弹性伸缩与智能调度,彻底解决IDC资源焦虑,降低综合成本。同时提供和ACK集群一致的运维体验,包括:云原生AI套件、运维、可观测、安全合规能力。

 

最后,ACK One多集群舰队,提供一个统一控制面管理多个K8s集群,提供应用分发、作业调度、流量管理、运维管理等能力。

 

 

这张图展示的是ACK One注册集群的架构,我们可以将三方公共云中的K8s集群和本地数据中心的自建K8s集群接入到ACK One注册集群中。

 

首先,您要有一个K8s集群,之后在K8s集群安装注册集群的agent pod,Agent pod会反向连接ACK One注册集群服务端并完成管控通道的建立。

 

之后,ACK One注册集群管控可以下发K8s API请求,并通过Agent pod的中转到自建K8s集群的API Server中。从而通过ACK One注册集群,可以获得ACK集群的扩展能力,包括:Prometheus监控、SLS日志、FinOps、备份中心、安全、Knative、针对AI场景的Kserve、数据加速Fluid、镜像加速能力、ASM服务网格能力。以上所有云上ACK集群具备的能力,都可以通过注册集群在三方公共云K8s集群和自建K8s集群中落地实现。

 

另外,为了应对本地IDC资源弹性不足,ACK One注册集群支持云上弹性,可以将云上的ECS/ECI计算资源,包括CPU和GPU资源,加入到自建K8s集群中,由自建K8s调度云上资源,应对业务流量增长。

 

可以说,您依然完全控制自建K8s集群,同时,获得了云上ACK集群才具有的强大扩展能力。

 

 

首先,通过注册集群,IDC K8s集群可以接入云上的ECS节点,也可以通过ACK Virtual Node接入Serverless ACS ECI算力。对云上ECS节点,支持自定义VM镜像,可以与IDC镜像完全兼容,同时支持自动弹性伸缩。

 

如果选择接入Serverless ACS ECI算力,可以支持极致的弹性,K8s Pod和ACS ECI实例一一对应,启动快,无需管理节点。另外,为了更容易的介入Serverless算力,可以不创建注册集群,直接安装ACK Virtual Node的Helm chart,让IDC集群快速获取ACS ECI算力。

 

通过ACK云上云下协作调度器,可以支持GPU共享调度,以提高GPU利用率,优先调度IDC资源,IDC资源不足时使用云上算力,业务高峰后优先缩容云上资源,以提高IDC资源利用率,降低成本。

 

通过注册集群,IDC自建集群可以弹性获取云上万核计算资源,彻底解决IDC资源焦虑,综合成本降低。

 

 

通过注册集群,可以将ACK集群的可观测能力(监控/日志/事件/告警),包括开箱即用的Grafana大盘下沉到自建K8s集成中, 一套可观测方案,同时用于容器服务ACK集群,自建K8s集群,三方公共云K8s集群,实现云上云下一致的可观测体验。在成本治理方面,容器服务ACK提供完整的方案,支持以集群,命名空间,节点池,应用多角度的成本洞察。

 

通过注册集群,可以使用ACK集群的成本洞察能力,降低自建K8s集群和三方公共云K8s集群成本。

 

 

通过注册集群,可以使用云上数据备份与恢复能力,备份自建K8s集群和第三方公共云K8s集群中的应用与数据, 并在ACK集群中恢复,实现跨地域的应用与数据容灾。支持无状态应用和有状态应用包含数据的备份和恢复。同时,支持丰富的备份策略和各种存储的实现。

 

另外,备份恢复可以实现应用迁移上云,通过overwrite配置填补多云之间的应用配置差异。

 

 

下面我们看下边缘集群的架构,上半部分是边缘集群ACK Edge的控制面,在阿里云上,复用ACK Pro Kubernetes集群控制面(APIServer/ETCD等),集成开源OpenYurt提供边缘节点自治,网络协同等能力。之后融合了阿里云的AI套件,云上弹性,可观测等能力。

 

下半部分是边缘部分,可以接入管理数据中心或者机房中的服务器,包括阿里边缘云ENS、IDC、跨地域的ECS和分布在工厂、场馆、园区中的服务器。

 

形成了云边协同一体化的架构。您可以在云上创建边缘集群,并将分散的服务器和设备接入云上集群,实现通过标准K8s集群容器化的方式调度使用这些服务器和设备,同时使用阿里云ACK Pro提供的各种扩展能力。

 

如果您在不同位置都自建集群管理这些服务器和设备,那么集群的数量会很多,维护成本很高。目前ACK Edge服务各行各业,包括:在线音视频的直播、云游戏、在线教育、物流等行业。

 

 

ACK Edge重点发力本地数据中心,如果您的数据中心有服务器,但不想自建kubernetes集群管理,节省人力成本。

 

可以使用ACK Edge集群来管理这些服务器,容器化运行您的核心业务。

 

为此ACK Edge构建了一系列的产品能力,云上沿用ACK Pro集群控制面,稳定性好;边缘自治,控制面网络异常不影响边缘数据面业务运行,同时支持紧急运维,控制面网络异常,依然可以修改本地业务pod ;云边混合弹性,业务高峰,可以扩容云上ECS;集成阿里云ACK的可观测能力,统一技术栈;云边流量复用,支持大规模边缘节点接入。

 

友邦保险:借助ACK Edge实现云边一体化管理,大幅度提升业务发布运维效率。与云上已有的监控、告警、日志等能力无缝对接,为业务的稳定运行提供保障。同时借助边缘自治,实现了在网络异常情况下的业务自愈、离线运维等能力。

 

 

随着AI应用的大规模应用,GPU卡出现局部紧张,很难在一个供应商获得足够的GPU卡。在AI应用开发运维的过程中,还会存在GPU利用率低、缺少可视化的界面、缺少监控、数据加载慢的问题。

 

通过边缘集群,可以管理分散的GPU算力,例如一个集群可以同时管理IDC和云上的GPU服务器,应对GPU资源不足的问题。可以在IDC中使用ACK云原生AI套件,提升AI工程效率,优化GPU使用率,加速镜像、模型和数据的加载。

 

有鹿:本地数据IDC中的GPU计算资源接入ACK Edge。借助云上AI套件的能力,大幅度提升GPU资源的利用率,与AI工程效率。同时,利用云上弹性ECS,应对大规模任务部署时本地资源不足的问题。

 

除了AI,ACK Edge可以管理边缘的HPC资源,支持Slurm调度,容器化方式运行HPC任务。

 

 

边缘集群支持underlay网络,提高网络性能30%,支持云上Serverless算力,云上云下的Pod和节点在一个网络平面,集群外部可以直接访问pod,适配大规模数据中心服务器的容器化管理,解锁更多业务场景。

 

 

首先我们看下多集群舰队的架构,多集群舰队集成使用开源Open Cluster Management,统一管理多个K8s集群, 可以是公共云的ACK集群,ACK Edge集群,本地数据中心K8s集群,和第三方公有云集群。

 

多集群舰队对用户提供统一的控制面,提供应用分发,作业调度,多集群Ingress网关,多集群service,全局可观测,和多集群组件管理能力。

 

 

ACK One多集群舰队全托管多集群应用发布系统,支持多集群GitOps与自定义分发规则的多集群应用资源分发,集成成本低,快速构建多集群应用发布平台。可以一键实现批量应用的全球多地域发布,发布效率成倍提升,保证业务快速迭代。支持一体化灰度、验证、回滚流程,保证发布质量。同时,可以快速将单集群应用转换为多集群部署,实现业务高可用。另外,支持多租实现多团队隔离。

 

最后,应用发布是全托管,免运维产品,针对大规模应用发布优化了控制面性能,支持数千应用的同时发布。

 

 

大模型训练、自动驾驶仿真等场景对计算资源的巨大需求量,正在突破单个云region或者IDC机房的服务能力上限。ACK One提供Fleet + Clusters两级调度系统,实现了跨集群任务统一调度。高效利用多地域计算资源,满足用户资源量、成本和性能等多方面优化诉求。

 

 

下面我们来看多集群流量管理,为了保证应用的容灾,我们一般会在不同可用区的2个集群部署相同的应用,并在前端部署负载均衡,传统的负载均衡一般会采用智能DNS的方案或者4层LoadBalancer方案,但DNS方案的问题在于客户端缓存,导致在问题发生时,切换不及时,造成业务损失。4层LoadBalancer无法实现基于7层的路由转发,灵活性差。

 

为了解决这个问题,我们推出多集群网关,提供全局Ingress,实现七层的负载均衡,多集群网关本身也支持跨可用区的高可用。因为是七层的网关,我们可以灵活的定制路由,实现基于权重,http header,自动fallback的路由策略。

 

通过多集群网关,我们可以实现应用同城多可用区多活容灾。

 

同时,舰队支持多集群Service,支持service的跨集群通信,方便实现微服跨集群迁移。

 

 

ACK One多集群舰队,支持多集群全局监控,同个一个监控大盘查看多个集群的状态与应用状态。支持全局FinOps,通过一个Finops大盘查看多个集群的成本情况,简化日常运维工作。

 

 

ACK组件数量多,随着版本的升级,配置的变更,叠加多集群部署,运维的复杂度高。ACK One即将发布多集群组件管理能力,通过组件基线定义多个组件版本,通过批次部署实现集群间灰度发布和异常回滚。运维人员可以通过多集群组件管理一键发布ACK组件,运维效率与质量大幅提升。

 

 

首先,我们来认识下开源Argo Workflow这个项目,它是CNCF的少数毕业项目之一,专为Kubernetes而设计,离线任务编排与运行引擎,适用于数据处理、科学计算、仿真计算、持续集成,是Kubernetes工作流的事实标准。

 

 

开源自建Argo工作流集群比较简单,但如果在生产环境中使用,往往会出现很多问题。

 

稳定性:节点中大量运行pod,会导致资源争抢,OOM,Disk满,导致频繁宕机。大规模工作流 pod运行,复杂工作流的运行,往往导致K8s API Server,Argo controller异常。

 

成本与规模:固定资源池无法成本分摊,大规模工作流无法正常运行。

 

安全与运维:版本迭代,升级新版本引入新问题,需要额外设计登录,鉴权,CVE修复等安全问题。

 

开源自建Argo不支持生产环境大规模工作流运行。

 

 

看下全托管Serverless Argo工作流集群的架构,它托管开源Argo workflow,保证现有开源自建Argo工作流系统可无缝迁移。

 

同时,可以使用工作流集群的API SDK接口,包装工作流集群,构建自己的工作流提交系统,以适应具体的业务场景。我们很多仿真,自动驾驶,科学计算客户就是将工作流集群作为后端引擎使用。支持事件驱动编程模型,支持Git、阿里云OSS、MNS、Function/EventBridge等触发工作流自动运行,自动完成CI、数据处理等离线任务。

 

分布式Argo工作流集群使用Serverless方式运行工作流,无需运维worker节点,利用云上极致算力资源,可实现同时运行数万Pod的大规模工作流。

 

 

对比开源自建,全托管Serverless Argo工作流在易用性、运行效率、成本、稳定性,高性能大规模方面大幅领先,同时,提供7*24的产品售后支持。

 

例如:及时修复稳定性与性能问题,单工作流并行2万子任务Pod,整体4万子任务Pod稳定运行,对比开源提高10倍。以Serverless方式运行子任务pod,利用云上极致的弹性应对业务高峰,同时无需预留维护节点,对比开源成本下降30%。

 

深势科技使用全托管Serverless Argo工作流集群,编排科学计算任务,使用数万核资源运行大规模工作流,系统稳定性大幅提高。

 

 

目前Argo工作流集群在多个行业大量应用,包括:自动驾驶方针、科学计算、基因计算金融分析、数字媒体。

 

 

最后,我们简单总结下今天的分享:

 

分布式云面对的场景多种多样,挑战很多,为此,ACK One提供注册集群能力,可以将非ACK集群接入ACK One,从而实现云上云下集群统一管理,和云上弹性。ACK One提供边缘集群,实现云上集群管理IDC的服务器,支持边缘自治,协同AI。多集群舰队提供多集群GitOps,应用资源分发,运维管理,轻松完成多集群管理。全托管Argo工作流集群,实现工作流的编排,以Serverless方式运行工作流,降低成本,应对持续集成、科学计算、仿真计算、数据处理等场景。

 

大家可以根据具体业务场景选择相应的能力,最终实现简单的跨云协同,让业务管理更加高效。

 

阿里云容器团队诚招【开发&SRE】【产品经理】【PDSA】- 杭州、北京、深圳的岗位均可,欢迎大家帮助推荐。



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

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

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

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
5天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
22 2
|
5天前
|
Kubernetes 监控 负载均衡
深入云原生:Kubernetes 集群部署与管理实践
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其弹性、可扩展性成为企业IT架构的首选。本文将引导你了解如何部署和管理一个Kubernetes集群,包括环境准备、安装步骤和日常维护技巧。我们将通过实际代码示例,探索云原生世界的秘密,并分享如何高效运用这一技术以适应快速变化的业务需求。
23 1
|
15天前
|
Kubernetes 负载均衡 Cloud Native
云原生应用:Kubernetes在容器编排中的实践与挑战
【10月更文挑战第27天】Kubernetes(简称K8s)是云原生应用的核心容器编排平台,提供自动化、扩展和管理容器化应用的能力。本文介绍Kubernetes的基本概念、安装配置、核心组件(如Pod和Deployment)、服务发现与负载均衡、网络配置及安全性挑战,帮助读者理解和实践Kubernetes在容器编排中的应用。
47 4
|
16天前
|
Kubernetes 监控 Cloud Native
云原生应用:Kubernetes在容器编排中的实践与挑战
【10月更文挑战第26天】随着云计算技术的发展,容器化成为现代应用部署的核心趋势。Kubernetes(K8s)作为容器编排领域的佼佼者,以其强大的可扩展性和自动化能力,为开发者提供了高效管理和部署容器化应用的平台。本文将详细介绍Kubernetes的基本概念、核心组件、实践过程及面临的挑战,帮助读者更好地理解和应用这一技术。
48 3
|
23天前
|
Kubernetes 监控 开发者
专家级实践:利用Cloud Toolkit进行微服务治理与容器化部署
【10月更文挑战第19天】在当今的软件开发领域,微服务架构因其高可伸缩性、易于维护和快速迭代的特点而备受青睐。然而,随着微服务数量的增加,管理和服务治理变得越来越复杂。作为阿里巴巴云推出的一款免费且开源的开发者工具,Cloud Toolkit 提供了一系列实用的功能,帮助开发者在微服务治理和容器化部署方面更加高效。本文将从个人的角度出发,探讨如何利用 Cloud Toolkit 来应对这些挑战。
34 2
|
24天前
|
Kubernetes 持续交付 Docker
探索DevOps实践:利用Docker与Kubernetes实现微服务架构的自动化部署
【10月更文挑战第18天】探索DevOps实践:利用Docker与Kubernetes实现微服务架构的自动化部署
72 2
|
27天前
|
人工智能 专有云 Serverless
亚太唯一!阿里云再度入选Gartner®容器管理魔力象限领导者
亚太唯一!阿里云再度入选Gartner®容器管理魔力象限领导者
103 2
|
7天前
|
Kubernetes 负载均衡 调度
Kubernetes集群管理与编排实践
Kubernetes集群管理与编排实践
|
7天前
|
Kubernetes Cloud Native 前端开发
Kubernetes入门指南:从基础到实践
Kubernetes入门指南:从基础到实践
17 0
|
30天前
|
弹性计算 Kubernetes 网络协议
阿里云弹性网络接口技术的容器网络基础教程
阿里云弹性网络接口技术的容器网络基础教程
阿里云弹性网络接口技术的容器网络基础教程

热门文章

最新文章