Kubernetes做为通用的容器编排系统,承载了普遍的应用和场景,包括CI/CD,数据计算,在线应用,AI等,然而因为其通用性和复杂性,管理一个kubernetes集群对于不少用户而言仍是充满挑战的,主要体如今:node
Serverless Kubernetes是阿里云容器服务团队对将来kubernetes演进方向的一种探索,经过对kubernetes作减法,下降运维管理负担,简化集群管理,让kubernetes从复杂到简单。nginx
咱们相信将来用户会更加关注应用的开发,而不是基础设施的维护。体如今kubernetes集群中,咱们但愿用户可以关注在pod/service/ingress/job等应用编排语义上,对底层node则能够减小关注。git
无需管理节点也能够显著下降集群的运维管理成本,经统计kubernetes常见的异常问题中大多数与节点相关,好比Node NotReady问题,也无需担心Node的安全问题,以及基础系统软件的升级和维护。docker
在ASK集群中,咱们使用虚拟节点virtual-kubelet代替ecs节点,虚拟节点的容量能够认为是“无限大”,用户不须要为集群的容量担心,无需预先作容量规划。 api
和ACK托管版同样,ASK的Master(apiserver, ccm, kcm等)资源被容器服务平台托管,用户无需管理这些核心组件的升级和运维,也不用付出成本。安全
除了无需管理节点和Master外,咱们还对kubernetes集群管理作了大量简化,包括默认托管不少addon,用户无需再管理一些基础的addon,也不须要为这些addon付费。依赖阿里云原生的网络和存储等能力,以及独特的托管架构设计,咱们提供了极度简化但功能完备的kubernetes基础运行环境。网络
功能架构
ACKless
ASK运维
存储
须要部署aliyun-disk-controller/flexvolume
无需部署(正在支持中)
CNI网络
须要部署terway/flannel daemonset
无需部署,基于vpc网络通讯
coredns服务发现
须要部署2个coredns副本
无需部署,基于privatezone访问
kube-proxy
须要部署kube-proxy daemonset
无需部署,基于privatezone访问
Ingress
须要部署nginx-ingress-controller
无需部署,基于SLB七层转发
免密拉取ACR镜像
须要部署acr-credential-helper
无需部署,默认支持
sls日志收集
须要部署logtail daemonset
无需部署,默认支持
metrics统计
须要部署metrics-server
无需部署,开箱即用
挂载eip
须要部署terway
无需部署,使用annotaion指定
云盘随pod建立挂载
依赖aliyun-disk-controller
无需部署,默认支持
弹性伸缩
须要部署cluster-autoscaler
无需部署
GPU插件
须要部署Nivida-docker
无需部署,开箱即用
综上能够看到,ACK集群至少须要2台ecs机器以运行这些基本的Addon,而ASK集群把这些基础Addon化为无形,能够达到0成本建立一个开箱可用的kubernetes集群。
由于无需管理节点和容量规划,所以当集群须要扩容时也就不须要考虑节点层面的扩容,只须要关注pod的扩容,
这对于扩容的速度和效率都是极大的提高,目前一些客户指定使用ASK/ECI的方式来快速应对业务流量高峰。
当前ASK/ECI支持30s彻底启动500个pod(至Running状态),单个pod启动能够达到10s之内。
除去ASK集群自己的低成本建立外,pod的按需使用也让不少场景下资源利用率达到最优。对于不少Jobs或者数据计算场景而言,用户并不须要长期维护一个固定的资源池,这时ASK/ECI能够很好的支持这些诉求。
经验证,当pod一天中运行时间少于16个小时,则ASK/ECI的方式相比保有ecs资源池更节省经济成本。
谈起ASK,必定会谈到ASK的资源底座ECI。ECI是阿里云基于ECS IaaS资源池提供的稳定、高效、高弹性容器实例服务。ECI让容器成为了公有云的第一等公民,用户无需购买和管理ecs就能够直接部署容器应用,这种简化的容器实例产品形态和ASK造成了一个完美的组合。
用户能够直接使用ECI Open API建立容器实例资源,但在容器场景中用户广泛须要一个编排系统,来负责容器的调度、高可用编排等能力,而ASK正是这样的kubernetes编排层。
对于ASK而言,ECI让ASK容器服务免去了搭建后台计算资源池的必要,更不用为底层计算资源池的容量而担心。基于ECI就意味着基于整个阿里云IaaS规模化资源池,自然拥有了库存和弹性优点(好比能够经过Annotation的方式指定底层eci对应的ecs规格,大部分ecs规格均可以在ASK中使用,知足多种计算场景的需求)。另外ECI和ECS复用资源池意味着咱们能够最大化释放规模化红利,给用户提供更低成本的计算服务。
ASK对kubernetes容器生态提供了完善的支持,目前已有大量客户使用ASK来支撑以下各类场景。
本文为阿里云内容,未经容许不得转载。