本文为您介绍阿里云Serverless Kubernetes(ASK)集群支持的功能。您可以通过了解这些功能来更有效地使用ASK集群。

虚拟节点

ASK集群中基于虚拟节点创建Pod。虚拟节点实现了Kubernetes与弹性容器实例ECI的无缝连接,让Kubernetes集群获得极大的弹性能力,而不必关心底层计算资源容量。ask

在集群中用户可以查看虚拟节点信息,但无需对虚拟节点进行任何操作,虚拟节点也不占用任何计算资源。有关虚拟节点详情,请参见部署虚拟节点Chart

Pod安全隔离

ASK集群中的Pod基于阿里云弹性容器实例ECI运行在安全隔离的容器运行环境中。每个容器实例底层通过轻量级虚拟化安全沙箱技术完全强隔离,容器实例间互不影响。

ECI的容器实例底层运行在Alibaba Cloud Linux2操作系统之上,ASK集群作为Serverless容器服务,您无法访问ECI底层OS运行环境。

Pod配置

Pod基于弹性容器实例ECI创建,其支持原生的Kubernetes Pod功能,包括启动多个容器、设置环境变量、设置RestartPolicy、设置健康检查命令和挂载volumes、preStop等。同时支持执行命令kubectl logs访问容器日志和执行kubectl exec进入容器。

ASK使用了很多Annotation对Pod进行功能扩展,请参见ECI实例概述

应用负载管理

  • 支持Deployment、StatefulSet、Job/CronJob、Pod、CRD等原生Kubernetes负载类型。
  • 不支持DaemonSet:Serverless集群中不支持节点相关的功能。

弹性伸缩

ASK集群中没有真实节点,所以无需考虑节点的容量规划,也无需考虑基于cluster-autoscaler的节点扩容,您只需要关注应用的按需扩容。建议您配置HPA或者CronHPA策略进行Pod的灵活按需扩容。

网络管理

集群中的ECI Pod默认使用Host网络模式,占用交换机VSwitch的一个弹性网卡ENI资源,与VPC内的ECS、RDS互联互通。

  • Service
    • 支持创建LoadBalancer类型Service。
    • 不支持NodePort类型Service:Serverless集群中不支持节点相关的功能。
  • Ingress
    • ALB Ingress:无需部署controller直接使用基于SLB七层转发提供的Ingress能力,请参见ingress-alb示例。
    • Nginx Ingress:部署nginx-ingress-controller后可以创建nginx ingress,请参见ingress-nginx示例。
  • 服务发现

    如果您的集群内部应用需要Service的服务发现功能,请在创建集群时开启Privatezone。

  • 弹性公网IP

    支持给ECI Pod挂载EIP,可自动创建或者绑定到已有的EIP实例。

存储管理

Pod支持挂载阿里云块存储和文件存储。

日志管理

在ASK集群中无需部署logtail daemonset即可收集Pod的stdout和文件输出日志,请参见通过阿里云日志服务采集日志

配置项及密钥管理

支持Secret和Configmap,以及通过volume挂载Secret和Configmap。

应用目录Chart管理

支持在应用目录部署Chart,连接Kubernetes生态应用。