ACK的Kubernetes Pro版集群相比原托管版集群进一步提升了集群的可靠性、安全性和调度性能,并且支持赔付标准的SLA,适合生产环境下有着大规模业务,对稳定性和安全性有高要求的企业客户。本文介绍如何通过容器服务控制台创建Kubernetes Pro版集群。
前提条件
您在使用集群过程中,请注意以下限制:
- 用户账户需有100元的余额并通过实名认证,否则无法创建按量付费的ECS实例和负载均衡。
- 随集群一同创建的负载均衡实例只支持按量付费的方式。
- Kubernetes集群仅支持专有网络VPC。
- 每个账号默认可以创建的云资源有一定的配额,如果超过配额创建集群会失败。请在创建集群前确认您的配额。
- 每个账户可创建的集群数和节点数的详细信息,请参见容器服务Kubernetes版配额限制。
注意 每个账户初始默认状况下VPC路由条目不超过48条,意味着您的Kubernetes集群的网络模式是Flannel时,集群的节点数最大不能超过48个(网络模式是Terway则不受该影响)。如集群需要更多节点数,您需要先对目标VPC提交工单,申请提高配额 。
- 每个账号默认最多可以创建100个安全组。
- 每个账号默认最多可以创建60个按量付费的负载均衡实例。
- 每个账号默认最多可以创建20个EIP。
- 每个账户可创建的集群数和节点数的详细信息,请参见容器服务Kubernetes版配额限制。
操作步骤
- 登录容器服务管理控制台。
- 在控制台左侧导航栏中,单击集群。
- 在集群列表页面中,单击页面右上角的集群模板。
- 在选择集群模板,选择Pro托管集群,然后单击创建。
- 在ACK托管版页签,完成Pro版集群配置。
- 完成集群基础选项配置。
配置项 描述 集群名称 填写集群的名称。说明 集群名称应包含1~63个字符,可包含数字、汉字、英文字符或短划线(-)。集群规格 选择集群规格,支持标准版和Pro版。
选中Pro版创建Pro托管集群。
地域 选择集群所在的地域。
资源组 将鼠标悬浮于页面上方的账号全部资源,选择集群所在的资源组。这里显示选择的资源组。时区 选择集群所要使用的时区。默认时区为浏览器所配置的时区。
Kubernetes版本 标准版支持选择1.14.8-aliyun.1和1.16.9-aliyun.1两个版本;Pro版只支持选择1.16.9-aliyun.1。 容器运行时 支持Docker和安全沙箱。
专有网络 设置集群的网络,您可以选择普通VPC和共享VPC。- 共享VPC:VPC的所有者账号(资源所有者)可以将其账号下的VPC内的交换机资源共享给其组织内的其他账号使用。
- 普通VPC:不具备共享功能的VPC。
说明 Kubernetes集群仅支持专有网络。您可以在已有VPC列表中选择所需的VPC。如果没有您需要的专有网络,可以通过单击创建专有网络进行创建,请参见创建专有网络。虚拟交换机 设置虚拟交换机。
网络插件 设置启用的网络插件和插件配置,支持Flannel和Terway网络插件,具体请参见使用Terway网络插件。- Flannel:简单稳定的社区的Flannel CNI插件。但功能偏简单,支持的特性少,例如:不支持基于Kubernetes标准的Network Policy。
- Terway:阿里云容器服务自研的网络插件,将阿里云的弹性网卡分配给容器,支持Kubernetes的Network Policy来定义容器间的访问策略,支持对单个容器做带宽的限流。
说明
- 在Terway模式下,节点上可以运行的Pod数均受节点的弹性网卡和辅助IP的配额限制。
- 当专有网络选择共享VPC时,网络插件仅支持Terway。
- 网络插件选择Terway时,会使用弹性网卡的辅助IP分配给Pod,一个Pod占用一个弹性网卡辅助IP地址。
Pod网络CIDR 网络插件选择Flannel时,需要配置Pod网络CIDR。
Pod网络CIDR指定Flannel网络插件需要配置Pod网络CIDR,网段不能和VPC及VPC已有Kubernetes集群使用的网段重复,创建成功后不能修改。而且Service地址段不能和Pod地址段重复,有关Kubernetes网络地址段规划的信息,请参见Kubernetes集群网络规划。
Terway模式 设置网络插件为Terway时,需要配置Terway模式:-
设置是否选中Pod独占弹性网卡以获得最佳性能
- 如果选中,Pod将独占一个专有的弹性网卡。
- 如果不选中,使用弹性网卡的辅助IP分配给Pod,一个Pod占用一个弹性网卡辅助IP地址。
-
设置是否选中IPvlan
- 只在弹性网卡共享模式支持选中。
- 如果选中,采用IPVLAN eBPF作为网卡共享模式虚拟化技术,并且只能使用Alibaba Cloud Linux 2系统,性能优于默认模式。
- 如果不选中,则使用默认模式,采用策略路由作为网卡共享模式虚拟化技术,同时兼容Centos 7和Alibaba Cloud Linux 2的系统。
-
设置是否选中NetworkPolicy支持
- 只在弹性网卡共享模式下支持选中,默认不选中。
- 如果选中,集群支持使用Kubernetes的NetworkPolicy策略对Pod进行网络控制。
- 如果不选中,集群将不会支持使用Kubernetes的NetworkPolicy策略对Pod进行网络控制,这样将不存在网络策略对Kubernetes的API Server产生过大的负载。
Service CIDR 设置Service CIDR。您需要指定Service CIDR,网段不能与VPC及VPC内已有Kubernetes集群使用的网段重复,创建成功后不能修改。而且Service地址段也不能和Pod地址段重复,有关Kubernetes网络地址段规划的信息,请参见Kubernetes集群网络规划。
节点IP数量 如果您选择的网络模式为Flannel,您需设置节点IP数量。说明 节点IP数量是指可分配给一个节点的IP数量,建议保持默认值。配置SNAT 创建集群时,默认不开通公网。如果您选择的VPC不具备公网访问能力,选中为专有网络配置SNAT后,ACK将为您创建NAT网关并自动配置SNAT规则。
API Server访问 ACK默认为API Server创建一个内网SLB实例,您可修改SLB实例规格。更多信息,请参见实例规格。注意 删除默认创建的SLB实例将会导致无法访问API Server。您可设置是否开放使用EIP暴露API Server。API Server提供了各类资源对象(Pod,Service等)的增删改查及Watch等HTTP Rest接口。- 如果选择开放,ACK会创建一个EIP,并挂载到公网SLB上。此时,Master节点的6443端口(对应API Server)暴露出来,您可以在外网通过kubeconfig连接并操作集群。
- 如果选择不开放,则不会创建EIP,您只能在VPC内部用kubeconfig连接并操作集群。
RDS白名单 设置RDS白名单。将节点IP添加到RDS实例的白名单中。说明 允许白名单RDS访问Kubernetes集群,RDS必须在当前集群的VPC内。安全组 支持选择自动创建普通安全组、自动创建企业级安全组、选择已有安全组。有关安全组的详细内容,请参见安全组概述。
Secret落盘加密 在ACK Pro托管集群中,选中选择KMS密钥可以使用在阿里云密钥管理服务KMS(Key Management Service)中创建的密钥加密Kubernetes Secret密钥。设置Secret落盘加密的详情,请参见使用阿里云KMS进行Secret的落盘加密。 - 完成集群高级选项配置。
配置项 描述 kube-proxy代理模式 支持iptables和IPVS两种模式。- iptables:成熟稳定的kube-proxy代理模式,Kubernetes service的服务发现和负载均衡使用iptables规则配置,但性能一般,受规模影响较大,适用于集群存在少量的Service。
- IPVS:高性能的kube-proxy代理模式,Kubernetes service的服务发现和负载均衡使用Linux ipvs模块进行配置,适用于集群存在大量的service,对负载均衡有高性能要求的场景。
标签 为集群绑定标签。输入键和对应的值,单击添加。说明- 键是必需的,而值是可选的,可以不填写。
- 键不能是aliyun、http://、https://开头的字符串,不区分大小写,最多64个字符。
- 值不能是http:// 或https://,可以为空,不区分大小写,最多128个字符。
- 同一个资源,标签键不能重复,相同标签键(Key)的标签会被覆盖。
- 如果一个资源已经绑定了20个标签,已有标签和新建标签会失效,您需要解绑部分标签后才能再绑定新的标签。
集群本地域名 设置是否配置集群本地域名。说明 默认域名为cluster.local,可自定义域名。域名由两段组成,每段不超过63个字符,且只能使用大小写字母和数字,不能为空。自定义证书SAN 在集群API Server服务端证书的SAN(Subject Alternative Name)字段中添加自定义的IP或域名,以实现对客户端的访问控制。
服务账户令牌卷投影 开启服务账户令牌卷投影功能以降低在Pod中使用Service Account遇到的安全性问题,可使得kubelet支持基于Pod粒度的Token签发,并且支持Token audience和过期时间的配置。详情请参见部署服务账户令牌卷投影
集群删除保护 设置是否启用集群删除保护。为防止通过控制台或API误释放集群。
- 完成集群基础选项配置。
- 单击下一步:Worker配置,完成Worker节点配置。
- 设置Worker实例。
- 如果您选择新增实例,需要进行以下配置。
配置项 描述 付费类型 容器服务Kubernetes版支持按量付费和包年包月两种节点付费类型。选择包年包月时,需设置以下参数。- 购买时长:目前支持选择1、2、3、6个月和1~5年。
- 自动续费:设置是否自动续费。
实例规格 支持选择多个实例规格。详情请参见实例规格族。
已选规格 呈现选中的规格。
数量 新增Worker实例(ECS实例)的数量。
说明 您可以将数量设置为0。ACK Pro托管集群支持创建0个Worker节点。系统盘 支持ESSD云盘、SSD云盘和高效云盘。说明- 支持选中开启云盘备份以备份云盘数据。
- ESSD云盘支持自定义性能级别。
ESSD云盘容量越大,可供选择的性能级别越高(460 GiB容量以上可选PL2,1260 GiB以上可选PL3)。更多信息,请参见容量范围与性能级别的关系。
挂载数据盘 支持ESSD云盘、SSD云盘和高效云盘。挂载数据盘时,支持云盘加密和开启云盘备份。
操作系统 ACK支持的节点操作系统包括:- Alibaba Cloud Linux 2(ACK默认的操作系统)
您可以选中等保加固对Alibaba Cloud Linux 2操作系统进行等保加固。注意
等保加固在保障原生镜像兼容性和性能的基础上进行了等保合规适配,使其满足国家信息安全部发布的《GB/T22239-2019信息安全技术网络安全等级保护基本要求》。
等保加固会禁止Root用户通过SSH远程登录。您可通过ECS控制台使用VNC方式登录系统创建可使用SSH的普通用户。具体操作,请参见通过VNC远程连接登录Linux实例。
- CentOS 7.x
说明 暂不支持CentOS 8.x及以上的操作系统。
登录方式 - 设置密钥。
- 密钥对:如您已经创建密钥对,在下拉列表中选择目标密钥对。
- 新建密钥对:此项用于您还未创建密钥对。创建密钥对,请参见创建SSH密钥对。密钥对创建完毕后,设置该密钥对作为登录集群的凭据。
- 设置密码。
- 登录密码:设置节点的登录密码。
- 确认密码:确认设置的节点登录密码。
- 如果您选择添加已有实例,则需要预先在此地域下创建ECS云服务器,然后配置操作系统、登录方式和密钥对,配置描述请参见上文。
- 如果您选择新增实例,需要进行以下配置。
- 设置高级选项。
配置项 描述 实例保护 设置是否启用实例保护。说明 为防止通过控制台或API误释放集群节点,默认启用实例保护。实例自定义数据 请参见生成实例自定义数据。
自定义镜像 允许您选择一个自定义ECS镜像。选择自定义镜像后,集群所有节点将基于此镜像进行部署 。有关创建自定义镜像操作,请参见使用自定义镜像创建Kubernetes集群。说明- 目前自定义镜像的操作系统仅支持CentOS 7.x和Alibaba Cloud Linux 2.x。
- 当前只有白名单用户可使用该功能。提交工单申请使用。
自定义节点名称 是否开启自定义节点名称。
节点名称由前缀 节点IP地址子串 后缀三部分组成:- 前缀和后缀均可由.分隔的一个或多个部分构成,每个部分可以使用小写字母、数字和短划线(-),且首尾必须为小写字母和数字。
- IP地址段长度指截取节点IP地址末尾的位数,取值范围5~12。
例如:节点IP地址为192.1xx.x.xx,指定前缀为aliyun.com,IP地址段长度为5,后缀为test,则节点名称为aliyun.com00055test。
CPU Policy 设置CPU policy。- none:默认策略,表示启用现有的默认CPU亲和方案。
- static:允许为节点上具有某些资源特征的Pod赋予增强的CPU亲和性和独占性。
污点(Taints) 为集群内所有Worker节点添加污点。
- 设置Worker实例。
- 单击下一步:组件配置,完成组件配置。
配置项 描述 Ingress 设置是否安装Ingress组件。默认选中安装Ingress组件,请参见配置Ingress。
存储插件 设置存储插件,支持Flexvolume和CSI。Kubernetes集群通过Pod可自动绑定阿里云云盘、NAS、OSS存储服务。请参见存储管理-Flexvolume和存储管理-CSI。
监控插件 设置是否启用云监控插件。默认选中在ECS节点上安装云监控插件和使用Prometheus监控服务,前者用于在云监控控制台查看所创建ECS实例的监控信息。
日志服务 设置是否启用日志服务,您可使用已有Project或新建一个Project。默认选中使用日志服务。创建应用时,您可通过简单配置,快速使用日志服务,详情参见通过日志服务采集Kubernetes容器日志。
您可以设置是否选中收集控制平面组件日志,该功能从ACK控制层收集托管集群控制平面组件日志到您账号中的SLS日志服务的Log Project中。更多信息,请参见收集托管集群控制平面组件日志。说明 ACK Pro托管集群默认选中收集控制平面组件日志。默认选中安装node-problem-detector并创建事件中心。您可以选择是否在日志服务控制台中创建Ingress Dashboard。
工作流引擎 设置是否使用AGS。- 如果选中AGS,则创建集群时系统自动安装AGS工作流插件。
- 如果不选中,则需要手动安装AGS工作流插件,请参见AGS命令行帮助。
- 单击下一步:确认配置。
- 阅读并同意服务协议,然后单击创建集群。说明 一个包含多节点的Kubernetes集群的创建时间一般约为十分钟。
执行结果
- 集群创建成功后,您可以在容器服务管理控制台的集群列表页面查看所创建的集群。
-
您可以单击目标集群右侧操作列下的查看日志,进入集群日志信息页面查看集群的日志信息。 您也可以在集群日志信息页面中,单击资源栈事件查看更详细的信息。
- 单击目标集群右侧操作列下的详情,然后单击基本信息和连接信息页签,查看集群的基本信息和连接信息。
在文档使用中是否遇到以下问题
更多建议
匿名提交