集群管理
集群管理
集群
概述
集群主要指运行容器应用的Kubernetes集群,ZStack Zaku提供标准化、高可用、稳定的Kunernetes集群,并简化集群的部署、扩容、升级、高可用等运维操作,让用户可以专注自己的上层容器应用。
创建集群
准备工作
- 确保要用于创建集群的节点已安装 ZStack Cloud定制版操作系统,请联系官方技术支持获取与当前平台版本配套的定制版操作系统。
- 确保作为管理节点的每台节点各挂载1个500G的数据盘,用于存储集群的监控和日志数据。
- 确保要用于创建集群的节点之间网络能够互通,且所有节点都能被管理集群访问。
创建集群
在ZStack Zaku主菜单,点击,进入集群界面。点击创建集群,进入创建集群界面。
创建集群分为以下三步:
- 节点配置可参考以下示例输入相应内容:
- 管理网与业务网复用:选择管理网是否复用业务网。开启后,管理网复用业务网,管理集群将通过节点的业务网IP访问节点、管理业务集群,请确保管理集群与业务网连通。
- 集群高可用:选择是否开启集群高可用。默认开启,如关闭,则集群不支持高可用,只需 1 个管理节点。生产环境不建议关闭集群高可用。
- 节点信息:填写要用于创建集群的节点的信息
- 添加方式:添加节点的方式,包括IP地址、IP范围
- 业务网IPv4地址:填写节点的业务网IPv4地址。添加方式为IP地址时填写该字段
- 管理网IPv4地址:填写节点的管理网IPv4地址。添加方式为IP地址时填写该字段。管理集群通过管理网 IPv4 地址访问、管理业务集群节点,请确保管理集群与该地址连通。管理网与业务网复用时,管理网 IPv4 地址和业务网 IPv4 地址相同
- 业务网IPv4范围:填写节点的业务网IPv4范围。添加方式为IP范围时填写该字段
- 管理网IPv4范围:填写节点的管理网IPv4范围。添加方式为IP范围时填写该字段。管理网与业务网复用时,管理网
IPv4 范围和业务网 IPv4 范围相同Note:
- 请确保填写的IP地址与机器实际配置一致。
- 请确保管理网IPv4地址与管理集群可连通。若管理网与业务网复用时,请确保业务网IPv4地址与管理集群可连通。
- 请确保各节点的业务网IPv4地址互相间可连通。
- 不同节点的管理网 IPv4 地址不能重复;不同节点的业务网 IPv4 地址不能重复;管理网与业务网不复用的情况下,管理网 IPv4 地址和业务网 IPv4 地址不能重复。
- 管理网与业务网不复用时,需确保管理网 IPv4 范围跟业务网 IPv4 范围的 IP 是一一对应的,同一个顺序上的 IP 属于同一个节点,如业务网 IPv4 范围的第 1 个 IP 和管理网 IPv4 范围的第 1个 IP 属于第 1 个节点。
- 请确保3个管理节点的业务网IPv4地址所在网卡的网卡名称一致,3个管理节点的管理网IPv4地址所在网卡的网卡名称一致。
- 节点名称:设置节点的名称。命名规则 :长度限制2-45字符
,只能包含小写字母、数字和分隔符 (-),
必须以小写字母开头,且不能以分隔符结尾。当添加方式是IP范围时,需指定起始后缀,节点名称由名称和后缀组成,后缀将会自动从起始后缀依次往上增加,如"-1/-2/-3"以此类推。Note:
- 添加节点过程中会将主机的hostname设置为节点名称。
- 本批次节点使用的节点名称不能重复。
- 节点角色:选择节点的角色,可选:管理节点、计算节点、GPU节点。开启集群高可用时,一个集群必须要有3个管理节点;关闭集群高可用时,一个集群必须要有1个管理节点。Note:
- 管理节点可同时作为计算节点,则业务容器组也可调度到管理节点。
- GPU 节点在部署过程中将自动安装对应组件,请根据实际情况选择是否将机器安装为GPU节点。
- 如勾选 GPU节点,请确保该节点已正确安装 GPU 驱动,如未安装驱动,则只会安装对应组件不会将节点设置为 GPU节点角色。
- GPU厂商:节点角色勾选 GPU节点时需填写该字段,选择该节点上的 GPU 的厂商,系统将安装对应厂商的 GPU 相关组件,当前支持:NVIDIA、华为、海光、天数、阿里巴巴
- 天数GPU虚拟化许可证:当存在GPU节点且GPU厂商为天数时需填写该字段,填写天数 GPU 虚拟化的许可证,如需在容器中共享天数 GPU 需要该许可证,许可证从天数官方获取
- 节点ROOT密码:填写节点root账号密码 ,便于添加节点过程中 ,SSH到节点执行安装步骤,请确保每个节点的ROOT密码一致
- 节点SSH端口:填写SSH节点使用的端口 ,便于添加节点过程中 ,SSH到节点执行安装步骤 ,请确保每个节点的该端口可被连通
如图 1所示:图 1. 创建集群-节点配置 
- 基础配置可参考以下示例输入相应内容:
- 集群名称:设置集群的名称。命名规则 :长度限制2-50字符 ,只能包含小写字母、数字和分隔符 (-),必须以小写字母开头,不能以分隔符结尾
- 集群版本:选择集群的 Kubernetes 版本,默认 1.35版本,可通过配置开启1.30版本
- 业务网VIP:填写集群 API Server 在业务网的高可用地址,请填写业务网网段内的 IPv4 地址
- 管理网VIP:填写集群 API Server 在管理网的高可用地址,请填写管理网网段内的 IPv4 地址。若管理网与业务网复用,则管理网VIP与业务网VIP相同
- 每节点最大容器组数量:填写每个节点允许运行的最大容器组数量,默认为110,只能填写50~1000的整数
- 监控日志磁盘:监控日志磁盘用于监控、日志组件创建数据卷,存储监控、日志数据。请为每台管理节点各选择 1 块磁盘作为监控日志磁盘。
- 容器组网段:填写集群中容器组使用的网段,用于分配容器组使用的 IP 地址,默认为10.233.64.0/18。如修改默认容器组网段,请避免与内网网段及创建本集群时使用的其他网段重叠
- 服务网段:填写集群中服务使用的网段,用于分配服务使用的 ClusterIP,默认为10.233.0.0/18。如修改默认服务网段,请避免与内网网段及创建本集群时使用的其他网段重叠
- DNS服务器:添加 DNS 服务器,提供 DNS 解析服务,解析集群外部域名,如未部署专用的 DNS 服务器,可填写公共 DNS 服务器地址,如 223.5.5.5
- 微服务治理:选择是否开启微服务治理,开启后,将在集群中部署微服务治理相关组件,支持在集群使用微服务治理相关功能
- 镜像数据盘:可选项,选择用于存储镜像数据的镜像数据盘。若未设置镜像数据盘,则镜像数据默认存放在系统盘。当使用的镜像较多较大时,建议给节点专门加载一块磁盘存放镜像,避免镜像数据将系统盘占满,导致系统异常。
如图 2所示:图 2. 创建集群-基础配置 
- 确认配置
确认集群的配置信息,支持跳转修改。
如图 3所示:图 3. 创建集群-确认配置 
点击确定后,系统将开始创建集群,用户点击,进入集群界面,查看集群的创建情况。
管理集群
在ZStack Zaku主菜单,点击,进入集群界面。
集群支持以下操作:
| 操作 | 描述 |
|---|---|
| 创建集群 | 创建一个新的集群。 |
| 重新安装 | 重新安装创建失败的集群。 |
| 集群详情 | 进入集群详情页,查看集群的基本信息、资源用量、kubeconfig,及集群操作日志,包括:创建集群、添加节点、移除节点等的日志 |
| 功能组件 | 进入集群详情页,点击功能组件,可以查看平台支持的功能组件及组件在集群的部署情况,并根据需要部署组件。 |
| 纳管集群 | 将已有的 Kubernetes 集群纳管到平台进行管理。 Note:
|
| 取消纳管 | 取消纳管集群,取消后,将无法在当前平台上继续使用和管理该集群。 |
| 删除集群 | 将集群删除。 Note: 删除集群将同步删除当前集群内的所有资源,并清除节点上的集群配置。清除的资源和配置不可恢复,请谨慎操作。 |
集群访问配置
- 下载并安装最新版kubectl用户端,详见安装部署kubectl用户端。
- 查看集群Kubeconfig。
- 在ZStack Zaku主菜单,点击右上角,即可查看当前集群KubeConfig。
- 管理员也可直接进入集群详情页查看集群KubeConfig。
- 根据集群的网络情况,可选择使用业务网VIP或管理网VIP访问集群,选择对应的KubeConfig,复制Kubeconfig中的内容,并粘贴到kubectl用户端的$HOME/.kube/config目录下,即可完成访问配置。
集群高级设置
在ZStack Zaku主菜单,点击,进入集群界面。点击集群名称,进入集群详情页,点击高级设置,进入高级设置子页面。
集群支持以下高级设置:
| 名称 | 描述 |
|---|---|
| 日志数据保留时间 |
|
| 日志数据卷大小 |
|
| 恢复日志数据写入 |
|
功能组件
功能组件列表展示了平台支持的功能组件及组件在集群的部署情况,用户可按需部署组件。目前支持如下 4 种功能组件:微服务治理组件、ZStone-RBD-CSI、ZCE-iSCSI-CSI、ZCE-NFS-CSI。
微服务治理组件
微服务治理组件包括istiod、可视化插件等微服务治理所需的所有组件,提供微服务治理能力,部署微服务治理组件后即可在集群使用微服务治理相关功能。
部署微服务治理组件
在ZStack Zaku主菜单,点击,进入集群界面。点击集群名称,进入集群详情页,点击功能组件,进入功能组件子页面。点击功能组件列表的微服务治理组件后面的部署按钮,打开部署微服务治理组件的弹窗。
- 命名空间默认为istio-system,若输入新的命名空间,将默认创建该命名空间,并将微服务治理组件部署在该命名空间。
- 请确保所填写的命名空间下未部署istio相关组件,以免出现冲突。
- 若微服务治理组件部署失败,可再次部署,此时命名空间不可再更改。
- 已成功部署微服务治理组件的集群不可再次部署。

ZStone-RBD-CSI
ZStone-RBD-CSI 用于 Kubernetes 与 ZStone 的块存储服务对接,为容器提供持久化块存储。部署 ZStone-RBD-CSI 后即可对接到ZStone的块存储,在集群通过使用相关存储类创建数据卷进行使用。
准备工作
- 已存在可用的ZStone存储服务。
- 已在管理集群将ZStone-RBD-CSI的镜像及chart准备就绪。可按如下步骤操作:
- 请联系官方技术支持获取ZStone-RBD-CSI的镜像和chart资源包。
- 将获取的资源包上传到管理集群的第三个节点(如不是高可用集群则是第一个节点),并执行如下命令安装资源包:
bash zaku-${k8s version}-${version}-all-in-one-addon-csi.bin。其中${k8s version}与${version}分别是k8s集群版本及平台版本,根据具体的资源包名称填写。 - 只需在管理集群上传一次资源包,即可在该环境的任意集群安装ZStone-RBD-CSI。
部署ZStone-RBD-CSI
在ZStack Zaku主菜单,点击,进入集群界面。点击集群名称,进入集群详情页,点击功能组件,进入功能组件子页面。点击功能组件列表的ZStone-RBD-CSI后面的部署按钮,打开部署ZStone-RBD-CSI的弹窗。
- 存储集群ID:填写要对接的ZStone 存储集群的
UUID,可在存储节点上执行如下命令获得:
ceph -s | grep id: | awk '{print $2}' - Mon地址:填写存储服务的Mon地址,可在存储节点上执行如下命令获得:
ceph mon dumpNote:- 当存储服务有多个Mon地址时,请分别填入每个输入框。
- Mon地址需包含 IP 和端口,如:“172.31.12.216:6789”
- 存储池:填写存储池id,可在存储节点上执行如下命令获得:
rados lspools。数据卷对应的块存储将创建到该存储池

- 同一个集群不支持同时部署ZStone和ZCE的CSI。
- 已成功部署ZStone-RBD-CSI的集群不能再次部署。
- 对于部署失败的集群,可以卸载后再重新部署。
- ZStone-RBD-CSI默认部署在 zstack-csi 命名空间,部署CSI时将同步创建名称为 zaku-rbd的存储类,可使用该存储类创建数据卷使用块存储卷。
- 可在集群详情页的操作日志子页面查看部署的详细日志。
ZCE-iSCSI-CSI
ZCE-iSCSI-CSI 用于 Kubernetes 与 ZCE 的块存储服务对接,为容器提供持久化块存储。部署 ZCE-iSCSI-CSI 后即可对接到ZCE的块存储,在集群通过使用相关存储类创建数据卷进行使用。
准备工作
- 已存在可用的 ZCE 存储服务。
- 已在管理集群将ZCE-iSCSI-CSI的镜像及chart准备就绪。可按如下步骤操作:
- 请联系官方技术支持获取ZCE-iSCSI-CSI的镜像和chart资源包。
- 将获取的资源包上传到管理集群的第三个节点(如不是高可用集群则是第一个节点),并执行如下命令安装资源包:
bash zaku-${k8s version}-${version}-all-in-one-addon-csi.bin。其中${k8s version}与${version}分别是k8s集群版本及平台版本,根据具体的资源包名称填写。 - 只需在管理集群上传一次资源包,即可在该环境的任意集群安装ZCE-iSCSI-CSI和ZCE-NFS-CSI。
部署ZCE-iSCSI-CSI
在ZStack Zaku主菜单,点击,进入集群界面。点击集群名称,进入集群详情页,点击功能组件,进入功能组件子页面。点击功能组件列表的ZCE-iSCSI-CSI后面的部署按钮,打开部署ZCE-iSCSI-CSI的弹窗。
- multipathVendor:填写multipathVendor,在存储节点上执行如下命令获得:
sed -n -re 's/(.*DiskVendor\s*=\s*)(.*)/\2/p' /etc/xms/xms.conf - multipathProduct:填写multipathProduct,在存储节点上执行如下命令获得:
sed -n -re 's/(.*DiskModel\s*=\s*)(.*)/\2/p' /etc/xms/xms.conf - 存储服务访问令牌:填写在 ZCE 存储服务控制台生成的访问令牌
- 块存储访问路径:设置块存储访问路径,部署ZCE-iSCSI-CSI时,将自动在存储服务创建该名称的块存储访问路径,请确保设置的名称不会与存储服务控制台上块存储管理-访问路径中已有的访问路径名称冲突
- 存储服务管理节点IP:在存储服务器控制台-资源管理-节点列表获取有管理角色的节点的 IP,分别在每个输入框填写各管理节点的 IP
- 存储服务管理节点名称:在存储服务器控制台-资源管理-节点列表获取有管理角色的节点的名称,分别在每个输入框填写各管理节点的名称
- 存储池名称:填写存储服务控制台-资源管理-存储池中的存储池名称,数据卷对应的块存储将创建到该存储池

- 同一个集群不支持同时部署ZStone和ZCE的CSI。
- 已成功部署ZCE-iSCSI-CSI的集群不能再次部署。
- 对于部署失败的集群,可以卸载后再重新部署。
- ZCE-iSCSI-CSI默认部署在 zstack-csi 命名空间,部署CSI时将同步创建名称为 zaku-rbd的存储类,可使用该存储类创建数据卷使用块存储卷。
- 可在集群详情页的操作日志子页面查看部署的详细日志。
ZCE-NFS-CSI
ZCE-NFS-CSI 用于 Kubernetes 与 ZCE 的文件存储服务对接,为容器提供持久化文件存储。部署 ZCE-NFS-CSI 后即可对接到ZCE的文件存储,在集群通过使用相关存储类创建数据卷进行使用。
准备工作
- 已存在可用的 ZCE 存储服务。
- 已在管理集群将ZCE-NFS-CSI的镜像及chart准备就绪。可按如下步骤操作:
- 请联系官方技术支持获取ZCE-NFS-CSI的镜像和chart资源包。
- 将获取的资源包上传到管理集群的第三个节点(如不是高可用集群则是第一个节点),并执行如下命令安装资源包:
bash zaku-${k8s version}-${version}-all-in-one-addon-csi.bin。其中${k8s version}与${version}分别是k8s集群版本及平台版本,根据具体的资源包名称填写。 - 只需在管理集群上传一次资源包,即可在该环境的任意集群安装ZCE-iSCSI-CSI和ZCE-NFS-CSI。
部署ZCE-NFS-CSI
在ZStack Zaku主菜单,点击,进入集群界面。点击集群名称,进入集群详情页,点击功能组件,进入功能组件子页面。点击功能组件列表的ZCE-NFS-CSI后面的部署按钮,打开部署ZCE-NFS-CSI的弹窗。
- 存储服务访问令牌:填写在 ZCE 存储服务控制台生成的访问令牌
- NFS共享地址:填写在存储服务控制台-文件存储管理-文件共享-NFS共享中创建的NFS共享的共享地址,分别在每个输入框填写各共享地址Note:
- 不同的 ZCE-NFS-CSI 需要使用不同的 NFS 共享,请给每个 ZCE-NFS-CSI 都创建一个 NFS 共享。
- 在 ZCE 存储服务控制台创建NFS共享时客户端组(V5版本)或客户端IP(V6版本)请设置为Every-Client。
- 存储服务管理节点IP:在存储服务器控制台-资源管理-节点列表获取有管理角色的节点的 IP,分别在每个输入框填写各管理节点的 IP

- 同一个集群不支持同时部署ZStone和ZCE的CSI。
- 已成功部署ZCE-NFS-CSI的集群不能再次部署。
- 对于部署失败的集群,可以卸载后再重新部署。
- ZCE-NFS-CSI默认部署在 zstack-csi 命名空间,部署CSI时将同步创建名称为 zaku-share 的存储类,可使用该存储类创建数据卷使用文件存储。
- 可在集群详情页的操作日志子页面查看部署的详细日志。
节点弹性伸缩组
概述
节点弹性伸缩组是适配 Kubernetes 集群的核心资源调度组件,核心通过对接云平台自动创建/删除云主机节点,再根据业务负载动态增减集群节点数量,实现资源供给与业务需求的精准匹配,是保障 K8S 集群高效、稳定运行的关键工具。
功能原理
- 扩容:当系统监测到集群资源紧张(存在待调度 Pod)时,会自动筛选符合条件的节点弹性伸缩组,通过云平台 API 按节点弹性伸缩组预设的节点配置(如计算规格、镜像、网络、存储等)自动创建云主机,完成初始化后将其加入集群供 Pod 调度。
- 缩容:当系统监测到集群资源长期闲置(如 CPU / 内存申请率持续低于 50%)时,会自动选取符合条件的节点弹性伸缩组,先通过 K8s 原生驱逐机制迁移目标节点上的可调度 Pod,再移除该节点并同步删除对应的云主机,释放资源。
- 伸缩组筛选:弹性扩缩容过程中,系统会从所有符合预设条件的节点弹性伸缩组中,随机选取目标组执行对应操作。
关键特性
- 多维度触发条件,支持基于 Pod Pending 状态、CPU / 内存使用率等触发伸缩。
- 兼容 K8s 原生规则,可关联节点选择器、节点亲和性 / 反亲和性配置,确保扩容节点符合 Pod 调度要求。
- 优雅伸缩机制,缩容前自动驱逐节点上的可调度 Pod 至其他健康节点,避免业务中断;内置节点健康检查,自动替换异常节点。
典型应用场景案例
- 周期性任务场景:每日固定时段(如早高峰数据处理、夜间备份)出现计算负载峰值,伸缩组按负载指标扩容,任务结束后快速缩容,提升资源利用率。
- 突发流量场景:APP 版本更新、热点事件引发突发访问量,伸缩组通过实时负载监测快速扩容,避免集群过载;流量回落时自动缩容,无需人工介入。
- 电商大促场景:促销活动期间流量激增,Pod 调度请求暴增,伸缩组触发扩容补充节点,保障订单、支付等核心服务正常运行;活动结束后自动缩容,降低闲置资源成本。
使用限制
- 支持 kubernetes 1.30及以上版本的集群;
- 仅支持自建集群,不支持纳管集群;
- 弹性扩容时,待扩容节点的 vCPU 总量不能超出许可证可用额度。
- 通过创建集群时初始化的节点,以及在节点列表手动添加的节点,均不属于节点弹性伸缩组管理范围,无法被自动缩容。
创建节点弹性伸缩组
在ZStack Zaku主菜单,点击,进入节点弹性伸缩组界面。点击创建节点弹性伸缩组,进入创建节点弹性伸缩组界面。
创建节点弹性伸缩组分为以下三步:
- 基础配置可参考以下示例输入相应内容:
- 伸缩组名称:设置节点弹性伸缩组的名称。命名规则:长度限制 1-50 字符,只能包含小写字母、数字及特殊字符 "-",且必须以小写字母开头,以数字或小写字母结尾
- 简介:可选项,备注相关信息
- 最小节点数:设置最小节点数。系统将保证节点弹性伸缩组下的节点数一直不会小于最小节点数
- 最大节点数:设置最大节点数。弹性扩容时,组内节点数将不会超过设置的最大节点数
- 节点标签:添加节点标签。扩容时将自动给节点添加设置的标签,同时系统会遵循 Pod指定的节点选择器和节点亲和性中的 requiredDuringSchedulingIgnoredDuringExecution 约束,仅考虑拥有符合这些约束条件的节点标签的节点弹性伸缩组
如图 1所示:图 1. 创建节点弹性伸缩组-基础配置 
- 节点配置设置节点配置,弹性扩容时将根据该节点配置在云平台创建云主机。可参考以下示例输入相应内容:
- 节点名称前缀:设置节点名称前缀,节点名称将由节点名称前缀及系统自动生成的随机数组成,云主机名称将由k8s集群名称和节点名称组成
- 云主机所属区域:选择云平台的区域,云主机将创建到该区域
- CPU架构:设置云主机的CPU架构
- 操作系统:选择云主机的操作系统
- CPU:设置云主机的CPU大小
- 内存:设置云主机的内存大小
- 根云盘容量:设置云主机的根云盘容量
- 镜像数据盘:可选,如集群中的应用较多镜像较大时建议添加1个数据云盘作为镜像数据盘,存储镜像数据
- 网络配置:选择节点业务网、管理网使用的三层网络,其中业务网将作为云主机的默认网络Note:
- 请确保业务网使用的三层网络能跟集群中其他节点互通。
- 集群的管理网和业务网复用的情况下,请确保业务网能被管理集群访问。
- 只有在集群的管理网和业务网不复用的情况下,才需设置管理网,此时管理网需使用跟管理集群网络同网段的网络。
- ROOT密码:设置云主机 ROOT 账号的密码
- SSH端口:设置SSH到云主机时使用的端口,默认为 22
- DNS服务器:添加DNS服务器,用于解析 K8S 集群外部域名,如未部署专用的DNS服务器,可填写公共 DNS 服务器地址,如223.5.5.5
- 高可用模式:可选,设置云主机的高可用模式,支持None和NeverStop两种,默认为None
- 云主机集群:可选,选择云平台的集群,云主机将创建到该集群,若未指定将由云平台自动分配
- 根云盘主存储:可选,设置云主机的根云盘使用的主存储,若未指定将由云平台自动分配
- 数据云盘主存储:可选,设置云主机的数据云盘使用的主存储,若未指定将由云平台自动分配
如图 2所示:图 2. 创建节点弹性伸缩组-节点配置 

- 确认信息
确认节点弹性伸缩组的配置信息,支持跳转修改。
如图 3所示:图 3. 创建节点弹性伸缩组-确认信息 
管理节点弹性伸缩组
在ZStack Zaku主菜单,点击,进入节点弹性伸缩组界面。
| 操作 | 描述 |
|---|---|
| 创建节点弹性伸缩组 | 为集群添加节点弹性伸缩组,以达到自动扩缩容节点的效果。 |
| 修改基础配置 | 修改节点弹性伸缩组的基础配置。 Note: 节点弹性伸缩组的状态异常时不能修改基础配置。 |
| 修改节点配置 | 修改节点弹性伸缩组的节点配置。 Note:
|
| 故障恢复 | 当云平台故障、许可证超额等原因导致弹性扩容反复失败时可能导致节点弹性伸缩组故障,在排查故障原因并处理后,可通过故障恢复使节点弹性伸缩组自动恢复正常。 |
| 节点弹性伸缩组详情 |
|
| 删除节点弹性伸缩组 | 删除节点弹性伸缩组。 Note: 删除节点弹性伸缩组将同步移除伸缩组下的节点并删除节点对应的云主机,这可能导致节点上原来运行中的容器组由于资源不足而异常,请谨慎操作。 |
节点
概述
节点是Kubernetes集群的基本组成元素,分为管理节点 (Master) 和计算节点 (Node)。用户可根据实际需求,为集群添加或移除计算节点。
添加节点
添加节点主要指为Kubernetes集群添加计算节点,以达到扩容的效果。
准备工作
- 将主机作为计算节点添加进集群前,需确保该主机已安装ZStack Cloud定制版操作系统。请联系官方技术支持获取与当前平台版本配套的定制版操作系统。
- 确保所有容器组外部网络段对应的外部网络的网卡都在主机存在,以保证相关网络服务正常运行。
添加节点
在ZStack Zaku主菜单,点击,进入节点界面。点击添加节点,进入添加节点界面。
添加节点分为以下三步:
- 节点配置可参考以下示例输入相应内容:
- 集群名称:默认展示当前集群名称
- 管理网与业务网复用:默认展示当前集群管理网与业务网复用是否开启,若开启,则节点的管理网 IPv4地址和业务网IPv4地址相同
- 节点信息:填写要添加的节点的信息
- 添加方式:添加节点的方式,包括IP地址、IP范围
- 业务网IPv4地址:填写节点的业务网IPv4地址。添加方式为IP地址时填写该字段
- 管理网IPv4地址:填写节点的管理网IPv4地址。添加方式为IP地址时填写该字段。管理网与业务网复用时,管理网 IPv4 地址和业务网 IPv4 地址相同
- 业务网IPv4范围:填写节点的业务网IPv4范围。添加方式为IP范围时填写该字段
- 管理网IPv4范围:填写节点的管理网IPv4范围。添加方式为IP范围时填写该字段。管理网与业务网复用时,管理网
IPv4 范围和业务网 IPv4 范围相同Note:
- 请确保填写的IP地址与机器实际配置一致。
- 请确保管理网IPv4地址与管理集群可连通。若管理网与业务网复用时,请确保业务网IPv4地址与管理集群可连通。
- 请确保各节点的业务网IPv4地址互相间可连通。
- 管理网与业务网不复用时,需确保管理网 IPv4 范围跟业务网 IPv4 范围的 IP 是一一对应的,同一个顺序上的 IP 属于同一个节点,如业务网 IPv4 范围的第 1 个 IP 和管理网 IPv4 范围的第 1个 IP 属于第 1 个节点。
- 批量添加节点时,本批次节点的管理网 IPv4 地址不能重复;本批次节点的业务网 IPv4 地址不能重复;管理网与业务网不复用的情况下,管理网 IPv4 地址和业务网 IPv4 地址不能重复。
- 本批次节点的管理网 IPv4 地址和业务网 IPv4 地址不能与集群已有节点重复。
- 节点名称:设置节点的名称。命名规则 :长度限制2-45字符
,只能包含小写字母、数字和分隔符 (-),
必须以小写字母开头,且不能以分隔符结尾。当添加方式是IP范围时,需指定起始后缀,节点名称由名称和后缀组成,后缀将会自动从起始后缀依次往上增加,如"-1/-2/-3"以此类推。Note:
- 添加节点过程中会将主机的hostname设置为节点名称。
- 节点名称不能与集群已有节点重复。
- 批量添加节点时,本批次节点使用的名称不能重复。
- 节点角色:默认为计算节点,可选GPU节点Note:
- GPU 节点在部署过程中将自动安装对应组件,请根据实际情况选择是否将机器安装为 GPU节点。
- 如勾选 GPU节点,请确保该节点已正确安装 GPU 驱动,如未安装驱动,则只会安装对应组件不会将节点设置为 GPU节点角色。
- GPU厂商:节点角色勾选 GPU节点时需填写该字段,选择该节点上的 GPU 的厂商,系统将安装对应厂商的 GPU 相关组件,当前支持:NVIDIA、华为、海光、天数、阿里巴巴
- 天数GPU虚拟化许可证:当集群内还没有天数GPU卡,且此次添加节点存在GPU节点且GPU厂商为天数时需填写该字段,填写天数 GPU 虚拟化的许可证,如需在容器中共享天数 GPU 需要该许可证,许可证从天数官方获取
- 节点ROOT密码:填写节点root账号密码 ,便于添加节点过程中 ,SSH到节点执行安装步骤,请确保每个节点的ROOT密码一致
- 节点SSH端口:填写SSH节点使用的端口 ,便于添加节点过程中 ,SSH到节点执行安装步骤 ,请确保每个节点的该端口可被连通
- DNS服务器:添加 DNS 服务器,提供 DNS 解析服务,解析集群外部域名,如未部署专用的 DNS 服务器,可填写公共 DNS 服务器地址,如 223.5.5.5
如图 1所示:图 1. 添加节点-节点配置 
- 高级配置可参考以下示例输入相应内容:
- 镜像数据盘:可选项,选择用于存储镜像数据的镜像数据盘。若未设置镜像数据盘,则镜像数据默认存放在系统盘。当使用的镜像较多较大时,建议给节点专门加载一块磁盘存放镜像,避免镜像数据将系统盘占满,导致系统异常。
如图 2所示:图 2. 添加节点-高级配置 
- 确认配置
确认节点的配置信息,支持跳转修改。
如图 3所示:图 3. 添加节点-确认配置 
点击确定后,系统将开始添加节点,集群状态变为扩缩容中,用户点击,进入集群界面,查看节点的添加情况。
- 目前仅支持添加计算节点和GPU节点,不支持添加管理节点。
- 集群处于异常或删除中状态时不允许添加节点。
管理节点
在ZStack Zaku主菜单,点击,进入节点界面。
| 操作 | 描述 |
|---|---|
| 添加节点 | 为集群添加计算节点,以达到扩容的效果。 Note:
|
| 移除节点 | 将节点从集群中移除。 Note:
|
| 停止调度 | 停止调度节点后,新部署的应用将无法调度到该节点上。该功能主要用于节点需要维护的场景。 Note:
|
| 恢复调度 | 恢复调度节点后,新部署的应用可以调度到该节点上。 Note:
|
| 节点详情 |
|
| 导出节点信息 | 将节点信息导出为CSV文件。支持导出当前页、全部 |
GPU池
GPU池是集合多块 GPU 形成的资源共享单元,实现对 GPU 的动态管理与分配,提升资源利用率并优化资源分配灵活性。
查看GPU池
在ZStack Zaku主菜单,点击,进入GPU池界面。

- 监控图表:统计所选集群下所有 GPU 卡总的显存使用率、显存申请率、GPU使用率,方便了解当前集群 GPU总的使用情况。
- GPU 列表:展示所选集群所有 GPU 卡信息,包括:UUID、型号、厂商、所属节点、已调度/总可调度容器数、显存、显存使用率、显存申请率、GPU使用率、GPU申请率。
- GPU 详情:可点击 GPU UUID,进入 GPU 详情页,查看 GPU使用率、显存使用率、温度、功耗的监控曲线图,以及当前已调度在该 GPU 上的容器组的信息
存储管理
存储类
概述
存储类(StorageClass)是 Kubernetes 中用于动态创建数据卷的配置模板,它定义了数据卷的属性、创建策略和所需的存储插件。
创建存储类
管理存储类
在ZStack Zaku主菜单,点击,进入存储类界面。
| 操作 | 描述 |
|---|---|
| 创建存储类 | 创建一个新的存储类。 |
| 更新Yaml | 通过Yaml方式对存储类进行更新 |
| 删除存储类 | 将存储类删除。 Note:
|
网络管理
外部网络
概述
外部网络为集群内的容器组、负载均衡类服务提供 IP 地址,支持在 Kubernets 集群外部访问容器组或负载均衡类服务。
- 服务外部网络
- 服务外部网络用于分配 LoadBalancer 类型服务使用的 IP,LoadBalancer 服务支持从Kubernetes集群外访问服务。
- 使用服务外部网络,要求所有管理节点必须存在相同的网卡名称,且网卡上均配置IP。
- 容器组外部网络
- 容器组外部网络用于分配容器组外部网络的 IP,容器组外部网络支持从Kubernetes集群外直接访问容器组IP。
- 默认情况下容器组使用原生 Kubernetes 容器网络,可在工作负载-高级配置-网络设置配置容器组使用的网络。
- 使用容器组外部网络,要求所有节点必须存在相同的网卡名称。
创建外部网络
在ZStack Zaku主菜单,点击。在外部网络界面,点击创建外部网络,弹出创建外部网络界面。
- 名称:设置外部网络名称。命名规则:长度限制1-128个字符,只能包含中文汉字、英文字母、数字和以下7种英文字符"-"、"_"、"."、"("、")"、":"、"+"
- 简介:可选项,备注外部网络相关信息
- 网卡名称:选择外部网络使用的网卡,仅支持选择所有管理节点上名称相同且未被其他外部网络使用的网卡。Note: 外部网络网卡需满足如下要求:
- 如需使用服务外部网络,请确保所有管理节点都存在相同名称的网卡,且网卡上均有配置IP。
- 如需使用容器组外部网络,请确保所有节点都存在相同名称的网卡。
- 可使用如下命令配置IP:zs-network-setting -i ${网卡名} $ip $netmask
- 可通过创建 bond 的方式使物理机、虚拟机节点或不同操作系统的节点的网卡名称保持一致。
- IPv4 子网掩码:设置外部网络网络段的子网掩码,例如:255.255.0.0
- IPv4 网关:设置外部网络网络段网关,例如:172.20.0.1Note: 由 IPv4 子网掩码和 IPv4 网关确定外部网络的 CIDR,不同外部网络之间的 CIDR 不能有交集。

管理外部网络
在ZStack Zaku主菜单,点击,进入外部网络界面。
| 操作 | 描述 |
|---|---|
| 创建外部网络 | 创建一个新的外部网络。 |
| 添加网络段 | 为外部网络添加新IPv4网络段,支持添加服务外部网络和容器组外部网络2种类型的网络段 Note:
|
| 外部网络详情 | 进入外部网络详情页,查看外部网络基本信息、IP使用情况,并管理外部网络下的网络段。 |
| 删除外部网络 | 删除外部网络。 |
外部网络详情
外部网络网络段
| 操作 | 描述 |
|---|---|
| 添加网络段 | 为外部网络添加新的网络段,支持服务外部网络和容器组外部网络2种类型的网络段。 Note:
|
| 管理IP范围 | 管理网络段的IP范围,包括:删除已有IP范围、添加新的IP范围。 Note:
|
| 设置共享模式 | 设置网络段的共享模式。目前支持以下两种模式:
Note:
|
| 删除网络段 | 删除网络段。 Note: 当网络段下有 IP
被使用时,不允许删除网络段。 |
项目管理
项目
概述
项目是租户的一种,用于实现资源隔离和用户权限管理,用户加入项目后,可拥有项目下资源的查看或操作权限。
- 用户加入项目后,即具有查看和管理该项目下资源的权限。
- 用户在当前项目下创建的所有资源均属于这个项目。
- 同一项目下不同用户可查看的资源相同,但不同项目间的资源相互隔离。
- 支持将属于同一个团队或具有相同职能的用户加入同一项目,从而确保不同团队之间权限分明、资源不会相互干扰,保障项目数据安全性和机密性。
创建项目
在ZStack Zaku主菜单,点击,进入项目界面。点击创建项目,弹出创建项目页面。
- 名称:设置项目名称。命名规则:长度限制1~128字符,只能包含汉字、英文字母、数字和以下7种英文字符(-) (_) (.) (() ()) (:) (+)
- 简介:可选项,备注项目相关信息

管理项目
在ZStack Zaku主菜单,点击,进入项目界面。
| 操作 | 描述 |
|---|---|
| 创建项目 | 创建新项目。 |
| 编辑项目 | 编辑项目的名称和简介。 |
| 添加成员 | 将已有用户加入到当前项目,并分配权限,支持只读、读写两种权限:
Note: 支持一次性添加最多50个成员。 |
| 移除成员 | 将用户从项目移除,移除后,该用户不再具有该项目下资源的查看和管理权限。 |
| 添加命名空间 | 将命名空间加入到当前项目,使项目成员能够查看和管理该命名空间下的资源。
Note: 一个项目可添加多个命名空间,一个命名空间只能加入一个项目。 |
| 移除命名空间 | 将命名空间从项目移除。移出后,项目成员不再具有查看和管理该命名空间下资源的权限。 |
| 删除项目 | 删除项目。 Note:
|
用户
概述
- 本地用户 :平台中创建的用户,支持启用、禁用、重置密码、设为管理员、取消管理员、加入项目等操作。
- 第三方用户 :通过第三方认证同步到平台的用户,支持设为管理员、取消管理员、加入项目等操作。
用户权限
- admin :超级管理员 ,具有全部平台权限。
- 管理员 :admin可将用户设为管理员,则用户拥有管理员权限,除不能管理其它管理员和第三方认证外,管理员拥有平台其它所有权限。
- 普通用户 :需加入项目后才具有平台权限。
- 普通用户具有以下功能模块和资源的操作权限:
- 容器编排
- 制品仓库
- 容器运维
- 普通用户对以下平台级别的功能模块或资源不具有操作权限:
- 集群管理
- 设置
Note: 普通用户虽不具有外部网络的管理权限 ,但可以使用由admin全局共享或指定共享到其所属项目的外部网络资源。 - 普通用户对具体资源的权限是由其加入的项目和项目的命名空间决定的:
- 项目 :普通用户可查看和管理其加入项目下的资源 ,项目可为普通用户分配资源只读权限或读写权限
- 只读权限 :仅允许普通用户查看项目下的资源
- 读写权限 :允许普通用户查看和操作项目下的资源,包括创建、修改、删除等
- 命名空间 :普通用户可查看和管理其加入项目下的命名空间中的资源
- 如项目为普通用户分配了只读权限,则普通用户可以查看命名空间中的资源
如项目为普通用户分配了读写权限,则普通用户可以查看和操作命名空间中的资
源 ,包括创建、删除、修改等
- 项目 :普通用户可查看和管理其加入项目下的资源 ,项目可为普通用户分配资源只读权限或读写权限
- 普通用户具有以下功能模块和资源的操作权限:
创建本地用户
在ZStack Zaku主菜单,点击,进入用户界面。点击创建用户,进入创建用户页面。
- 用户名:设置用户名称。命名规则:长度限制2~30字符,输入内容只能包含小写字母、数字和特殊字符(_) (-),且必须以字母开头
- 简介:可选项,备注用户相关信息
- 密码:设置用户的密码。密码规则:长度限制8~32字符,至少包含大写字母、小写字母、数字、特殊字符中的3种
- 确认密码:再次确认用户的密码
- 项目:选择用户加入的项目并为其设置权限。用户默认无任何权限,只有加入项目后才能拥有该项目下的资源权限,一个
用户可以加入多个项目
- 只读权限:仅允许用户查看项目下的资源。
- 读写权限:允许用户查看和操作项目下的资源,包括创建、修改、删除等。

管理用户
管理本地用户
在ZStack Zaku主菜单,点击,进入本地用户界面。
| 操作 | 描述 |
|---|---|
| 创建用户 | 创建一个新的用户。 |
| 禁用用户 | 禁用用户,禁用后,该用户将无法登录平台。 |
| 启用用户 | 启用用户,启用后,该用户可正常登录平台。 |
| 重置密码 | 重置用户密码,重置时无需校验旧密码。 |
| 设为管理员 | 将用户设为管理员,除不能管理其它管理员和第三方认证外,管理员拥有平台其它所有权限。 |
| 取消管理员 | 将用户取消管理员,将取消用户的所有权限。 |
| 添加项目 | 将用户加入一个或多个项目。 |
| 从项目移除 | 将用户从已加入的项目移除。 |
| 修改权限配置 | 修改用户在项目中的权限配置。 |
| 用户详情 | 进入用户详情页,查看用户基本信息和已加入的项目。 |
| 删除用户 | 将用户删除,删除时,将同步收回用户所有的权限。 |
管理第三方用户
在ZStack Zaku主菜单,点击,进入第三方用户界面。
| 操作 | 描述 |
|---|---|
| 设为管理员 | 将用户设为管理员,除不能管理其它管理员和第三方认证外,管理员拥有平台其它所有权限。 |
| 取消管理员 | 将用户取消管理员,将取消用户的所有权限。 |
| 添加项目 | 将用户加入一个或多个项目。 |
| 从项目移除 | 将用户从已加入的项目移除。 |
| 修改权限 | 修改用户在项目中的权限配置。 |
| 用户详情 | 进入用户详情页,查看用户基本信息和已加入的项目。 |
| 删除用户 | 将用户删除,删除时,将同步收回用户所有的权限。 Note: 第三方用户删除后,若未在第三方认证中心删除该用户,则该用户再次登录平台时平台会再次同步创建该用户。 |
命名空间
概述
命名空间 (Namespace) 为Kubernetes集群提供虚拟隔离作用,不同命名空间中的资源彼此隔离。
命名空间具有以下特点:
资源隔离与权限控制
- 资源隔离:用户可根据业务需求创建多个命名空间,不同命名空间管理不同用途的资源,从而实现工作区间的有效分配,例如,将开发环境、测试环境、联调环境资源分别放在不同的命名空间下。
- 权限控制:命名空间可被分配给不同的项目,从而使项目下的成员可以查看和管理命名空间下的资源。一个命名空间只能同时分配给一个项目,除该项目下的成员和管理员外,其他用户无法查看和管理该命名空间。Note: 命名空间未加入任何项目时,则该命名空间下的 Kubernetes 资源无法被查看和管理。
资源用量控制
用户可为命名空间设置资源配额,当多团队或多用户共享集群资源时,可通过该方式有效控制资源用量。
- CPU申请配额:该命名空间下所有容器组CPU申请值总和上限,如不设置,则默认无限制。
- CPU限制配额:该命名空间下所有容器组CPU限制值总和上限,如不设置,则默认无限制。
- 内存申请配额:该命名空间下所有容器组内存申请值总和上限,如不设置,则默认无限制。
- 内存限制配额:该命名空间下所有容器组内存限制值总和上限,如不设置,则默认无限制。
- 数据卷容量配额:该命名空间下可创建的数据卷容量总和上限,如不设置,则默认无限制。
- 容器组配额:该命名空间下可创建的容器组总数上限,如不设置,则默认无限制。
- 服务配额:该命名空间下可创建的服务总数上限,如不设置,则默认无限制。
- LoadBalance服务配额:该命名空间下可创建的LoadBalance服务总数上限,如不设置,则默认无限制。Note: LoadBalance服务是服务的一种,因此LoadBalance服务配额不能超过服务配额。
- 配置集配额:该命名空间下可创建的配置集总数上限,如不设置,则默认无限制。
- 保密字典配额:该命名空间下可创建的保密字典总数上限,如不设置,则默认无限制。
- GPU显存配额:该命名空间下可使用的对应厂商的GPU显存总量,如不设置,则默认无限制。未设置的厂商默认无限制。
创建命名空间
在ZStack Zaku主菜单,点击,进入命名空间界面。点击创建命名空间,弹出创建命名空间界面。
- 名称:设置命名空间名称。命名规则:长度限制1-50字符,只能包含小写字母、数字及分隔符(-),且必须以小写字母开头,数字或小写字母结尾
- 项目:将命名空间加入项目,允许项目成员查看和管理该命名空间下的Kubernetes资源Note: 如未手动指定,命名空间将被加入默认项目。
- 标签:通过键/值对形式为命名空间添加标签
- 键:填写标签键Note:
- 通常情况下,键名可包含 1-63 个字符,包括字母、数字和以下特殊字符:“-”、“_”、“.”,但特殊字符不能用于键名开头或结尾。
- 支持在键名前添加前缀,并用 ”/“ 与键名连接,例如,”k8s.io/app“,填写在 ”/“ 之前的所有字符都将被认为是键名前缀,之后的所有字符都将被认为是键名。
- 键名前缀可包含 1-253 个字符,包括小写字母、数字和以下特殊字符 “-”、“.”,不能连续使用 2 个及以上特殊字符,且不能将特殊字符用于前缀开头或结尾。
- 请注意,您并不必须使用键名前缀,但必须填写键名。
- 值:填写标签值
- 键:填写标签键
- 注解:通过键/值对形式为命名空间添加注解
- 键:填写注解键Note:
- 通常情况下,键名可包含 1-63 个字符,包括字母、数字和以下特殊字符:“-”、“_”、“.”,但特殊字符不能用于键名开头或结尾。
- 支持在键名前添加前缀,并用 ”/“ 与键名连接,例如,”k8s.io/app“,填写在 ”/“ 之前的所有字符都将被认为是键名前缀,之后的所有字符都将被认为是键名。
- 键名前缀可包含 1-253 个字符,包括小写字母、数字和以下特殊字符 “-”、“.”,不能连续使用 2 个及以上特殊字符,且不能将特殊字符用于前缀开头或结尾。
- 请注意,您并不必须使用键名前缀,但必须填写键名。
- 值:填写注解值
- 键:填写注解键

管理命名空间
在ZStack Zaku主菜单,点击,进入命名空间界面。
| 操作 | 描述 |
|---|---|
| 创建命名空间 | 在集群下创建命名空间。 |
| 设置资源配额 | 为命名空间设置资源配额,设置后,该命名空间下创建/使用的资源数量不能超过该配额。 |
| 设置默认资源限制 | 设置命名空间下容器组的默认CPU/内存资源限制。设置后,该命名空间下创建的容器组将默认使用该CPU/内存限制值。 |
| 加入项目 | 将命名空间加入项目,允许项目成员查看和管理该命名空间下的Kubernetes资源:
|
| 从项目移除 | 将命名空间从项目移除。移除后,原项目成员无法继续查看和管理该命名空间下的Kubernetes资源。 Note: 命名空间不属于任何项目时,则该命名空间下的
Kubernetes 资源无法被查看和管理。 |
| 编辑标签注解 | 编辑命名空间标签、注解 |
| 命名空间详情 | 进入命名空间详情页,查看命名空间的基本信息。 |
| 删除命名空间 | 将命名空间从集群中移除。 Note: 该操作将同步删除当前命名空间下的全部资源,请谨慎操作。 |



