本文介绍如何在容器服务管理控制台快速创建阿里云ACK Serverless集群、使用镜像创建应用和查看容器。
前提条件
已登录弹性容器实例控制台开通ECI服务。
步骤一:创建ACK Serverless集群
本文仅介绍创建ACK Serverless集群涉及的关键参数的设置和相关内容,在实际工作场景中,请您根据具体需求设置参数和安装相应组件。更多信息,请参见创建集群。
登录容器服务管理控制台,在左侧导航栏选择集群列表。
在集群列表页面,单击创建集群。
单击ACK Serverless集群页签,然后完成集群配置。
部分配置说明如下:
配置项
描述
示例
集群名称
自定义集群的名称。
ask-hangzhou
集群规格
选择集群规格,支持Pro 版和基础版。企业生产和测试环境中推荐使用Pro版。基础版仅供个人学习与测试使用。
关于Pro版的更多信息,请参见集群概述。
标准版
地域
集群所在的开服地域。所选地域与用户和资源部署地域的距离越近,网络时延越低,访问速度越快。
华东1(杭州)
专有网络
配置集群的专有网络VPC。支持指定可用区自动新建一个VPC,也可以在已有VPC列表中选择已创建的VPC。
使用已有
为专有网络配置 SNAT
当专有网络选择共享VPC时,请勿勾选。
勾选后,ACK将对您新建或选择的VPC进行配置:
如果VPC未拥有NAT网关,则自动创建NAT网关并配置交换机粒度的SNAT规则。(为集群使用的所有交换机配置)
如果VPC已有NAT网关:
不存在VPC粒度的SNAT规则:自动配置交换机粒度的SNAT规则。(为集群使用的所有交换机配置)
存在VPC粒度的SNAT规则:不执行任何操作。
若不勾选,您可在创建集群后自行配置NAT网关并手动配置SNAT,以确保VPC内实例可以正常访问公网。更多信息,请参见创建和管理公网NAT网关实例。
为专有网络配置SNAT
交换机
在列表中根据可用区选择已有vSwitch交换机,或单击创建虚拟交换机创建新的vSwitch。集群控制面与默认节点池将使用此处指定的vSwitch。推荐选择多个不同可用区的vSwitch,更好地保障集群高可用。
vsw-uf6x420ebylcwqclw****,
vsw-uf6qbh0tfvfuco0q7****
安全组
自动创建企业级安全组
服务网段
服务网段(Service CIDR) 是集群中为Service分配IP地址的专用网络地址范围。此网段不能与VPC及VPC内已有集群使用的网段重复,且服务地址段也不能和容器地址段重复。有关集群网络地址段规划的信息,请参见ACK托管集群网络规划。
172.21.0.0/20
API server 访问
ACK Serverless集群默认为API Server创建一个内网SLB实例,您可修改SLB实例规格。更多信息,请参见实例规格。
重要删除默认创建的SLB实例将会导致无法访问API Server。
您可设置是否开放使用EIP暴露API server。API Server提供了各类资源对象(Pod,Service等)的增删改查及Watch等HTTP Rest接口。
如果选择开放,ACK Serverless集群会创建一个EIP,并挂载到SLB上。此时,Kubernetes API服务(即API Server)会通过EIP的6443端口暴露出来,您可以在外网通过kubeconfig连接并操作集群。
如果选择不开放,则不会创建EIP,您只能在VPC内部用kubeconfig连接并操作集群。
更多信息,请参见实现从公网访问API Server。
使用EIP暴露API Server
集群配置完成后,单击页面右下方下一步:组件配置,然后完成组件配置。
配置项
描述
示例
服务发现
设置集群的服务发现,支持不开启、PrivateZone和CoreDNS三种方式。
PrivateZone:基于阿里云专有网络VPC环境的私有DNS服务。该服务允许您在自定义的一个或多个VPC中将私有域名映射到IP地址。
CoreDNS:一个灵活可扩展的DNS服务器,也是Kubernetes标准的服务发现组件。
不开启
Ingress
设置是否安装Ingress组件,支持不安装、Nginx Ingress、ALB Ingress和MSE Ingress方式。
Nginx Ingress:基于社区版的ingress-nginx进行了优化,为您的Kubernetes集群提供灵活可靠的路由服务(Ingress)。
ALB Ingress:基于阿里云应用型负载均衡 ALB(Application Load Balancer)之上提供更为强大的Ingress流量管理方式,兼容Nginx Ingress,具备处理复杂业务路由和证书自动发现的能力,支持HTTP、HTTPS和QUIC协议,完全满足在云原生应用场景下对超强弹性和大规模七层流量处理能力的需求。
MSE Ingress:在Kubernetes集群中,Ingress对集群服务(Service)中外部可访问的API对象进行管理,提供七层负载均衡能力。为了更好地支持云原生应用场景,MSE云原生网关与容器服务进行了深度集成和优化,推出了MSE Ingress,提供更强大的集群入口流量管理能力。
不安装
容器监控
您可以使用阿里云Prometheus查看集群预先配置的监控大盘和监控性能指标。更多信息,请参见阿里云Prometheus监控。
您可以同时勾选安装 metrics-server 集群基础监控组件,metrics-server组件是基于社区开源监控组件进行改造和增强的离线监控数据组件,提供查看集群离线监控数据功能。
选中
日志服务
设置是否使用日志服务,您可使用已有Project或新建一个Project。
创建新Project
Knative
设置是否开启 Knative。Knative是一款基于Kubernetes的Serverless框架,支持基于请求的自动弹性、在没有流量时将实例数量自动缩容至零、版本管理与灰度发布等能力。
选中
组件配置完成后,单击页面右下方下一步:确认配置。
确认配置信息和使用须知,仔细阅读服务协议,然后单击创建集群。
集群创建成功后,您可以在集群列表页面查看所创建的ACK Serverless集群。 找到刚创建的集群,单击操作列中的详情,然后单击基本信息和连接信息页签,可查看集群的基本信息和连接信息。
步骤二:使用镜像创建应用
本文仅介绍使用镜像创建应用涉及的关键参数设置,更多信息,请参见使用镜像创建无状态应用。
配置应用基本信息
在集群管理页左侧导航栏,选择 。
在无状态页面,单击使用镜像创建。
在应用基本信息配置向导页面,设置应用的基本信息。
配置项
描述
示例
应用名称
设置应用的名称。
serverless-app-deployment
类型
定义资源对象的类型,可选择无状态(Deployment)、有状态(StatefulSet)等。
无状态(Deployment)
单击下一步。
配置容器
在容器配置配置向导页面的基本配置区域,完成容器的基本配置。
配置项
描述
示例
镜像名称
您可以单击选择镜像,在弹出的对话框中选择所需的镜像并单击确定。
您还可以填写私有镜像。填写的格式为
domainname/namespace/imagename:tag
。使用个人版实例镜像,所属地域为华东1(杭州)
镜像Tag
您可以单击选择镜像Tag选择镜像的版本。若不指定,默认为最新版。
默认不指定镜像Tag
在端口设置区域,单击新增设置容器的端口。
配置项
描述
示例
名称
设置容器端口名称。
nginx
容器端口
设置暴露的容器访问端口或端口名,端口号必须介于1~65535。
80
协议
支持TCP和UDP。
TCP
单击下一步。
完成高级配置
在高级配置向导页面的访问设置区域,设置暴露后端Pod的方式。
配置服务(Service):在服务(Service)右侧,单击创建设置创建服务配置项。
配置项
描述
示例
名称
输入服务的名称。
serverless-app-svc
类型
选择服务类型,即服务访问的方式。
依次选择负载均衡 -> 公网访问 -> 新建SLB -> 单击修改选择所需的SLB规格。
示例:使用默认规格,简约型I(slb.s1.small)。
端口映射
添加服务端口和容器端口。容器端口需要与后端的Pod中暴露的容器端口一致。
服务端口和容器端口分别配置为8080和80。
在访问设置区域,您可以看到创建完毕的服务,您可单击变更和删除进行二次配置。
单击创建。
访问Nginx应用
在创建完成页签中单击查看应用详情。您可以看到新建的serverless-app-deployment出现在无状态列表下。
访问Nginx应用。
在集群管理页左侧导航栏中,选择 ,可以看到新建的服务serverless-app-svc出现在服务列表下。
单击新建服务的外部端点链接,即可在浏览器中访问外部端点,本示例为Nginx。
说明关于如何通过创建Ingress路由访问应用,请参见通过ALB Ingress访问服务。
步骤三:查看容器
在集群管理页左侧导航栏,选择 。
选择目标容器组,单击右侧操作列下的详情。
说明您可对容器组进行更新和删除操作。对于通过模板部署创建的容器组,建议您通过模板进行管理,不要直接删除或修改Pod。
进入容器组的详情页,您可查看该容器组的详情信息。