创建本地集群

目录

前提条件

节点要求

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

负载均衡

生产环境中,集群控制平面节点需要负载均衡器以保证高可用性。 您可以提供自有硬件负载均衡器,或启用“自建 VIP”,该方式通过 haproxy + keepalived 实现软件负载均衡。 推荐使用硬件负载均衡器,原因如下:

  • 性能更优:硬件负载均衡性能优于软件负载均衡。
  • 复杂度更低:如果不熟悉 keepalived,配置错误可能导致集群不可用,排查耗时且严重影响集群可靠性。

使用自有硬件负载均衡器时,可将负载均衡器的 VIP 作为“IP 地址 / 域名”参数;如果有解析到负载均衡器 VIP 的域名,也可使用该域名作为“IP 地址 / 域名”参数。 注意:

  • 负载均衡器必须正确转发流量到集群所有控制平面节点的端口 64431178011781
  • 如果集群仅有一个控制平面节点,且使用该节点 IP 作为“IP 地址 / 域名”参数,后续无法将单节点集群扩展为高可用多节点集群。因此,即使是单节点集群,也建议提供负载均衡器。

启用“自建 VIP”时,需准备:

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

连接 global 集群与业务集群

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

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

镜像仓库

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

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

容器网络

若计划使用 Kube-OVN 的 Underlay 模式,请参考准备 Kube-OVN Underlay 物理网络

创建操作步骤

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

  2. 点击 创建集群

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

基本信息

参数说明
Kubernetes 版本

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


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

容器运行时

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


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

集群网络协议

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


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

集群访问端点

IP 地址 / 域名:填写预先准备的域名,若无域名则填写 VIP。


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


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

容器网络

Kube-OVN
Calico
Flannel
自定义

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 的服务使用的 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)。

关联项目

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