创建ACK托管集群时,您只需创建Worker节点,无需配置Master节点及维护控制面。控制面由阿里云容器服务创建并托管,降低了运维成本,帮助您聚焦业务应用。本文介绍如何通过容器服务控制台创建ACK托管集群。
前提条件
使用限制
限制项 | 说明 | 配额申请链接/相关文档 | |
网络 | ACK集群仅支持专有网络VPC。 | ||
云资源 | ECS实例 | 支持按量付费、包年包月和抢占式实例三种付费类型。实例创建后,您可以通过ECS管理控制台将按量付费转预付费。 | |
VPC路由条目 | 每个账户初始默认状况下VPC路由条目不超过200条,当ACK集群的网络模式是Flannel时,集群的路由条目最大不能超过200个(网络模式是Terway则不受该影响)。如集群需要更多路由条目数,您需要对目标VPC申请提高配额 。 | ||
安全组 | 每个账号默认最多可以创建100个安全组。 | ||
负载均衡实例 | 每个账号默认最多可以创建60个按量付费的负载均衡实例。 | ||
EIP | 每个账号默认最多可以创建20个EIP。 |
步骤一:登录容器服务管理控制台
登录容器服务管理控制台,在左侧导航栏选择集群。
将鼠标悬浮于页面上方的账号全部资源,选择资源组。在控制台页面顶部选择的资源组可过滤出该资源组内的专有网络及对应的虚拟交换机。在创建集群时,只显示过滤的专有网络实例及专有网络对应的虚拟交换机实例。
在集群列表页面,单击创建集群。
步骤二:配置集群
在ACK 托管集群页面,完成集群基础信息配置、网络配置和高级选项配置。
基础信息配置
配置项 | 描述 |
集群名称 | 集群的名称。长度为1~63个字符,可包含数字、下划线(_)或中划线(-),需以英文大小写字母、中文或数字开头。 |
集群规格 | 选择集群规格,支持Pro 版和基础版。企业生产和测试环境中推荐使用Pro版。基础版仅供个人学习与测试使用。 详细对比,请参见ACK集群概述。 |
地域 | 集群所在的开服地域。 |
Kubernetes 版本 | 当前支持的Kubernetes版本。您可以参见ACK版本支持概览了解ACK的版本支持情况。 |
自动升级 | 开启集群的自动升级能力,保持集群控制面和节点池的周期性自动升级。ACK会在您配置的集群维护窗口期内执行集群自动升级。关于自动升级的策略介绍和使用方法,请参见自动升级集群。 |
集群维护窗口 | ACK将在维护窗口期内进行集群版本自动升级以及托管节点池的自动化运维操作,例如运行时升级、OS CVE漏洞自动修复等。您可以单击设置,配置具体的维护策略。 |
网络配置
配置项 | 描述 |
IPv6双栈 | |
专有网络 | 配置集群的专有网络VPC。您可以指定可用区,自动新建一个VPC,也可以在已有VPC列表中选择已创建的VPC。 |
为专有网络配置 SNAT | 如果您新建或选择的VPC不具备公网访问能力,勾选后,ACK将为您创建NAT网关并自动配置SNAT规则。 若不勾选,您可自行配置NAT网关并手动配置SNAT,以确保VPC内实例可以正常访问公网。更多信息,请参见创建和管理公网NAT网关实例。 |
交换机 | 在列表中根据可用区选择已有vSwitch交换机,或单击创建虚拟交换机创建新的vSwitch。集群控制面与默认节点池将使用此处指定的vSwitch。推荐选择多个不同可用区的vSwitch,更好地保障集群高可用。 |
安全组 | |
API server 访问 | 为API Server创建一个按量付费的私网CLB实例,作为集群API Server的内网连接端点。 重要
还支持选择是否开放使用 EIP 暴露 API Server。API Server提供了各类资源对象(Pod、Service等)的增删改查及Watch等HTTP Rest接口。
|
网络插件 | 支持Flannel和Terway网络插件。关于两者的详细对比,请参见Terway与Flannel的对比。
|
容器网段 | 仅在选择使用Flannel插件时需要配置。 配置容器网段,网段不能和VPC及VPC已有ACK集群使用的网段重复,创建成功后不能修改,而且服务地址段不能和容器地址段重复。有关集群网络地址段规划的信息,请参见Kubernetes集群网络规划。 |
节点 Pod 数量 | 仅在选择使用Flannel插件时需要配置。 配置单个节点上所能容纳的最大Pod数量。 |
Pod 交换机 | 仅在选择使用Terway插件时需要配置。 为Pod分配IP的虚拟交换机。每个Pod虚拟交换机分别对应一个Worker节点的虚拟交换机,Pod虚拟交换机和Worker节点的虚拟交换机的可用区需保持一致。 重要 Pod虚拟交换机的网段掩码建议不超过19,最大不超过25,否则集群网络可分配的Pod IP地址非常有限,会影响集群的正常使用。 |
服务网段 | 设置服务网段,网段不能与VPC及VPC内已有ACK集群使用的网段重复,创建成功后不能修改,而且服务地址段也不能和容器地址段重复。有关集群网络地址段规划的信息,请参见Kubernetes集群网络规划。 |
IPv6 服务网段 | 需同时选择IPv6双栈。 为服务网段配置IPv6地址段。配置网段时,必须使用ULA地址,地址段范围在 关于集群网络地址段规划的更多信息,请参见Kubernetes集群网络规划。 |
集群高级配置
展开高级选项(选填),配置集群服务转发模式。
配置项 | 描述 |
服务转发模式 | 支持iptables和IPVS两种模式。
|
展开高级选项(选填),配置集群删除保护、资源组等信息。
步骤三:配置节点池
单击下一步:节点池配置,完成节点池基础选项配置和高级选项配置。
节点池基础配置
配置项 | 描述 | |
节点池名称 | 自定义的节点池名称。 | |
容器运行时 | 根据集群Kubernetes版本选择容器运行时。如何选型,请参见如何选择Docker运行时、containerd运行时、或者安全沙箱运行时?。
| |
托管节点池相关配置 | 托管节点池 | ACK将在维护窗口期内执行托管节点池的自动化运维操作,例如kubelet升级、运行时升级、OS CVE漏洞自动修复等。您可以单击设置,配置具体的维护策略。 |
自愈规则 | 需开启托管节点池。 勾选后,节点NotReady时,系统会尝试自动重启相关组件来修复故障节点,并在重启前执行排水。 | |
自动升级规则 | 需开启托管节点池。 勾选后,系统会在有可用的kubelet版本时自动升级到该版本。更多信息,请参见升级节点池。 | |
自动修复 CVE(OS) | 需开启托管节点池。 可配置自动修复漏洞的级别,包括高危、中危、低危漏洞。更多信息,请参见托管节点池节点自动恢复、修复节点池操作系统CVE漏洞。 有些漏洞修复完成后需要重启服务器来使其修复生效。开启必要时重启节点以修复 CVE 漏洞后,ACK会按需自动重启节点;未开启时,需在修复完成后手动重启节点。 | |
集群维护窗口 | 需开启托管节点池。 托管节点池将在维护窗口进行自动化升级,例如节点池镜像升级、运行时升级、Kubernetes版本等。 单击设置,在集群维护窗口对话框,设置维护周期、维护起始时间以及维护时长,然后单击确定。 |
实例和镜像配置
配置项 | 描述 | |
付费类型 | 节点池扩容ECS实例时默认采用的付费类型,支持按量付费、包年包月和抢占式实例。
为保证节点池统一,按量付费、包年包月节点池与抢占式实例节点池之间不支持转换。例如,对于创建节点池时选择付费类型为按量付费或包年包月的节点池,编辑节点池时不展示抢占式实例;反之亦然。 | |
实例相关的配置项 | 根据实例规格或属性选择Worker节点池使用的ECS实例,可通过vCPU、内存、规格族、架构等属性筛选所需的实例规格族。您可以参见ECS实例规格配置建议获取节点的配置建议。 节点池扩容时,将从选中的实例规格中扩容。具体扩容到的实例规格取决于节点池扩缩容策略。选择的实例规格越多,节点池成功弹出节点的概率越大。 由于实例规格不可用或库存不足,导致节点池弹出节点失败时,可以尝试添加更多实例规格。您可以参照控制台的弹性强度建议添加实例规格,也可以创建节点池后查看查看节点池弹性强度。 如果您选择的实例均为GPU服务器,您可以按需开启共享 GPU 调度。更多信息,请参见共享GPU调度概述。 | |
操作系统 | 云市场镜像处于灰度发布中。
说明
| |
安全加固 | 为集群开启安全加固。创建完成后,加固方案不支持转换。
| |
登录方式 |
存储配置
配置项 | 描述 | |
系统盘 | 支持ESSD AutoPL、ESSD云盘、ESSD Entry、SSD云盘和高效云盘。系统盘可选的类型与选择的实例规格族相关。如果云盘类型下拉列表没有显示的云盘类型,代表不支持该云盘类型。 您可以选择配置更多系统盘类型,配置与系统盘不同的磁盘类型,提高扩容成功率。创建实例时,系统将根据指定的磁盘类型顺序,选择第一个匹配的磁盘类型用于创建实例。 | |
数据盘 | 支持ESSD AutoPL、ESSD云盘、ESSD Entry以及上一代云盘(SSD云盘和高效云盘)。数据盘可选的类型与选择的实例规格族相关。如果云盘类型下拉列表没有显示的云盘类型,代表不支持该云盘类型。
说明 一台ECS实例最多可挂载64块数据盘,不同实例规格支持挂载的最多云盘数量不同。实例规格支持挂载的云盘数量上限,可以通过DescribeInstanceTypes接口查询(DiskQuantity)。 | |
实例数量配置
配置项 | 描述 |
期望节点数 | 节点池应该维持的总节点数量,建议至少配置2个节点,以确保集群组件正常运行。您可以通过调整期望节点数,达到扩容或缩容节点池的目的,请参见扩缩容节点池。 如无需创建节点,可填写为0,后续再手动调整,增加节点数。 |
节点池高级配置
展开高级选项(选填),配置节点扩缩容策略。
配置项 | 描述 |
扩缩容策略 |
|
展开高级选项(选填),配置ECS标签、污点等信息。
步骤四:配置组件
单击下一步:组件配置,完成组件基础选项配置和高级选项配置。
组件基础配置
配置项 | 描述 |
Ingress | 是否安装Ingress网络组件,可选不安装。如果有对外暴露服务的需求,推荐安装Ingress组件。
|
服务发现 | 安装NodeLocal DNSCache,用于运行DNS缓存代理以提升域名解析性能和稳定性。 |
存储插件 | 默认使用CSI存储插件。您也可以开启创建默认NAS文件系统和CNFS容器网络文件系统动态存储类型,并默认开启 NAS 回收站特性,支持数据快速恢复。ACK支持云盘、NAS、OSS等存储卷类型。 |
容器监控 | 是否使用容器集群监控服务,为ACK集群提供基础监控和报警。
|
成本套件 | 为ACK集群提供集群、命名空间、节点池、工作负载的成本和资源使用情况的观测分析。您可以获取成本节约建议,从而提升集群资源利用率。更多信息,请参见成本洞察概述。 |
日志服务 | 使用已有SLS Project或新建一个SLS Project,用于收集集群日志。创建应用时,您可通过简单配置,快速使用日志服务,详情参见通过DaemonSet采集Kubernetes容器文本日志。
|
报警配置 | 开启容器服务报警管理。支持设置报警通知联系人分组,默认为Default Contact Group。 |
控制平面组件日志 | 将控制面组件日志采集到SLS Project中,请参见收集ACK托管集群控制面组件日志。 |
集群巡检 | 启用智能运维的集群巡检功能,定期扫描集群内配额、资源水位、组件版本等,识别集群内潜在的风险。 |
组件高级配置
展开高级选项(选填),选中需要安装的应用管理、日志监控、存储、网络、安全等类型的组件。
步骤五:确认配置
单击下一步:确认配置,确认配置信息,仔细阅读并选中服务协议,然后单击创建集群。
集群创建成功后,您可以在容器服务管理控制台的集群列表页面查看所创建的集群。
一个包含多节点的集群的创建时间一般约为十分钟。
计费相关
关于使用ACK托管集群时会产生的资源计费,请参见计费概述。
相关操作
查看集群基本信息
在集群列表页面中,找到刚创建的集群,单击操作列中的详情,单击基本信息和连接信息页签,查看集群的基本信息和连接信息。其中:
API Server 公网端点:Kubernetes的API Server对公网提供服务的地址和端口,可以通过此服务在用户终端使用kubectl等工具管理集群。
绑定公网IP、更换和解绑公网IP功能仅支持ACK托管集群 。
绑定公网IP:您可以选择在已有EIP列表中绑定EIP或者新建EIP。
绑定公网IP操作会导致API Server短暂重启,请避免在此期间操作集群。
解绑公网IP:解绑公网IP后您将无法通过公网访问API Server。
解绑公网IP操作会导致API Server短暂重启,请避免在此期间操作集群。
API Server 内网端点:Kubernetes的API Server对集群内部提供服务的地址和端口,此IP为负载均衡的地址。
查看集群日志信息
您可以单击操作列的
,进入日志中心页面查看集群的日志信息。查看集群节点信息
您可以获取集群KubeConfig并通过kubectl工具连接集群,执行
kubectl get node
查看集群的节点信息。
相关文档
关于其他集群创建方式,请参见:
OpenAPI:通过OpenAPI创建ACK托管集群
Terraform:通过Terraform创建ACK托管集群
SDK:Java SDK调用示例
关于如何连接集群,请参见获取集群KubeConfig并通过kubectl工具连接集群。
关于如何规划集群专有网络VPC、虚拟交换机、Pod网络CIDR(地址段)和Service CIDR(地址段),请参见Kubernetes集群网络规划。
推荐您根据业务需求和策略,开启工作负载伸缩和节点伸缩,根据集群负载自动调整工作负载的副本数量和集群的可用节点资源,请参见弹性伸缩概述。
如果您有应用数据持久化存储、敏感和配置数据存储、存储资源动态供应等存储需求,ACK集群基于CSI插件实现了容器存储功能,请参见存储。
推荐您使用ACK集群提供的监控和日志功能,帮助您观测系统的运行状态,并在出现问题时及时介入进行排查和诊断,请参见可观测性体系概述。