• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

H3C灵犀使能平台-基础(Base)组件 安装部署指导-E0501-5W100

01-正文

本章节下载 01-正文  (2.94 MB)

01-正文

1 概述

1.1  简介

H3C使能平台(LinSeer Hub)采用软硬件一体化的全方位高性能交互开发模式。平台为用户提供了AI作业的调度、模型训练、模型评估、模型推理、在线推理服务等功能,同时为了辅助用户管理开发资源,也提供了AI资产、AI资源管理等功能。为解决部署难的问题,平台提供基础软硬件集群环境的一键自动部署的功能。通过使能平台,用户可以实现对资源的统一监管、对作业的调度与监控、训练数据可视化、工程化的模型开发管理,满足用户的不同业务场景的开发需求。

1.2  适用范围

本手册适用于H3C使能平台Base单集群版本的安装部署操作。


2 部署说明

2.1  部署规划

2.1.1  支持操作系统

表2-1 支持的操作系统列表

厂商

版本

管理节点

计算节点

存储

Ubuntu

Ubuntu Server 22.04

 

H3C

H3C NingOS V3 24.03

不支持CX

Kylin OS

Kylin Linux Advanced Server release V10 (Sword)

不支持CX

 

说明

Ubuntu版本下载链接:

https://old-releases.ubuntu.com/releases/22.04/ubuntu-22.04-live-server-amd64.iso

 

2.1.2  服务器配置说明

1. 集群版资源配置

表2-2 集群版管理节点硬件配置要求

指标项

最低配置

推荐配置

机器数量

1台

3台

CPU架构

x86-64(Intel64/AMD64)

x86-64(Intel64/AMD64)

CPU内核

≥40核、2.0Ghz主频及以上

≥64核、2.0Ghz主频及以上

内存

≥256G (8*32G)

≥512G(16*32G)

网卡

1个千兆网卡

1个千兆及以上网卡

磁盘

见表2-13管理节点磁盘分区规划建议

 

表2-3 集群版各组件CPU配置要求

指标项

最低CPU配置

推荐CPU配置

服务说明

Base

24核

32核

操作系统、K8S底座、高可用中间件、Base服务等

业务组件

16核

32核

为ModelBuilder、AppBuilder、RT、AI助手预留的CPU资源

总计

40核

64核

 

 

表2-4 集群版各组件内存配置要求

指标项

最低内存配置

推荐内存配置

服务说明

Base

96G

128G 及以上

操作系统、K8S底座、高可用中间件、Base服务等

ModelBuilder

16G

32G 及以上

开发环境Jupyter、训练任务等组件服务

AppBuilder

64G

192G 及以上

应用服务中间件(milvus、Kafka、ES、ETCD)、应用业务服务(知识库、推理、插件、工作流智能体、系统管理)

RT

64G

128G 及以上

推理服务等

AI助手

16G

32G 及以上

AI助手

总计

256G

512G 及以上

 

 

说明

·     如需要安装业务组件,参见表格进行CPU和内存的配置。一般Base的配置包含了操作系统及底层服务基本的资源占用,如有其他服务请根据实际情况估计资源占用。

·     一体机部署时,如果计算节点与管理节点共用,最低内存配置建议为1T。

·     管理节点用作Worker节点时,需满足管理服务的同时,达到计算节点的资源要求。

 

表2-5 集群版计算节点硬件配置要求

指标项

最低配置

推荐配置

机器数量

1台

2台(支持扩展)

CPU架构

x86-64(Intel64/AMD64)

x86-64(Intel64/AMD64)

CPU内核

≥32核、2.0Ghz主频及以上

(根据业务需求确定)

每台节点≥48核、2.0Ghz主频及以上

(根据业务需求确定)

内存

256GB内存

(根据业务需求确定)

1TB及以上内存

(根据业务需求确定)

网卡

1个100G及以上RDMA网卡

1个千兆及以上网卡

1个100G及以上RDMA网卡

1个万兆及以上网卡

磁盘

见表2-14计算节点磁盘分区规划建议

 

说明

·     如需要在计算节点上安装业务组件,包括Modelbuilder、AppBuilder、RT或者AI助手,请参见对应产品的安装部署指导,增加硬件配置。

·     计算节点请结合自身业务规模适当扩缩容。

 

表2-6 外置存储要求

指标项

最低配置

推荐配置

业务节点外置存储

根据业务规模,用户指定,支持NFS、CX存储和Minio对象存储

根据业务规模,用户指定,支持NFS、CX存储和Minio对象存储

 

2. 一体机版资源配置(CPU为Intel/AMD)

表2-7 一体机版本硬件配置要求

指标项

最低配置

推荐配置

机器数量

1台

1台

CPU架构

x86-64(Intel64/AMD64)

x86-64(Intel64/AMD64)

CPU内核

≥40核、2.0Ghz主频及以上

≥64核、2.0Ghz主频及以上

内存

≥256G (8*32G)

≥512G(16*32G)

网卡

1个千兆网卡

1个千兆及以上网卡

磁盘

见表2-10 管理节点磁盘分区规划建议,数据盘3 根据业务使用量适当扩缩容

 

表2-8 一体机版本CPU配置要求(非国产卡)

指标项

最低CPU配置

推荐CPU配置

服务说明

Base

24核

32核

操作系统、K8S底座、高可用中间件、Base服务等

业务组件

16核

32核

为ModelBuilder、AppBuilder、RT、AI助手预留的CPU资源

总计

40核

64核

 

 

表2-9 一体机版本内存配置要求

指标项

最低内存配置

推荐内存配置

服务说明

Base

96G

128G 及以上

操作系统、K8S底座、高可用中间件、Base服务等

ModelBuilder

16G

32G 及以上

开发环境Jupyter、训练任务等组件服务

AppBuilder

64G

192G 及以上

应用服务中间件(milvus、Kafka、ES、ETCD)、应用业务服务(知识库、推理、插件、工作流智能体、系统管理)

RT

64G

128G 及以上

推理服务等

AI助手

16G

32G 及以上

AI助手

总计

256G

512G及以上

 

 

3. 一体机版资源配置(CPU为海光)

表2-10 一体机版本硬件配置要求

指标项

最低配置

推荐配置

机器数量

1台

1台

CPU架构

x86-64(Hygon)

x86-64(Hygon)

CPU内核

≥64核、2.0Ghz主频及以上

≥96核、2.0Ghz主频及以上

内存

≥256G (8*32G)

≥512G(16*32G)

网卡

1个千兆网卡

1个千兆及以上网卡

磁盘

见表2-10 管理节点磁盘分区规划建议,数据盘3 根据业务使用量适当扩缩容

 

表2-11 一体机版本CPU配置要求

指标项

最低CPU配置

推荐CPU配置

服务说明

Base

32核

48核

操作系统、K8S底座、高可用中间件、Base服务等

业务组件

32核

48核

为ModelBuilder、AppBuilder、RT、AI助手预留的CPU资源

总计

64核

96核

 

 

表2-12 一体机版本内存配置要求

指标项

最低内存配置

推荐内存配置

服务说明

Base

96G

128G 及以上

操作系统、K8S底座、高可用中间件、Base服务等

ModelBuilder

16G

64G 及以上

开发环境Jupyter、训练任务等组件服务

AppBuilder

64G

128G 及以上

应用服务中间件(milvus、Kafka、ES、ETCD)、应用业务服务(知识库、推理、插件、工作流智能体、系统管理)

RT

64G

128G 及以上

推理服务等

AI助手

16G

64G 及以上

AI助手

总计

256G

512G及以上

 

 

说明

·     各组件内存容量根据一体机承载业务情况动态调整。

·     若一体机需要跑较多的AI任务,需要在推荐配置上进行资源的适当扩容。

·     如果存在对应组件,不可小于最低资源配置,最低资源配置为限定作业数量和规模情况下可以保证系统正常运行的配置。

 

4. 磁盘划分规划

根据不同的业务量和不同的服务器配置需求进行不同的磁盘RAID和分区规划。

表2-13 管理节点磁盘划分规划建议

磁盘

分区

格式

最小

推荐

所属模块

弹性调整策略

系统存储

最小:480GiB

推荐:960GiB

/

ext

450GiB

890GiB

操作系统

软件安装包

客户自行规划

根目录如有其他存储用途,请根据实际业务量适当调整。

/boot

ext4

3GiB

3GiB

操作系统

固定大小

/boot/efi

efi

5GiB

5GiB

操作系统

固定大小

/var/lib/etcd

xfs

10GiB

50GiB

Matrix

根据实际业务量适当调整。

LinseerHub系统数据存储

最小:1.2TiB

推荐:2.4TiB

/var/lib/docker

xfs

300GiB

400GiB

Matrix

根据实际业务量适当调整。(存放本地docker镜像数据)

/volumes/data0

xfs

160GiB

160GiB

数据库、mq、redis

根据实际业务量适当调整。需要根据业务量进行扩容处理

/volumes/data1

xfs

120GiB

360GiB

Influxdb

根据实际业务量适当调整。

 

/var/lib/ssdata

ext4

200GiB

200GiB

推理日志

根据实际业务量适当调整。

/linseer_hub_data

xfs

100GiB

500GiB

应用中间件

根据实际业务量适当调整。 Kafka 、etcd、mvious、ES

/linseer_copilot_data

xfs

200GiB

500GiB

AI助手中间件

根据实际业务量适当调整。

LinseerHub公共数据存储

根据业务使用情况配置

/volumes/oss0

xfs

2TiB

3.84TiB

minio

业务使用存储,包含公共资产、业务镜像和业务中间过程数据(用于用户存储时)

LinseerHub公共数据存储备份

根据业务使用情况配置

/volumes/oss1

xfs

2TiB

3.84TiB

minio

用作MInio的备份存储

 

说明

管理节点数据盘分区根据自身业务容量选择扩缩容。

数据盘推荐使用LVM分区类型,方便磁盘容量的扩展。

 

表2-14 计算节点磁盘划分规划建议

磁盘

分区

格式

默认大小

所属模块

弹性调整策略

系统存储

 

最小:400G

推荐:960G

/

ext

400GiB

操作系统

根据实际业务量适当调整。

/boot

ext4

3GiB

操作系统

固定大小

/boot/efi

efi

5GiB

操作系统

固定大小

数据存储:

最小:1.2TiB

推荐:2.4TiB

/var/lib/docker

xfs

800GiB

Matrix

根据实际业务量适当调整。(存放本地docker镜像数据)

 

说明

计算节点数据盘分区根据自身业务容量选择扩缩容。

数据盘推荐使用LVM分区类型。

 

5. IP地址规划

表2-15 IP地址规划表

IP地址规划

作业

备注

Master节点1 IP

为安装了操作系统的Master节点分配的IP地址

必选项(单机部署模式只需要一个Master节点)

加入同一集群的所有Master节点的IP地址必须处于同一网段

Master节点2 IP(可选)

为安装了操作系统的Master节点分配的IP地址

Master节点3 IP(可选)

为安装了操作系统的Master节点分配的IP地址

北向管理虚IP

部署的集群使用

必选项,集群北向管理虚IP必须在Master节点所处的网段内

Worker节点 *N IP(可选)

为安装了操作系统的Worker节点分配的IP地址

若需要加入Worker节点需要分配与Master同网段的IP

 

6. 客户端配置需求

用户不需要安装客户端软件,使用浏览器即可访问使能平台。推荐使用的浏览器为Google Chrome 92+及以上版本。

2.2  部署包说明

2.2.1  安装包详情

表2-16 安装包详情

安装包

安装包名称

安装包功能说明

获取方式

使能平台Base安装包

LinseerHub-Base-EXXXX.zip

主安装包

由H3C提供

 

2.2.2  辅助安装包

辅助安装包中包含部分操作系统的GPU插件,网卡插件,以及针对操作系统、驱动部署和网卡等的常用工具、测试工具和补丁包等。安装包仅提供部分工具,作为辅助。

表2-17 辅助安装包

安装包

安装包名称

安装包功能说明

获取方式

辅助安装工具包

tools.zip

辅助安装工具包

请联系H3C工作人员获取

 

2.2.3  依赖安装包说明

表2-18 依赖安装包

安装包

安装包名称

安装包功能说明

获取方式

Matrix安装包

Matrix-V100R001B01D014SP03-x86_64.zip

依赖安装包

请联系H3C工作人员获取

 

说明

使能Base部署包与节点所在操作系统的Matrix版本强相关,请确认好操作系统,选择对应的安装包。

 

 


3 安装部署

图3-1 单节点安装流程

 

图3-2 多节点安装流程

 

3.1  ‍部署前准备(重要)

3.1.1  安装操作系统

安装操作系统的详细介绍,请参见《H3C使能Base适配的操作系统安装指导》。

如系统时间与北京时间相差过大,安装完操作系统后,请按如下步骤操作:

(1)     执行date -s '当前时间' 命令,同步北京时间。

(2)     执行hwclock -w命令同步系统时间至硬件,防止重启系统后时间会改变。

(3)     当需要安装的组件的存储大于80%时,k8s会发生POD驱逐,安装前请检查存储空间。

(4)     当存储的读写速度小于一定阈值时,安装K8S以及其他组件可能会发生异常,请在安装前执行类似dd if=/dev/zero of=./dump_file oflag=direct bs=1M count=1024 命令检查磁盘读写是否正常,基本保证需要读写速度大于400M/s。

(5)     操作系统安装 chrony (Matrix依赖)。

注意

·     Matrix安装前必须保证操作系统时间正常,如安装完Matrix之后修改操作系统时间,会导致Matrix集群异常。

·     如遇到时区不一致,请修改一致,否则会导致监控时间不一致问题,影响使用。(sudo timedatectl set-timezone Asia/Shanghai)

·     请勿使用默认主机名(localhost、localhost.localdomain、localhost4、localhost4.localdomain4、localhost6、localhost6.localdomain6)。主机名称最长63个字符,仅支持小写字母、数字、连字符和小数点,不能以0开头且全为数字,不能以0x、连字符、小数点开头,以连字符、小数点结尾。

·     请勿使用以下关键字“controller、master、masters、worker、new_nodes、etcd、nodes、new_masters”。

 

3.1.2  集群时钟同步

为了保障集群节点间进程、服务、及网络通信、IO等时间一致性,需要保障集群时钟的一致性。

若数据中心集群内部有其他系统平台与H3C使能Base关联,比如存储系统平台,需要数据中心集群内部时钟保持一致性,此时可以考虑选择集群内使用统一时钟服务器。

1. 集群内时钟一致性

集群主节点,默认作为使能Base集群时钟服务器,集群的从节点,以及计算节点会去同步该主节点时间;使能Base集群在安装部署完成后,自动完成时钟同步及配置。

如需调整时钟服务器:

在浏览器中输入使能Base集群主节点的登录地址,进入Matrix登录页面。

登录地址格式为:https://ip_address:8443/matrix/ui,例如:https://172.16.101.200:8443/matrix/ui。

使能Base默认使用内置时钟服务器,可修改为外置服务器,如图3-3所示。

图3-3 调整时钟服务器

标题: fig:

 

从集群节点执行如下命令,查看chrony服务运行状态和时钟同步信息,如图3-4所示。

systemctl status chronyd.service

chronyc sources -v

chronyc tracking

date -R

图3-4 查看chrony服务运行状态和时钟同步信息

标题: fig:

 

备注:已知chrony 3.2版本存在bug,在Ubuntu 20.04系统下无法正常进行时间同步,如上图所示;可以升级至chrony 3.5版本,与使能Base集群节点进行时钟同步。对应操作系统的的chrony版本可自行下载。

Ubuntu 20.04系统下无法正常进行时间同步,如图3-5

图3-5 无法正常进行时间同步

标题: fig:

 

2. 数据中心集群统一时钟服务器配置

该方式采用数据中心统一时钟服务器,H3C使能Base以及涉及到的所有节点(包含共享存储系统平台)均同步该时钟服务器的时间。

首先,数据中心统一时钟服务器chrony服务运行正常,最好可以联网同步外部时钟,允许集群内部网段节点同步。

数据中心统一时钟服务器mu01配置信息,如图3-6

图3-6 数据中心统一时钟服务器mu01配置信息

标题: fig:

 

其他集群节点chrony服务配置信息,如图3-7

图3-7 其他集群节点chrony服务配置信息

标题: fig:

 

其他集群节点chrony服务配置信息,如图3-8

图3-8 其他集群节点chrony服务配置信息

标题: fig:

 

示例中10.99.232.233为mu01时钟服务器的IP地址。

集群节点执行如下命令,查看chrony服务运行状态和时钟同步信息:

systemctl status chronyd.service

chronyc sources -v

chronyc tracking

date -R

说明

每个集群节点需安装chrony服务,在每个节点的chrony配置文件chrony.conf中配置,数据中心统一时钟服务器作为时间源,重启chrony服务以使配置生效。

 

使用如下命令,可以立即调整系统时钟,使其与时钟服务器同步。

chronyc makestep

该命令用于系统启动时或者系统时钟有显著偏差时。

说明

Ubuntu系统chrony服务的配置文件为/etc/chrony/chrony.conf。

NingOS系统为/etc/chrony.conf。

 

使用如下命令修改系统时区。

timedatectl set-timezone Asia/Shanghai

修改系统时区,如图3-9

图3-9 修改系统时区

标题: fig:

 

数据中心统一时钟服务器,若可联网推荐配置使用的时钟服务器:

·     cn.pool.ntp.org

·     ntp.aliyun.com

·     ntp.tencent.com

·     time.apple.com

·     time.windows.com

·     asia.pool.ntp.org

3.1.3  安装unzip

安装包解压需要安装unzip命令,请根据操作系统的情况自行安装。

3.1.4  备份重要文件和清理安装环境

请备份重要文件,包括但不限于/etc/hosts、/etc/profile以及~/.bashrc等文件。检查/etc/hosts,/etc/profile以及~/.bashrc等文件,如果发现以下情况,请按照手册说明清理遗留数据。如果Matrix仍在运行,不要清理

·     打开/etc/hosts,如果有以下信息,请清除。

图3-10 打开/etc/hosts

标题: fig:

 

·     打开/etc/profile,如果有以下信息,请清除。

图3-11 打开/etc/profile

标题: fig:

 

·     打开~/.bashrc,如果有以下信息,请清除。

图3-12 打开~/.bashrc

标题: fig:

 

·     清除历史helm包记录,需要清除管理节点和计算节点(如有)。

rm -f /data/chartmuseum/*

3.1.5  准备Matrix安装包

联系H3C工作人员,获取Matrix安装包,安装包名称Matrix-V100R001B01D014SP03-x86_64.zip。

3.1.6  【计算节点】安装Matrix

说明

GPU驱动、网卡驱动可能依赖一些基础的安装包,为了简化驱动安装过程,建议先安装Matrix依赖,再进行驱动的安装。期间如果驱动安装有依赖问题,请先解决依赖。

 

计算节点在被加入系统使用前,需要安装Matrix,安装Matrix的方式请参见附录(示例不代表所有版本Matrix安装步骤)。

3.1.7  【计算节点】安装GPU驱动

根据GPU卡类型,选择合适的驱动进行安装。示例参见附录(示例不代表所有的驱动安装步骤)。

3.1.8  【计算节点】安装模组驱动

根据模组类型,选择合适的驱动进行安装。示例参见附录(示例不代表所有的驱动安装步骤)。

3.1.9  【计算节点】安装网卡驱动

根据网卡类型,选择合适的驱动进行安装。示例参见附录(示例不代表所有的驱动安装步骤)。

针对RoCE自动化参数网配置,请查看附录RoCE自动化参数网配置指导。

3.2  软件部署

3.2.1  安装包准备

·     将使能平台的安装包上传至预安装的管理节点的服务器上,如果是多管理节点部署,只需要将安装包上传到其中一台管理节点上即可。安装包约12G。

·     解压压缩包到任意目录

·     如果期望在安装软件时连同Matrix一起安装,请将3.1.5  准备Matrix安装包的Matrix安装包放到./LinseerHub-Base-EXXXX/dependency目录下。

3.2.2  安装前检查

·     检查是否存在/linseerhub/system文件夹及挂载点。

¡     查看/linseerhub/system是否存在,若存在则执行下面操作。

¡     多次执行umount /linseerhub/system,直到提示/linseerhub/system没有挂载点。

¡     删除/linseerhub/system文件夹。

·     /volumes文件夹不可随意删除,若要删除请先卸载Matrix,确保文件夹不在被集群使用后删除。

·     新安装软件需要干净的操作系统或干净的Matrix,经常安装卸载其他软件的系统可能存在未知的冲突问题。

·     检查节点互信,目前单机部署也需要有互信文件。执行ssh_keygen命令生成。

·     关于存储的说明:

¡     使能平台提供内置的Minio,可作为用户的存储。如果用户需要高性能存储建议使用外置的高性能存储,目前高性能存储支持CX。

¡     使用CX时,Master节点不可用作worker节点,否则会导致CX不可用。

3.2.3  安装软件

·     首先确定要配置的管理节点不在其他集群中。

·     安装前配置:执行安装脚本前,需要先配置config.yaml文件,用来声明集群的北向IP,管理节点,存储等信息。配置文件如下:

env:

  # Selecting language types during deployment, choose zh_CN or en_US

  language: zh_CN # 设置安装的语言,支持zh_CN和en_US

kubernetes:

  # If the k8s cluster already exists, please do not enable it.

  # If the k8s cluster needs to be installed, ensure `install` to true

  install: false# 是否安装k8s (Matrix) 不推荐设置为true,Matrix建议独立安装

  # When enable is true, please configure  the following [Matrix] parameters.

  northernVip: XXX.XXX.XXX.XXX  # 集群虚IP

  vipMode: INTERNAL  # 集群虚IP 形式,与Matrix有关参数

  networkMode: SINGLE_SUBNET # 集群网络模式,与Matrix有关参数

  # Specify the type of cluster: "single", "HA"

  type: single  # 部署形态,单节点还是HA,预留字段

  masters:  # master 节点配置

  - hostip: XXX.XXX.XXX.XXX

    username: root

    password: Admin@h3c

  # Specify master2 and master3 if type is HA

  # - hostip: 10.0.0.2

  #   username: root

  #   password: ssh_pwd

  # - hostip: 10.0.0.3

  #   username: root

  #   password: ssh_pwd

  # Specify workers if you need

  workers: [] # worker节点配置,如果没有worker 需要定义为[],有worker则删除[]。单master下不支持加入worker

  # - hostip: 10.0.0.4

  #   username: root

  #   password: ssh_pwd

  # - hostip: 10.0.0.5

  #   username: root

  #   password: ssh_pwd

 

database: # 数据库配置,如果有外置数据库,修改type为external

  # Specify the type of database: "internal", "external"

  # The type must be "external" if you do not install database server locally

  type: internal

  username: postgres

  # Do not modify host if type is "internal"

  host: postgresql-ha-pgpool.linseerhub-middleware

  password: Admin@h3c

  port: "5432"

 

s3: # s3 配置,建议使用默认配置

  ## Specify the type of database: "internal", "external"

  # The type must be "external" if you do not install Minio s3 server locally

  type: internal

  # Do not modify endpoint if type is "internal"

  endpoint: http://minio-svc.linseerhub-middleware:9000

  username: admin

  password: Admin@h3c

  # Defalut admin key

  accesskey: console

  secretkey: console123

 

persistent: # 持久化路径配置

  # NOTE: Cannot be modified later

  # NOTE: Cannot be modified later

  # NOTE: Cannot be modified later

  system:

    mountPoint: /linseerhub/system

  tenant:

    mountPoint: /linseerhub/tenant

 

harbor: # harbor 配置

  # Specify the type of database: "internal"

  # NOTE: External image repositories are not currently supported

  type: internal

  host: linseerhub-registry.h3c.com

port: "8099"

·     配置完config.yaml后,执行bash install.sh进行安装。

·     安装过程中如果发生错误,可以根据终端显示日志以及/var/log/linctl.log查看错误原因,也可以单独安装出错的组件观察组件出错的原因(安装出错的组件可以在/tmp/linctl/install/status/_failed查看)。

·     解决完部署错误后,可以继续执行 bash install.sh进行安装部署操作。

注意

·     因为K8S存在规则:当存储容量大于85%时,pod会被驱逐,因此请关注集群存储使用状态,定期清理不用的数据以及扩容。

·     使用linctl list component命令查看组件安装信息时,如果发现组件deploy_failed表明组件在安装时发生了某种错误,不代表组件安装失败,请进一步使用kubectl命令查看组件安装信息。

 

1. 部署后验证

安装完成以后,可以使用linctl等相关命令,查看安装包情况。具体操作如下:

(1)     使环境变量生效。

source /etc/profile或者重新打开一个终端。

(2)     执行linctl list component,输出如0

图3-13 执行linctl list component

 

 

3.2.4  计算节点安装

使用Matrix界面安装节点,在Matrix安装完计算节点后,系统会同步可用计算节点。单管理节点时最多支持扩展3台Worker。

3.2.5  软件卸载

注意

卸载集群前,请注意备份自己和用户的重要数据,如果需要保留数据库数据,请进行备份。

 

(1)     进入到管理节点,执行linctl  uninstall service  --path [安装包]  --all

此命令会卸载掉已经安装的Matrx集群,请慎重考虑。若不想删除Matrix,将--all选项去掉。

(2)     卸载当前管理节点上的服务后,需要手动清理/etc/hosts、/etc/profile以及~/.bashrc等多余的遗留环境变量。

(3)     多管理节点的情况,需要在其他管理节点进入到/opt/matrix/目录,执行bash uninstall.sh

(4)     注意,若需要完全清除软件数据,请清除管理节点/volumes目录下的数据,此目录保存了数据库信息、内置存储信息等,清除前请谨慎考虑。

(5)     软件卸载完成后,删除软件遗留挂载点,多次执行命令umount /linseerhub/system,直至显示/linseerhub/system未挂载后删除/linseerhub/system目录。

3.2.6  组件独立卸载和安装

找到需要卸载的组件包,如:frontend,执行如下命令。

linctl uninstall component --name frontend --version  v2.0.0

执行如下命令来进行安装。

linctl install component --path  /path/to/install_dir (--path 指定组件安装包位置)

3.3  软件升级

3.3.1  整体升级

升级前,请使用备份工具进行备份,备份方法请参见4.1  软备份

执行安装包里的upgrade.sh可进行组件的整体升级,如果只想升级已经部署的组件,可以修改upgrade.sh中的linctl upgrade service --rollback --path ${package_path} –all中的–all去掉。

3.3.2  组件升级

执行linctl upgrade component –-path [组件安装包]可以进行组件升级。

3.4  业务部署与升级

3.4.1  获取业务安装包并解压

3.4.2  安装业务包

(1)     检查和修改/etc/linctl/config.yaml文件,如果install字段为true,修改为false。

(2)     执行安装包中的bash install.sh 进行安装。

3.4.3  升级业务包

(1)     升级前,请使用备份工具进行备份,备份方法请参见4.1  软备份

(2)     检查和修改/etc/linctl/config.yaml文件,如果install字段为true,修改为false。

(3)     执行安装包中的bash upgrade.sh进行升级。


4 数据库备份

4.1  软备份

安装包中shell文件夹内的pg_backup.sh、pg_restore.sh脚本用于pg数据库的备份和恢复。

4.1.1  备份

(1)     进入集群的master节点,执行如下命令:

bash pg_backup.sh

(2)     进行备份,备份后生成备份文件,格式pg_backup_[时间].sql。

4.1.2  恢复

(1)     进入集群的master节点,执行如下命令:

bash pg_restore.sh pg_backup_[时间].sql # 需要指定备份的文件。

(2)     进行恢复。


5 附录

5.1  安装Matrix(独立安装时需要)

不同的操作系统安装Matrix的方式大致相同。

deploy-ningosv33.02.02.zip针对NingOS V3操作系统,deploy-ubuntu22.043.02.02.zip针对Ubuntu 22.04操作系统。

5.1.1  NingOS操作系统Matrix安装

(1)     解压压缩包deploy-ningosv3_3.02.02.zip到/opt目录,执行unzip ./deploy-ningosv3_3.02.02.zip -d /opt。

(2)     拷贝Matrix-V100R001B01D014SP03-x86_64.zip包到/opt/deploy-ningosv3/matrixDependency,执行cp Matrix-V100R001B01D014SP03-x86_64.zip /opt/deploy-ningosv3/matrixDependency。

(3)     进入/opt/deploy-ningosv3/matrixDependency目录,执行bash install.sh

(4)     完成进度完成后,执行如下命令查看matrix服务是否成功:systemctl status matrix。

(5)     如果安装未成功,请根据日志查看未成功的原因,日志目录:/var/log/matrix-diag/Matrix/Matrix/matrix.log

5.1.2  Ubuntu操作系统Matrix安装

(1)     解压压缩包 deploy-ubuntu22.04_3.02.02.zip到/opt目录,执行unzip ./deploy-ubuntu22.04_3.02.02.zip -d /opt 。

(2)     拷贝Matrix-V100R001B01D014SP03-x86_64.zip包到/opt/deploy-ubuntu22.04/matrixDependency,执行cp Matrix-V100R001B01D014SP03-x86_64.zip /opt/deploy-ubuntu22.04/matrixDependency。

(3)     进入/opt/deploy-ubuntu22.04/matrixDependency目录,执行bash install.sh。

(4)     完成进度完成后,执行如下命令查看matrix服务是否成功:systemctl status matrix。

(5)     如果安装未成功,请根据日志查看未成功的原因,日志目录:/var/log/matrix-diag/Matrix/Matrix/matrix.log。

5.2  GPU节点禁用nouveau驱动

(1)     执行echo 'blacklist nouveau' >> /etc/modprobe.d/blacklist.conf。

(2)     执行cat /etc/modprobe.d/blacklist.conf验证是否出现blacklist nouveau,如0所示。

图5-1 验证出现blacklist nouveau

标题: fig:

 

(3)     如果echo命令无法使用,则输入vi /etc/modprobe.d/blacklist.conf在最后一行添加blacklist nouveau。

(4)     执行sudo update-initramfs -u使禁用生效。

(5)     重启该节点。

(6)     重启之后输入lsmod | grep nouveau ,若没有返回值,则nouveau驱动禁用成功。

5.3  安装IB驱动(业务计算节点可选)

注意

此章节仅供参考,具体安装方式请根据实际情况决定。

 

1. 驱动安装包列表

如果节点中装有IB/RoCE网卡,则需要安装IB/RoCE驱动。

表5-1 IB/RoCE驱动安装包

安装包

安装包名称

安装包功能说明

获取方式

IB/RoCE驱动安装包

deploy-rdma.zip

用于安装集群中所有节点的IB/RoCE驱动

由H3C提供,在tools.zip包

 

2. 驱动安装前准备

(1)     获取tools.zip安装,解压tools.zip。

(2)     上传IB驱动包deploy-rdma.zip到节点任意目录,如:/opt目录。

(3)     执行unzip deploy-rdma.zip,解压deploy-rdma.zip,目前系统文件夹有:Ubuntu20.04、Ubuntu22.04、H3Linux、Rocky86,根据操作系统类型选择相应文件夹下的驱动文件。

(4)     已经安装Matrix。

3. Ubuntu20.04.4操作系统安装IB驱动

(1)     防止操作系统自动升级,执行以下命令。

sed -i "s/1/0/g" /etc/apt/apt.conf.d/10periodic

sed -i "s/1/0/g" /etc/apt/apt.conf.d/20auto-upgrades

(2)     解压ibubuntu2004.zip,执行unzip ibubuntu2004.zip。

(3)     安装ib依赖,执行cd ./ib-test和dpkg -i -R ./。

(4)     安装ib驱动,执行以下命令。

tar -zxvf MLNX_OFED_LINUX-5.7-1.0.2.0-ubuntu20.04-x86_64.tgz

cd MLNX_OFED_LINUX-5.7-1.0.2.0-ubuntu20.04-x86_64

./mlnxofedinstall --add-kernel-support

(5)     启动opensm和opensmd服务。

(6)     执行systemctl restart opensm和systemctl restart opensmd。

4. Ubuntu22.04操作系统安装IB驱动

(1)     防止操作系统自动升级,执行以下命令。

sed -i "s/1/0/g" /etc/apt/apt.conf.d/10periodic

sed -i "s/1/0/g" /etc/apt/apt.conf.d/20auto-upgrades

(2)     解压ibubun2204.tar.gz,执行tar -zxvf ibubun2204.tar.gz进行解压操作。

(3)     安装ib依赖,执行cd ./ib2和dpkg -i -R ./。

(4)     安装ib驱动,执行以下命令。

tar -zxvf MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu22.04-x86_64.tgz

cd MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu22.04-x86_64

./mlnxofedinstall --add-kernel-support

(5)     启动opensm和opensmd服务。

(6)     执行systemctl restart opensm和systemctl restart opensmd。

5. NingOS操作系统安装IB驱动

(1)     解压ib_h3linux.zip包,执行unzip ib_h3linux.zip。

(2)     安装ib依赖,执行rpm -Uvh --force --nodeps ./ib_dep/*.rpm。

(3)     安装ib驱动。

mkdir ./mnt

mount -o ro,loop ./MLNX_OFED_LINUX-5.8-2.0.3.0-H3Linux2.0.2SP01.iso ./mnt

安装ib驱动,执行cd ./mnt和./mlnxofedinstall。

(4)     启动opensm和opensmd服务,执行systemctl restart opensm和systemctl restart opensmd。

(5)     重启openibd和network服务。

systemctl restart openibd.service

systemctl enable openibd.service

systemctl restart network

shutdown -r now

说明

安装驱动之后,ip a | grep 【IB/RoCE网卡名称】,这里是ens1f0,查看返回结果,网卡名后面可能会多一个np0,(也可能是其他内容)。

IB/RoCE网卡需要配置IP,注意节点中只能有一个网关。

 

在roce模式下(roce交换机)需要配置roce网卡的IP:

(1)     ‍在/etc/netplan/00-installer-config.yaml中对应的IB/RoCE网卡名后面补充上面多出的内容。

(2)     修改完之后保存,退出。

(3)     输入netplan apply,应用修改内容。0是ens1f0网卡修改后的截图。

图5-2 修改ens1f0网卡

标题: fig:

 

6. 验证IB/RoCE驱动是否安装成功

输入ibstat,如果网卡状态显示active,则为驱动安装成功,如图5-1所示。

图5-3 验证IB/RoCE驱动是否安装成功

 

注意

如果使用 RoCE自动化参数网,请参见5.3.2  RoCE自动化参数网配置指导

 

5.3.2  RoCE自动化参数网配置指导

1. 原理说明

RoCE自动化,提供自动录入网卡IP功能,保证容器内高性能网卡IP不会冲突,利用了macvlan和dhcp-cni等功能。

2. 配置步骤

(1)     配置RoCE交换机,为每个参数网口配置dhcp-server,可以导入SE提供的语句,或者手动配置dhcp-server的网关,网段范围。

(2)     保证每台worker节点(拥有高性能网卡的机器)高性能网卡名称一致,需要修改网卡名称;在Ubuntu系统中,网卡的名称默认是以en开头的,例如enp2s0、enp3s0等。而某些情况下需要将网卡名称改为eth0、eth1等,以便在网络设备的配置中使用。RoCE场景需要区分存储网和参数网,主要方案是通过网卡名称进行区分,修改网卡名称具体的方法如下:

¡     解压tools.zip文件,从tools文件夹根据操作系统找到对应脚本h3cnic.sh,执行h3cnic.sh脚本(bash h3cnic.sh) ,将参数网卡名称变成h3c开头。

¡     查询是否有文件夹/etc/rc.local,如没有创建文件夹,同时将h3cnic.sh文件放入/etc/rc.local。

¡     如果h3cnic.sh脚本无法正常识别参数网卡,需要管理员手动执行命令将参数网卡名称更换成h3cnic1、h3cnic2、h3cnic3名称,具体命令如下,同时需要将下面命令放入/etc/rc.local文件中。

ip link set dev ens1 down

ifconfig ens1 down

ip link set ens1 name h3cnic1

ip link set dev h3cnic1 up

ifconfig h3cnic1 up

 

 

ip link set dev ens2 down

ifconfig ens2 down

ip link set ens1 name h3cnic2

ip link set dev h3cnic2 up

ifconfig h3cnic2 up

图5-4 配置步骤

标题: fig:

 

(3)     安装结束之后可能会显示固件升级失败,无需处理,不影响驱动安装。

5.4  安装显卡驱动(业务计算节点需要)

注意

此章节仅供参考,具体安装方式请根据实际情况决定。

 

5.4.1  驱动安装包列表

AI计算节点安装GPU驱动,需要安装如下安装包。

表5-2 驱动安装包列表

安装包

名称

用途

获取方式

GPU驱动安装包

gpu-driver.zip

用于安装集群中所有AI计算节点的GPU驱动

由H3C提供,在tools.zip包

GPU模组依赖包

gpu_module.zip(ubuntu 22.04)

用于安装集群中所有AI计算节点的GPU模组依赖,配置默认支持H20,驱动版本550

由H3C提供,在tools.zip包

 

5.4.2  GPU驱动版本兼容列表

GPU驱动版本兼容列表。此处,以英伟达NVIDIA GPU相关信息 (gpu-operator v24.6.0)为例。

表5-3 GPU驱动版本兼容列表

确认项

版本信息

备注

NVIDIA GPU Driver

550.54.15 (recommended)

nvidia驱动

 

5.4.3  驱动安装前准备

(1)     上传gpu-driver.zip、lib.zip到计算节点任意目录,如:opt目录。

(2)     解压gpu-driver.zip,执行unzip gpu-driver.zip。

(3)     解压gpumodule.zip,执行unzip gpumodule.zip。

(4)     根据计算节点的操作系统进入对应的文件目录,如0所示,目前系统文件目录有:ubuntu22(Ubuntu22.04系统对应的文件目录)。

图5-5 文件目录

标题: fig:

 

(5)     在AI计算节点配置环境变量(任何目录下都可以)。

export DEBIAN_FRONTEND=nointeractive

注意

在纳管计算节点前,安装GPU驱动依赖包,如果遇到如下失败提示,请删除冲突的依赖包后,重新安装。

标题: fig:

 

 

5.4.4  根据不同的系统选择GPU驱动安装步骤

1. 当系统为Ubuntu22.04

(1)     安装gpu驱动相关deb包。

a.     进入安装位置。

cd /opt/gpu-driver/nvidia/ubuntu22/deb/driver

b.     安装驱动。

dpkg -i *

(2)     安装GPU驱动。

a.     设置环境变量。

echo "export TERM=xterm" >> /etc/profile

b.     环境变量生效。

source /etc/profile

c.     进入nvidia驱动安装位置。

cd /opt/gpu-driver/nvidia/

d.     nvidia驱动安装文件赋予可执行权限。

chmod 777 NVIDIA-Linux-x86_64-525.60.13.run

e.     执行驱动安装文件安装nvidia驱动。

./NVIDIA-Linux-x86_64-525.60.13.run --disable-nouveau –silent

f.     检查nvidia驱动是否安装成功,正常显示0信息,即安装成功。

nvidia-smi

g.     确定下mig是否开启,如果开启,执行关闭mig操作。

nvidia-smi -mig 0

图5-6 状态信息

标题: fig:

 

(3)     安装fabricmanager(如该GPU有模组需要安装fabricmanager这个组件)。

a.     进入安装位置。

cd /opt/gpu-driver/nvidia/ubuntu22/deb/fabricManager

b.     安装fabricmanager组件。

dpkg -I *

c.     设置开机自启。

systemctl enable nvidia-fabricmanager

d.     启动fabricmanager服务。

systemctl start nvidia-fabricmanager

2. 当系统为NingOS

(1)     添加软连接。

ln -s /sbin/ldconfig /sbin/ldconfig.real

(2)     安装h3clinux依赖。

cd /opt/gpu-driver/nvidia/h3clinux/rpm

rpm -i kernel-devel-5.10.0-136.12.0.86.4.hl202.x86_64.rpm

(3)     安装gpu驱动。

a.     设置环境变量。

echo "export TERM=xterm" >> /etc/profile

b.     环境变量生效。

source /etc/profile

c.     进入nvidia驱动安装位置。

cd /opt/gpu-driver/nvidia/

d.     nvidia驱动安装文件赋予可执行权限。

chmod 777 NVIDIA-Linux-x86_64-525.60.13.run

e.     执行驱动安装文件安装nvidia驱动。

./NVIDIA-Linux-x86_64-525.60.13.run --disable-nouveau --silent

f.     检查nvidia驱动是否安装成功,正常显示0信息,即安装成功。

nvidia-smi

g.     执行关闭mig操作,防止mig默认开启。

nvidia-smi -mig 0

图5-7 状态信息

标题: fig:

 

(4)     安装fabricmanager(模组需要安装fabricmanager这个组件)。

a.     进入安装位置。

cd /opt/gpu-driver/nvidia/h3clinux/fabricManager

b.     安装fabricmanager组件。

rpm -i nvidia-fabric-manager-525.60.13-1.x86_64.rpm

c.     设置开机自启。

systemctl enable nvidia-fabricmanager

d.     启动fabricmanager服务。

systemctl start nvidia-fabricmanager

5.4.5  激活GPU Direct rdma

(1)     判断系统是否存在nvidia_peermem。

lsmod | grep peer

(2)     如果不存在nvidia_peermem则需要激活。

modprobe nvidia-peermem

5.5  部署常见问题

5.5.1  安装过程中报”Exception: 检查SSH连通性失败, 请确保在配置文件内输入正确的SSH配置”

解决方案:

(1)     请检查config.ini 中的服务器账号和密码配置是否正确,请确定对应的服务器可以ssh登录。

(2)     另外如果在使用ssh命令登录服务器时报如下错误:“Load key "/root/.ssh/idrsa": error in libcrypto”,请删除:/root/.ssh/idrsa,重新生成is_rsa。

命令:ssh-keygen -m PEM -t rsa -b 4096 -f /root/.ssh/id_rsa。

(3)     验证ssh,命令:ssh-keygen -y -f /root/.ssh/id_rsa。

(4)     验证正确的信息后,再执行bash install.sh。

5.5.2  安装完Matrix后,安装组件包时报错

标题: fig:

 

解决方案,重新安装全部组件:

(1)     执行source /etc/profile。

(2)     执行linctl  list component,查看安装组件的情况,卸载已经安装的组件。

图5-8 查看安装组件的情况

标题: fig:

 

(3)     如0的initial-configure组件卸载命令如下。

linctl uninstall component  --name initial-configure --version 1.0.0

(4)     删除linseerhub相关的namespace。

kubectl delete ns linseerhub-base

kubectl delete ns linseerhub-middleware

kubectl delete ns linseerhub-training

注意

删除已有的namespace 可能会带来其他不可预估影响,非必要不要进行这个操作。

 

(5)     执行linctl install component   --all --path  /path/to/install_dir (--path 指定安装包目录,即:LinseerHub-ModelBuilder-* 的路径)。

5.5.3  组件包安装过程中报错停止

(1)     根据报错信息,解决问题(如网络问题导致的失败)。

(2)     执行linctl list component,查看安装组件的情况。

图5-9 查看安装组件的情况

标题: fig:

 

(3)     对比安装目录,使用linctl install component --path /path/to/component.zip(组件包的安装路径),对组件包一一安装。

5.5.4  部署完之后,各种服务在pending 或者重启

请检查POD状态,主要从资源满足度方向查找问题。

5.5.5  其他可能导致安装失败的原因

遗留的/root/.ssh/kownhosts有可能导致安装部署的失败,清除/root/.ssh/kownhosts重新部署。

5.5.6  组件svc多副本修改

(1)     使用kubectl edit svc -A -n命名空间svc名称编辑svc。

(2)     修改副本数字段,保存。

5.5.7  harbor 同步规则设置,扩展harbor高可用

(1)     登录vip:8099,账号为:admin,密码:Harbor12345。

(2)     进入到“系统管理”->“复制管理”。点击“新建规则”,创建复制规则。

5.5.8  更新提示成功,但是linctl list component 却显示组件没有更新

重启命名空间为kube-system下的podhelm-wrapper-XXX-XXX后,再进行升级。

5.5.9  更新提示成功,kubectl get pod 显示未更新

重新安装,再观察状态。

5.6  平台运维命令行工具使用说明

linctl命令用于平台的日常部署、升级、卸载等运维部署工作。

1. 初始化平台服务

root@test:~# linctl init service

2. 查询平台服务状态

root@test:~# linctl status service

3. 卸载平台

root@test:~# linctl uninstall service

4. 安装组件

root@test:~# linctl install component --path [component path]

5. 安装所有组件

root@test:~# linctl install component --all --path [component path]

6. 升级组件

root@test:~# linctl upgrade component --path [component path]

7. 查看组件列表

root@test:~# linctl list component

8. 卸载组件

root@test:~# linctl uninstall component --name [component name] --version [component version]

5.7  暴力卸载后如何清除残留数据

首先,暴力卸载会产生不可预知问题,导致系统发生不可预知错误,请按照卸载流程进行卸载。

5.7.1  需要重新安装,不保留历史数据

可直接清除集群配置的共享存储路径下的数据,或者更换空的共享存储路径进行安装。

删除原共享存储路径下的数据前,可以先备份历史数据。

路径为安装时配置的路径,如下段代码所示。

Storage related configuration (配置集群使用的共享存储)

Store platform-related logs, mirrors, databases and other persistent files

[storage]

Support type: nfs

type: nfs

nfs.hostip: 10.0.0.4

nfs.path: /share

5.7.2  最大程度保留数据,清除无用数据,修复系统。

修复系统需要登录系统的数据库,过程比较复杂。请联系H3C工程师修复。

5.7.3  集群安装后,不显示节点卡数

安装好业务节点后,如果GPU卡数总数显示为0。发现此现象,有可能的原因是:对应的Operator安装问题,驱动问题。可以做以下尝试。

(1)     通过集群管理中的系统服务,删除对应的GPU Operator后,重新安装。

图5-10 系统服务

标题: fig:

 

(2)     使用系统中对应operator的版本匹配的GPU驱动。

如:Nvidia官网可以查看如下连接https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/24.6.0/platform-support.html,查看对应的推荐的GPU驱动。

5.8  GPFS操作

5.8.1  租户数据备份

可在客户端或服务端进行备份,任选其一即可。

1. 方式一:客户端(登录到使能平台集群任意管理节点即可)备份方法

在文件的数量/存储空间比较大时客户端备份的速度会比较慢,推荐使用服务端备份方式。

(1)     cd /linseerhub/tenant,该目录下应该只有一个文件夹(当前版本只支持单文件系统),名称为租户id,假设为${tenantId}。

 

(2)     cd /${tenantId},该目录下有一个文件夹,名称为租户id,一个以数字命名的文件夹,假设为${storageId}。

 

(3)     cd ${storageId},可以看到有很多个以随机字符串命名的文件夹。

 

(4)     将/linseerhub/tenant/${tenantId}/${storageId} 下的所有目录备份至合适位置。

2. 方式二:服务端备份方法(CX服务端备份)

服务端备份的速度会比客户端快。在对应的服务端的文件系统中找到租户的文件系统目录,步骤如下。

(1)     在文件系统客户端(使能管理节点),执行以下命令(df -h后跟的参数请参见客户端备份方式,请根据实际调整),找到对应的服务端目录。

 

(2)     登录到使能管理节点服务端,上述例子中,服务端为10.99.232.252的/linseerstorage2/nfsserver1/server2目录(请根据实际情况进行调整),进入到该节点的对应目录。

 

(3)     对/linseerstorage2/nfsserver1/server2下的所有目录进行备份。

5.8.2  卸载所有存储

E0306只支持单租户,需在租户的所有业务节点,进行GPFS存储的卸载。

例如下方是某个节点的挂载情况,卸载前可简单记录下当前的挂载点和gpfs文件系统,升级完成后需进行手动挂载恢复。

 

使用GPFS的相关卸载方法对上述目录进行文件系统的卸载,需在所有业务节点,进行GPFS存储的卸载。

5.8.3  需重新挂载租户的GPFS存储

这里需对所有租户的所有业务节点的gpfs挂载进行恢复。

恢复操作是挂载操作的反向,具体的挂载操作也可到租户管理员的存储管理详情页进行查看。

 

如果执行完该操作之后,发现租户原本的数据发生丢失,请参见数据恢复

5.8.4  数据恢复

如果发现租户数据发生丢失,需进行手动数据恢复。

如果租户数据备份中是在集群中的某个节点进行备份,则在集群中的某个节点进行数据恢复,恢复操作为在客户端备份时的反向操作,将备份的数据cp至指定文件夹即可。

如果租户数据备份中是在存储服务端进行备份,则在存储服务端进行数据恢复,恢复操作为在服务端备份时的反向操作,将备份的数据cp至指定文件夹即可。

5.9  高性能网络重新激活

升级完成后,需要重新点选集群roce激活,完成roce网络的重新激活。

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们