当前位置:首页 > Web开发 > 正文

我们希望用户能够关注在 pod/service/ingress/job 等应用编排语义上

2024-03-31 Web开发

导读:Serverless Kubernetes 是阿里云容器处事团队对未来 Kubernetes 演进标的目的的一种探索,通过对 Kubernetes 做减法,,降低运维打点承担,简化集群打点,让 Kubernetes 从庞大到简单。

配景

Kubernetes 作为通用的容器编排系统,承载了广泛的应用和场景,包孕 CI/CD,数据计算,在线应用,AI 等,然而由于其通用性和庞大性,打点一个 Kubernetes 集群对付很多用户而言还是充塞挑战的,主要表此刻:

学习本钱高;

集群运维打点本钱高,包孕节点打点、容量规划,以及各类节点异常问题的定位;

计算本钱在很多场景中没有到达最优,好比对付一个按时运行 Jobs 的集群,恒久持有资源池对付用户来说是浪费的行为,资源操作率不高。

对 Kubernetes 集群做减法 无节点打点

我们相信未来用户会越发存眷应用的开发,而不是根本设施的维护。表此刻 Kubernetes 集群中,我们但愿用户能够存眷在 pod/service/ingress/job 等应用编排语义上,对底层 node 则可以减少存眷。

无需打点节点也可以显著降低集群的运维打点本钱,经统计 Kubernetes 常见的异常问题中大大都与节点相关,好比 Node NotReady 问题,也无需担心 Node 的安适问题,以及根本系统软件的升级和维护。

在 ASK 集群中,我们使用虚拟节点 virtual-kubelet 取代 ecs 节点,虚拟节点的容量可以认为是“无限大”,用户不需要为集群的容量担心,无需预先做容量规划。

无 Master 打点

和 ACK 托管版一样,ASK 的 Master(apiserver, ccm, kcm 等)资源被容器处事平台托管,用户无需打点这些核心组件的升级和运维,也不用支付本钱。

极简的 K8s 根本运行环境

除了无需打点节点和 Master 外,我们还对 Kubernetes 集群打点做了大量简化,包孕默认托管很多 addon,用户无需再打点一些根本的 addon,也不需要为这些 addon 付费。依赖阿里云原生的网络和存储等能力,以及奇特的托管架构设计,我们供给了极度简化但成果完备的 Kubernetes 根本运行环境。

成果 ACK 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 资源池更节省经济本钱。

ECI:快速交付容器资源的弹性计算处事

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/32015.html