本文介绍如何在容器服务管理控制台快速创建阿里云ACK Serverless集群、使用镜像创建应用和查看容器。
前提条件
已登录弹性容器实例控制台开通ECI服务。
步骤一:创建ACK Serverless集群
本文仅介绍创建ACK Serverless集群涉及的关键参数的设置和相关内容,在实际工作场景中,请您根据具体需求设置参数和安装相应组件。更多信息,请参见创建集群。
- 登录容器服务管理控制台。
在控制台左侧导航栏,单击集群。
在集群列表页面,单击页面右上角的创建集群。
单击ACK Serverless集群页签,然后完成集群配置。
部分配置说明如下:
配置项
描述
示例
集群名称
填写集群的名称。
说明集群名称应包含1~63个字符,可包含数字、汉字、英文字符或连字符(-)。
ask-hangzhou
集群规格
选择集群规格,支持Pro 版和基础版。企业生产和测试环境中推荐使用ACK集群Pro版。ACK集群基础版仅供个人学习与测试使用。
关于Pro版的更多信息,请参见集群概述。
标准版
地域
选择集群所在的地域。
华东1(杭州)
专有网络
设置集群的网络。Kubernetes集群仅支持专有网络。支持自动创建和使用已有的VPC。
自动创建:集群会自动新建一个VPC,并在VPC中自动创建NAT网关以及配置SNAT规则。
使用已有:您可以在已有VPC列表中选择所需的VPC和交换机。如需访问公网,例如下载容器镜像,要配置NAT网关,建议将容器镜像上传到集群所在区域的阿里云镜像服务,并通过内网VPC地址拉取镜像。
详情请参见创建和管理专有网络。
使用已有
配置SNAT
设置是否为专有网络创建NAT网关并配置SNAT规则。
仅当专有网络选择为自动创建时,需要设置该选项。
说明若您选择自动创建VPC,可选择是否自动配置SNAT。若选择不自动配置SNAT,您可自行配置NAT网关实现VPC安全访问公网环境,并且手动配置SNAT转发策略,否则VPC内实例将不能正常访问公网。
详情请参见创建和管理公网NAT网关实例。
为专有网络配置SNAT
Service CIDR
设置服务网段。需要指定服务网段,网段不能与VPC及VPC内已有ACK集群使用的网段重复,创建成功后不能修改,而且服务地址段也不能和容器地址段重复。有关集群网络地址段规划的信息,请参见Kubernetes集群网络规划。
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
安全组
自动创建企业级安全组
集群本地域名
自定义集群本地域名,默认域名为cluster.local。
cluster.local
服务协议
创建集群前,需阅读并选中《无服务器Kubernetes服务协议》。
选中
集群配置完成后,单击页面右下方下一步:组件配置,然后完成组件配置。
配置项
描述
示例
服务发现
设置是否启用服务发现。默认不开启。关于服务发现的更多信息,请参见服务发现DNS。
若选择PrivateZone,则默认开启PrivateZone服务。
若选择CoreDNS,则默认开启CoreDNS服务。
不开启
Ingress
设置是否安装Ingress组件。默认不安装。
若选择Nginx Ingress,则默认安装Nginx Ingress组件。关于Nginx Ingress的更多使用说明,请参见Ingress高级用法。
若选择ALB Ingress,则默认安装ALB Ingress Controller组件。关于如何在ACK Serverless集群中通过ALB Ingress访问服务,请参见通过ALB Ingress访问服务。
不安装
监控服务
设置是否启用监控组件。默认不选中安装metrics-server集群基础监控组件。
推荐您选中安装metrics-server集群基础监控组件,启用监控服务。
选中
日志服务
设置是否启用日志服务,您可使用已有Project或新建一个Project。默认选中使用日志服务。
创建应用时,您可通过简单配置,快速使用日志服务,详情参见通过Pod环境变量采集应用日志。
创建新Project
Knative
设置是否启用Knative。默认不选中开启Knative。关于Knative的更多信息,请参见Knative概述。
选中
组件配置完成后,单击页面右下方下一步:确认配置。
在确认配置配置页签,选中服务协议并单击创建集群。
后续步骤
集群创建成功后,您可以在容器服务管理控制台的Kubernetes集群列表页面查看所创建的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。
进入容器组的详情页,您可查看该容器组的详情信息。