深度解读:阿里云全球首发的容器计算服务 ACS 诞生背景、核心技术与应用场景

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 深度解读:阿里云全球首发的容器计算服务 ACS 诞生背景、核心技术与应用场景

作者:懿川


容器计算服务 ACS 自从在云栖大会发布并开启邀测后,引起了开发者和企业客户的广泛关注,并收到了大量的产品试用申请。本文整理自容器计算服务 ACS 首席架构师懿川的分享,包含了产品的诞生背景、核心特性、关键技术和典型应用场景,帮助大家更加全面、更加立体的了解 ACS,旨在还原 ACS 帮助客户更好的去利用云所带来的技术红利的产品设计初衷。


关联阅读:全球首款容器计算产品重磅发布,激活上云用云新范式


产品诞生背景


容器化上云已成为新的常态,Kubernetes 随之成为用云的新界面。


根据 Dynatrace 今年发布的调研报告,托管在云中的 Kubernetes 集群数量正在以 127% 的年增速在增长,速度大约是本地托管集群的 5 倍。不久的将来,部署在云上的 K8s 集群数量将超过本地部署。同时,云上 73% 的 K8s 集群使用的是云厂商提供的托管发行版本。



此外,随着越来越多的应用架构微服务化,服务治理的复杂度在不断上升,当微服务遇到 K8s,带来了更多的复杂度。例如,K8s 配置复杂,计算资源机型多、代际多,集群和节点组件管理复杂,业务高峰实现按需弹性难度大等。


因此,为了降低 K8s 的使用和运维复杂度,解决资源和容器割裂的问题,我们设计了容器计算服务 ACS(Alibaba Cloud Container Compute Service,以下简称 ACS)。ACS 以 K8s 为使用界面,提供符合容器规范的算力资源,采用 Serverless 形态的算力交付模式,客户无需关注底层节点和集群的运维管理。


ACS 依托于阿里云神龙架构,实现了容器和资源的一体化,提供按需弹性和资源预留两种资源使用方式,支持秒级按量付费,提供通用型、任务型和独享型实例,适配不同类型的业务负载,算力同时支持客户基于容器自建的应用负载和云产品负载。我们希望借助这个新的容器产品,帮助客户更好的利用云所带来的技术红利。



此外,ACS 是基于 ECS 的弹性资源池来提供资源供给,并基于 K8s API,无缝集成了阿里云的产品体系,通过提供一个多负载、差异化 SLO 增强的大规模调度系统,来保证核心的调度能力,以及提供了多租安全隔离能力、管控侧传输全链路 TLS 加密,保障安全合规。


ACS 的核心特性


容器计算服务 ACS 具备 4 大核心特性,首先我们先来看一段操作视频【本视频请至微信公众号:阿里云云原生 观看】,直观的了解产品的核心能力。


  • 极简易用,快速上手

ACS 实现了容器和资源的一体化,客户无需关注底层的节点和集群。产品设计极简,应用配置更加简单,易用性提升了大约 50%,降低了客户在容器和 K8s 上的使用门槛。


  • 按需弹性,按量付费

ACS 业内首创超灵活 Pod 配置模式,提供 1:1~1:8 的资源配比,支持秒级弹性,以从容应对流量波动,支持秒级计费,提供按量付费、资源预留和节省计划 3 种计费模式,实现按需弹性。

  • 场景丰富,灵活调配

ACS 和阿里云的其他产品做了深度集成,支持开源生态和自研产品无缝迁移上云。


  • 自由组合,高性价比

ACS 专注于 Pod 定义,屏蔽机型代际和差异,同时支持通用型、任务型和标准型3种实例类型,让计算资源更普适。


接下来,我将围绕以上 4 个核心特性,展开描述。


极简易用,快速上手

ACS 简化了 ClusterLess 和 NodeLess 两种形态,客户无须去关注 K8s 集群的运维和管理,也无须去关心节点的各种信息和运维。不同类型用户可以选用自己更熟悉的方式来使用 ACS。



  • 面向新手用户:通过 ACS 控制台,进行简单的白屏操作,就可以实现应用部署。
  • 面向开发者:ACS 支持 Yaml 方式进行实例等配置,然后以 K8s API 快速部署应用。
  • 面向企业客户:ACS 支持 K8s Yaml 和 OpenAPI 来适配自己的 CI/CD 系统。


按需弹性,按量付费

ACS 支持超灵活的 Pod 资源规格配置,0.25c/0.25GB 起步,提供了 1:1~1:8 的 CPU 与内存配比选择,帮助客户更灵活的匹配业务需求,并支持秒级弹性和秒级计费,从容应对流量峰值波动。



企业通常会通过资源预留,来保障算力资源的确定性。适当的资源预留,既可以保障业务长期的稳定运行,也可以避免过多的资源预留导致的浪费。所以,客户基于 ACS,设定恰当的资源预留水位,在资源预留水位之外,遇到业务流量高峰时,通过秒级弹性能力,应对业务的快速扩容。在这种使用方式下,业务资源占用可以尽量贴近流量曲线,减少资源浪费。


此外,ACS 支持节省计划,来提供更好的产品折扣权益。


场景丰富,调配灵活

ACS 支持用户自研和开源的应用,例如微服务、Web 应用、Spark 应用等,同时和阿里云的云产品做了深度的集成,包括人工智能平台 PAI 等。



ACS 向客户提供了一个算力集群,在这个算力集群内,同时支持上述的几种负载运行在大集群内,并在业内首创算力调配功能,支持客户将算力资源在自建负载之间、云产品负载之间、自建负载和云产品负载之间,灵活调配,实现资源共享,提升闲置资源利用率。


ACS 支持开源生态和自建产品无缝迁移上云,云原生调度系统 Koordinator 兼容 K8s 生态,开源项目可以无缝迁移到 ACS,用户自研产品则可以通过 K8s Yaml 快速迁移到 ACS,同时支持自建 K8s 集群低成本迁移上云。


自由组合,高性价比

ACS 提供以下 3 种实例类型:


  • 通用型实例:适合绝大部分容器化的工作负载,例如微服务、Web 应用,网络和视频应等。
  • 任务型实例:适合成本敏感,且有一定容错能力的工作负载,例如大数据计算、音视频转码等。
  • 独享型实例:适合延迟极度敏感的工作负载,例如高性能网络服务器、网关系统、中间件系统等。



在这三种类型中,ACS 都实现了屏蔽机型和代际的功能。这个产品能力可以帮助客户在面对多种不同场景和负载,需要多种类型互相做组合和应用时,自动实现最优的性价比,可节省多达 20% 的资源成本。


ACS 的关键技术


ACS 无缝集成阿里云的产品体系,包括应用实时监控服务 ARMS、日志服务 SLS、负载均衡 SLB、弹性公网 IP,并支持 EBS、NAS 等存储服务,和 RAM、KMS 等访问控制服务,以及支持 K8s 生态和扩展,支持 Extension Webhook、Controller 和 Operator。


ACS 采用了超大规模的多负载差异化 SLO 增强的调度系统,该调度器来来源于阿里巴巴双十一的大规模实践经验,此外,我们也针对微服务、Java应用、AI 大数据等做了深优化。这个调度系统提供了开源版本,即 Koordinator,因此支持社区生态无缝对接到 ACS 产品上,实现各类差异化硬件的兼容,包括 GPU、NPU 等。此外,该调度系统具备以下 3 大优势:


  • 标准化:基于社区标准 scheduleframework 构建,全面兼容 kubernetes 调度生态。
  • 高效率:具备丰富的资源调优能力,在拓扑感知、负载感知、QoS 感知等方面深度优化,实现 3w 次/秒调度。
  • 大规模:在外部客户及内部业务场景中得到大规模使用,支持超大规模的集群(单集群超百万核)。


K8s 是一个单租的系统,自建 K8s 面临多租隔离安全的设计需求,包括控制面上 K8s 的 Master,全套管控链路的多租改造,以及在数据面上的安全隔离需求。


依托于阿里云的安全容器技术,ACS 可有效避免多个不同租户的负载运行在同一个物理节点上时所带来的干扰,以及互相之间安全可见的问题。存储上,ACS 采用了阿里云高性能块存储 EBS,满足容器在存储上的隔离和性能多租需求。网络上,ACS 对接阿里云网络服务VPC,提供高性能的容器网络。


接下来看一下 3 个典型的场景。


典型应用场景


通用型、任务型实例自由组合使用



采用 ACS 通用型实例支持 Web应用、CICD 工作流任,采用 ACS 任务型实例支持大数据 Spark 任务,还可以根据不同工作负载的应用特征,组合使用通用型实例和任务型实例,实现性能更稳定、价格更优的目的。


独享型实例支撑延时敏感型业务



客户通常会将互联网在线应用使用到的资源,例如数据、静态图片等缓存到 Redis 中,以提高应用的读写性能和加载速度,此时,基于 Kubernetes Statefulset 和 ACS 独享型实例来搭建 Redis 集群,实现稳定无干扰,并通过秒级启动、秒级弹性,以及细粒度的灵活配置实例规格,提升资源利用率。


云产品复用闲置的预留资源



假设客户的业务负载在白天需要 1100Core,夜间需要 300Core,总共申请预留资源 1000Core,MaxCompute 峰值 800Core。因此,白天在线峰值时,ACS 使用预留资源 1000Core,再增加 100Core 的弹性资源,夜间资源预留存在 700Core 的闲置,则可以调度给 MaxCompute 使用,从而节省了夜间 700Core 的闲置浪费。


容器计算服务 ACS 邀测已经开启,欢迎大家参与申请试用,通过亲身体会,切身感受 ACS 如何帮助客户更好的利用云所带来的技术红利。


相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
6天前
|
弹性计算 运维 持续交付
探索Docker容器化技术及其在生产环境中的应用
探索Docker容器化技术及其在生产环境中的应用
35 5
|
1天前
|
运维 Ubuntu Linux
深入理解并实践Docker容器化技术
深入理解并实践Docker容器化技术
21 6
|
9天前
|
Kubernetes Cloud Native Docker
探索云原生技术之旅:从容器到微服务
【8月更文挑战第42天】本文将带你踏上一场云原生技术的奇妙之旅,我们将从容器技术的基础出发,逐步深入到微服务架构的世界。你将了解到如何利用Docker和Kubernetes简化应用部署与管理,以及如何通过微服务设计原则构建可扩展、灵活的系统。准备好一起探索这些令人兴奋的技术了吗?让我们开始吧!
47 14
|
1天前
|
运维 Kubernetes Cloud Native
探索云原生技术:容器化与微服务架构的融合之道
【9月更文挑战第18天】在数字化转型的浪潮中,云原生技术以其灵活性、可扩展性成为企业创新的强大引擎。本文将深入探讨云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同推动现代应用的开发与部署。通过实际代码示例,我们将揭示这些技术如何简化运维,加速产品上市时间,并提高系统的可靠性和弹性。无论你是开发人员、架构师还是IT决策者,这篇文章都将为你提供宝贵的洞见和实践指导。
11 2
|
1天前
|
Kubernetes Cloud Native Java
云原生技术之旅:从容器化到微服务架构
【9月更文挑战第18天】云原生技术正改变着我们构建、部署和管理应用的方式。本文将通过一次虚拟的旅行,带领读者探索云原生的核心概念,如容器化、微服务、持续集成与交付等。我们将以一个实际案例为线索,逐步展开对Kubernetes集群管理、Docker容器创建和Spring Boot微服务开发的讨论。就像在旅途中不断发现新风景一样,您将了解到这些技术如何协同工作,提升开发效率和应用性能。准备好了吗?让我们启航!
|
5天前
|
Kubernetes Cloud Native Docker
云原生技术之旅:从容器到微服务
【9月更文挑战第14天】随着云计算的蓬勃发展,云原生技术已成为现代软件开发的重要组成部分。本文将深入探讨云原生的核心概念,包括容器化、微服务架构以及它们如何共同推动企业快速创新。通过实际案例,我们将展示如何利用Kubernetes和Docker等工具构建和管理高效的云原生应用。无论你是初学者还是经验丰富的开发者,这篇文章都将为你提供宝贵的知识和技能,帮助你在云原生时代乘风破浪。
20 5
|
7天前
|
Cloud Native 持续交付 Docker
探索Docker容器化技术及其在软件开发中的应用
探索Docker容器化技术及其在软件开发中的应用
17 7
|
7天前
|
存储 虚拟化 开发者
深入理解Docker容器化技术
深入理解Docker容器化技术
34 6
|
6天前
|
Cloud Native 持续交付 Docker
探索容器化技术Docker的奥秘
探索容器化技术Docker的奥秘
23 3
|
7天前
|
运维 Cloud Native Devops
云原生架构的崛起与实践云原生架构是一种通过容器化、微服务和DevOps等技术手段,帮助应用系统实现敏捷部署、弹性扩展和高效运维的技术理念。本文将探讨云原生的概念、核心技术以及其在企业中的应用实践,揭示云原生如何成为现代软件开发和运营的主流方式。##
云原生架构是现代IT领域的一场革命,它依托于容器化、微服务和DevOps等核心技术,旨在解决传统架构在应对复杂业务需求时的不足。通过采用云原生方法,企业可以实现敏捷部署、弹性扩展和高效运维,从而大幅提升开发效率和系统可靠性。本文详细阐述了云原生的核心概念、主要技术和实际应用案例,并探讨了企业在实施云原生过程中的挑战与解决方案。无论是正在转型的传统企业,还是寻求创新的互联网企业,云原生都提供了一条实现高效能、高灵活性和高可靠性的技术路径。 ##
18 3

相关产品

  • 容器计算服务