创建本地集群

前提条件

节点要求

  1. 如果您从下载安装包下载的是单架构安装包,请确保节点机器的架构与安装包一致,否则节点因缺少对应架构的镜像无法启动。
  2. 确认节点操作系统及内核版本受支持。详情请参见支持的操作系统和内核
  3. 对节点机器进行可用性检查,具体检查项请参考节点预处理 > 节点检查
  4. 如果节点机器的 IP 无法通过 SSH 直接访问,需要为节点提供 SOCKS5 代理,global 集群将通过该代理服务访问节点。

负载均衡

生产环境中,集群控制平面节点需要负载均衡器以保证高可用性。

如果环境中有硬件 LoadBalancer,推荐使用硬件负载均衡器。 如果没有,可以启用 Self-built VIP,该方式通过 keepalived 提供软件负载均衡。

建议:使用硬件 LoadBalancer 时,建议将 Cluster Endpoint 配置为域名。如果硬件 LoadBalancer VIP 在集群安装后发生变更,只需更新 DNS 记录,无需重新配置集群。

注意Self-built VIP 不支持域名配置。

负载均衡器必须正确转发流量到集群所有控制平面节点的端口 64431178011781

如果集群仅有一个控制平面节点,且使用该节点 IP 作为 Cluster Endpoint 参数,后续无法将单节点集群扩展为高可用多节点集群。因此,建议即使是单节点集群也提供负载均衡器。

启用 Self-built VIP 时,需准备:

  1. 可用的 VRID
  2. 支持 VRRP 协议的主机网络
  3. 所有控制平面节点和 VIP 必须在同一子网,且 VIP 不能与任何节点 IP 重复。

连接 global 集群与业务集群

平台要求 global 集群与业务集群之间互通访问。如果不在同一网络,需要:

  1. 为业务集群提供 External Access,确保 global 集群可以访问。网络要求确保 global 能访问所有控制平面节点的端口 64431178011781
  2. global 添加业务集群可访问的额外地址。创建业务集群时,将该地址以键 cpaas.io/platform-url 和值为 global 公网访问地址的形式添加到集群注解中。

镜像仓库

集群镜像支持平台内置、私有仓库和公共仓库三种方式。

  • 平台内置:使用 global 集群提供的镜像仓库。如果集群无法访问 global,请参见为内置仓库添加外部地址
  • 私有仓库:使用您自己的镜像仓库。推送所需镜像到您的仓库的具体操作,请联系技术支持。
  • 公共仓库:使用平台公共镜像仓库。使用前请完成更新公共仓库凭据

容器网络

如果计划为集群使用 Kube-OVN 的 Underlay,参考准备 Kube-OVN Underlay 物理网络

创建操作步骤

  1. 进入 管理员 视图,点击左侧导航栏的 Clusters/Clusters

  2. 点击 创建集群

  3. 按照以下说明配置基本信息、容器网络、节点设置和扩展参数。

基本信息

参数说明
Kubernetes 版本

所有可选版本均经过严格测试,保证稳定性和兼容性。


推荐:选择最新版本以获得最佳功能和支持。

容器运行时

默认提供 containerd 作为容器运行时。


如果您偏好使用 Docker 作为容器运行时,请参考选择容器运行时

集群网络协议

支持三种模式:IPv4 单栈、IPv6 单栈、IPv4/IPv6 双栈。


注意:选择双栈模式时,确保所有节点均正确配置 IPv6 地址;网络协议设置后不可更改。

集群访问端点

IP 地址 / 域名:填写预先准备的域名或无域名时填写 VIP。


自建 VIP:默认关闭,仅当未提供 LoadBalancer 时启用。启用后安装程序会自动部署 keepalived 以支持软件负载均衡。


外部访问:当集群与 global 集群不在同一网络环境时,填写为集群准备的外部可访问地址。

容器网络

Kube-OVN
Calico
Flannel
自定义

Kube-OVN 是由 Alauda 开发的企业级云原生 Kubernetes 容器网络编排系统。它将 OpenStack 领域成熟的网络能力引入 Kubernetes,支持跨云网络管理、传统网络架构与基础设施互联、边缘集群部署场景,同时大幅提升 Kubernetes 容器网络的安全性、管理效率和性能。

参数说明
子网

也称为 Cluster CIDR,表示默认子网段。集群创建后可添加其他子网。

传输模式

Overlay:基于基础设施抽象的虚拟网络,不占用物理网络资源。创建 Overlay 默认子网时,集群内所有 Overlay 子网使用相同的集群 NIC 和节点 NIC 配置。
Underlay:依赖物理网络设备的传输方式,可直接分配物理网络地址给 Pod,保证更好的性能和物理网络连通性。Underlay 子网的节点必须具备多网卡,且用于桥接网络的网卡必须专用于 Underlay,不能承载其他流量如 SSH。创建 Underlay 默认子网时,集群 NIC 实际为桥接网络默认网卡,节点 NIC 为桥接网络中的节点网卡配置。

  • 默认网关:物理网络网关地址,即 Cluster CIDR 段的网关地址(必须在 Cluster CIDR 地址范围内)。
  • VLAN ID:虚拟局域网标识(VLAN 编号),例如 0
  • 保留 IP:设置不自动分配的保留 IP,如子网中已被其他设备占用的 IP。
服务 CIDR

Kubernetes 类型为 ClusterIP 的 Service 使用的 IP 地址范围。不可与默认子网范围重叠。

Join CIDR

Overlay 传输模式下,节点与 Pod 之间通信使用的 IP 地址范围。不可与默认子网或服务 CIDR 重叠。

节点设置

参数说明
网卡名称

集群网络插件使用的主机网络接口设备名称。


注意

  • 选择 Kube-OVN 默认子网的 Underlay 传输模式时,必须指定网卡名称,该网卡将作为桥接网络的默认网卡。
  • 平台默认监控名称类似 eth.|en.|wl.|ww. 的网卡流量。如果使用其他命名规则的网卡,请参考从自定义命名的网卡采集网络数据修改相关资源,确保平台能正确监控网卡流量。
节点名称

可选择使用节点 IP 或主机名作为平台上的节点名称。


注意:选择主机名作为节点名称时,确保集群中所有节点主机名唯一。

节点

添加节点 到集群,或从草稿中恢复临时保存的节点信息。详细参数说明见下方添加节点部分。

监控类型

支持 PrometheusVictoriaMetrics
选择 VictoriaMetrics 作为监控组件时,需配置 部署类型
- 部署 VictoriaMetrics:部署所有相关组件,包括 VMStorageVMAlertVMAgent 等。
- 部署 VictoriaMetrics Agent:仅部署日志采集组件 VMAgent。此部署方式需关联平台中已部署的其他集群上的 VictoriaMetrics 实例,为集群提供监控服务。

监控节点

选择部署集群监控组件的节点。支持选择允许部署应用的计算节点和控制平面节点。


为避免影响集群性能,建议优先选择计算节点。集群创建成功后,存储类型为 本地卷 的监控组件将在所选节点部署。

添加节点参数

参数说明
类型

控制平面节点:负责运行 kube-apiserver、kube-scheduler、kube-controller-manager、etcd、容器网络及部分平台管理组件。当启用 允许部署应用 时,控制平面节点也可作为计算节点使用。


工作节点:负责承载集群中运行的业务 Pod。

IPv4 地址

节点的 IPv4 地址。内网模式创建的集群填写节点的 私有 IP

IPv6 地址

集群启用 IPv4/IPv6 双栈时有效。节点的 IPv6 地址。

允许部署应用

节点类型控制平面节点 时有效。是否允许在该控制平面节点上部署业务应用,调度业务相关 Pod 到该节点。

显示名称节点的显示名称。
SSH 连接 IP

通过 SSH 服务访问节点时可连接的 IP 地址。


如果可以使用 ssh <用户名>@<节点 IPv4 地址> 登录节点,则此参数可不填;否则填写节点的公网 IP 或 NAT 外网 IP,确保 global 集群及代理能通过该 IP 连接节点。

网卡名称

输入节点使用的网卡名称。网卡配置生效优先级如下(从左到右,优先级递减):


Kube-OVN Underlay:节点网卡 > 集群网卡


Kube-OVN Overlay:节点网卡 > 集群网卡 > 节点默认路由对应网卡


Calico:集群网卡 > 节点默认路由对应网卡


Flannel:集群网卡 > 节点默认路由对应网卡

关联桥接网络

注意:创建集群时不支持桥接网络配置;仅在为已有 Underlay 子网的集群添加节点时可用。


选择已有的添加桥接网络。如果不想使用桥接网络默认网卡,可单独配置节点网卡。

SSH 端口

SSH 服务端口号,例如 22

SSH 用户名

SSH 用户名,需要具备 root 权限的用户,例如 root

代理

是否通过代理访问节点的 SSH 端口。当 global 集群无法直接通过 SSH 访问待添加节点(如 global 集群与业务集群不在同一子网;节点 IP 为 global 集群无法直接访问的内网 IP)时,需开启此开关并配置代理相关参数。配置代理后,可通过代理访问和部署节点。


注意:目前仅支持 SOCKS5 代理。


访问地址:代理服务器地址,例如 192.168.1.1:1080
用户名:访问代理服务器的用户名。


密码:访问代理服务器的密码。

SSH 认证

登录添加节点的认证方式及对应认证信息。选项包括:


密码:需提供具备 root 权限的用户名及对应的 SSH 密码
密钥:需提供具备 root 权限的 私钥私钥密码

保存草稿

将当前对话框配置的数据保存为草稿,并关闭 添加节点 对话框。


在不离开 创建集群 页面情况下,可选择 从草稿恢复 打开 添加节点 对话框,恢复保存的草稿配置数据。


注意:恢复的是最近一次保存的草稿数据。

扩展参数

注意

  • 除必填配置外,不建议设置扩展参数,错误配置可能导致集群不可用,且集群创建后无法修改。

  • 若输入的 Key 与默认参数 Key 重复,则会覆盖默认配置。

操作步骤

  1. 点击 扩展参数 展开扩展参数配置区域。可选为集群设置以下扩展参数:
参数说明
Docker 参数

dockerExtraArgs,Docker 的额外配置参数,将写入 /etc/sysconfig/docker。不建议修改。通过 daemon.json 配置 Docker 时,需以键值对形式配置。

Kubelet 参数

kubeletExtraArgs,Kubelet 的额外配置参数。


注意:当输入 容器网络节点 IP 数量 参数时,系统会自动生成默认的 Kubelet 参数 配置,键为 max-pods,值为 节点 IP 数量,用于设置集群中任意节点可运行的最大 Pod 数量。该配置不在界面显示。


Kubelet 参数 区域新增 max-pods: 最大可运行 Pod 数量 键值对会覆盖默认值。允许任意正整数,但建议使用默认值(节点 IP 数量)或不超过 256 的值。

Controller Manager 参数

controllerManagerExtraArgs,Controller Manager 的额外配置参数。

Scheduler 参数

schedulerExtraArgs,Scheduler 的额外配置参数。

APIServer 参数

apiServerExtraArgs,APIServer 的额外配置参数。

APIServer URL

publicAlternativeNames,证书中颁发的 APIServer 访问地址。仅可填写 IP 或域名,最长 253 字符。

集群注解

集群注解信息,以键值对形式标记集群特征,供平台组件或业务组件获取相关信息。

  1. 点击 创建。页面将返回集群列表,集群状态为 创建中

创建后操作

查看创建进度

在集群列表页面,可查看已创建集群列表。对于状态为 创建中 的集群,可查看执行进度。

操作步骤

  1. 点击集群状态右侧的小图标 查看执行进度

  2. 弹出的执行进度对话框中,可查看集群执行进度(status.conditions)。

    提示:当某类型处于进行中或失败状态且有原因时,将鼠标悬停在对应原因(蓝色文字)上,可查看原因详细信息(status.conditions.reason)。

关联项目

集群创建完成后,可在项目管理视图中将其添加到项目中。