银河麒麟(Kylin) - V10 GFB高级服务器操作系统ARM64部署昇腾910b训练机以及Docker安装

银河麒麟(Kylin) - V10 GFB高级服务器操作系统ARM64部署昇腾910b训练机以及Docker安装

原因

项目需要使用Deepseek-r1-distill-qwen-32b来做训练,在此记录

测试环境

服务器配置

型号:G5680V2

CPU:CPU 4Kunpeng 920-5250
NPU:NPU 8
Ascend 910

内存:内存32 * 64GB

硬盘:硬盘6 * 3840GB-SATA

系统:银河麒麟高级服务器系统V10-GFB-Release-030

平台架构:ARM

准备工作

  1. 服务器安装银河麒麟高级服务器系统V10-GFB-Release-030系统

    下载:Kylin-Server-V10-GFB-Release-030.1.1-ARM64

    请去银河麒麟下载测试版本

  2. 去华为官网获取安装驱动

    选择Ascend HDK 23.0.RC1系列版本

    根据产品系统架构在"软件分类"中勾选"910-aarch64"或"910-x86_64"

我选择:"Ascend-hdk-910b-npu-driver-24.1.rc3-1.aarch64.rpm"安装包

  1. 去华为官网获取安装固件
    驱动和固件是对应关系

我选择:"Ascend-hdk-910b-npu-firmware-7.5.0.1.129-1.noarch.rpm" 安装包

开始安装

  1. 服务器进入raid卡页面做raid5

  2. 安装系统

系统安装完成如下:

注:如系统未激活会有激活提示以及部分功能限制,其他不受影响

  1. 安装驱动

    把驱动包和固件包导入系统中

安装驱动源码编译所需依赖

执行如下命令,切换至root用户

bash 复制代码
su - root

在软件包所在路径执行如下命令完成驱动包安装

bash 复制代码
rpm -ivh Ascend-hdk-910b-npu-driver-24.1.rc3-1.aarch64.rpm

出现如下关键信息,则表示驱动安装成功

  1. 执行如下命令查看驱动加载是否成功
bash 复制代码
npu-smi info
  1. 安装固件

执行如下命令,切换至root用户

bash 复制代码
su - root

在软件包所在路径执行如下命令完成固件包安装

bash 复制代码
rpm -ivh Ascend-hdk-910b-npu-firmware-7.5.0.1.129-1.noarch.rpm

出现如下关键信息,则表示固件安装成功


提示说明:

  • 若重新安装固件后安装配套版本的驱动,则无需重启系统,驱动安装后固件版本会自动生效。
  • 若单独安装固件,则需执行reboot命令重启系统或执行npu-smi set -t reset命令复位标卡或芯片生效。
  • 软件包安装过程中,若无HwHiAiUser用户系统会自动创建该用户。

执行如下命令查看芯片固件版本号。若与固件软件包版本号一致,则说明安装成功。

bash 复制代码
/usr/local/Ascend/driver/tools/upgrade-tool --device_index -1 --component -1 --version

如果安装驱动时指定安装路径,则命令中的"/usr/local/Ascend"请根据实际情况替换。

请按照 "驱动->固件" 的顺序,分别安装组件软件包。

  1. 安装CANN
    CANN(Compute Architecture for Neural Networks)是昇腾针对AI场景推出的异构计算架构,对上支持多种AI框架,对下服务AI处理器与编程,发挥承上启下的关键作用,是提升昇腾AI处理器计算效率的关键平台。
  • 安装依赖
  • 在OS上安装依赖前需确认服务器已连接网络
  • 配置最大线程数

训练场景下,OS的最大线程数可能不满足训练要求,以root用户执行以下命令修改最大线程数为无限制。

  • 配置环境变量,修改线程数为无限制,打开"/etc/profile"文件。
    vi /etc/profile
  • 在文件的最后添加如下内容后保存退出。
    ulimit -u unlimited
  • 执行如下命令使环境变量生效。
    source /etc/profile
  • 配置昇腾源
  • 在线安装时,执行如下操作配置昇腾源,否则将无法安装
  • 执行如下命令新建昇腾源文件。
    sudo vim /etc/yum.repos.d/ascend.repo
  • 在文件的最后添加如下内容后保存退出。
    [ascend] name=ascend baseurl=https://repo.oepkgs.net/ascend/cann/$basearch/ enabled=1 gpgcheck=1 gpgkey=https://repo.oepkgs.net/ascend/cann/RPM-GPG-KEY-CANN sslverify=false
  • 更新源索引。
    sudo yum clean all && sudo yum makecache
  • 安装依赖
    以安装用户登录服务器,执行如下命令安装依赖软件(如果使用root用户安装依赖,请将命令中的sudo删除)
bash 复制代码
sudo yum install -y python3 python3-pip

CANN支持Python3.7.x至3.11.4版本,若安装失败、版本不满足或者未包含动态库libpython3.x.so

  • 执行如下命令安装运行时依赖的Python第三方库(如果使用root用户安装,请将命令中的--user删除)
bash 复制代码
pip3 install attrs cython numpy==1.24.0 decorator sympy cffi pyyaml pathlib2 psutil protobuf==3.20 scipy requests absl-py --user

这里安装会出现一个报错 、 因为系统自带Python3.7.9

注意Python3.7.x时推荐安装numpy 1.21.6版本,否则提示版本过高安装失败

  • 安装CANN软件包

  • 安装Toolkit开发套件包

    CANN Toolkit开发套件包,在训练&推理&开发调试场景下安装,主要用于训练和推理业务、模型转换、算子/应用/模型的开发和编译。

    安装Toolkit软件前请确保安装目录可用空间大于10G,如不满足请清理空间或更换安装目录。

  • 执行安装命令

bash 复制代码
sudo yum install -y Ascend-cann-toolkit

CANN软件包在线安装时仅支持安装在默认路径"/usr/local/Ascend"下。

安装完成后,若显示如下信息,则说明软件安装成功:

Ascend-cann-toolkit 8.1.Rcl linux-aarch64 install success

  • 配置环境变量
bash 复制代码
source /usr/local/Ascend/ascend-toolkit/set_env.sh

上述环境变量配置只在当前窗口生效,用户可以按需将以上命令写入环境变量配置文件(如.bashrc文件)

  • 安装后检查。执行如下命令查询CANN版本信息,查询结果与安装软件包的版本一致时,则验证安装成功
bash 复制代码
sudo yum list installed | grep toolkit
  • 安装Kernels算子包

    CANN二进制算子包,包括单算子API执行(例如aclnn类API)动态库文件,以及kernel二进制文件

  • 根据处理器类型执行命令安装

bash 复制代码
sudo yum install -y Ascend-cann-kernels-<chip_type>    #其中<chip_type>表示处理器类型,在当前设备上执行npu-smi info查询

我安装的是:Ascend-cann-kernels-910b-8.1.RC1-linux.aarch64

安装完成后,若显示如下信息,则说明软件安装成功:

Ascend-cann-kernels-910b-8.1.RC1-linux.aarch64 install success

  • 安装后检查。执行如下命令查询软件版本信息,查询结果与安装软件包的版本一致时,则验证安装成功
bash 复制代码
sudo yum list installed | grep kernels
  • 安装NNAL神经网络加速库(可选)

    NNAL神经网络加速库中提供了面向大模型领域的ATB(Ascend Transformer Boost)加速库,实现了基于Transformer结构的神经网络推理加速引擎库,提供昇腾亲和的融合算子、通信算子、内存优化等,作为算子的公共底座提升了大模型训练和推理性能
    加速库安装之前,需已安装同一版本的Toolkit并配置环境变量。

  • 执行安装命令

bash 复制代码
sudo yum install -y Ascend-cann-nnal

安装完成后,若显示如下信息,则说明软件安装成功:

xxx install success

  • 配置环境变量
bash 复制代码
source /usr/local/Ascend/nnal/atb/set_env.sh

上述环境变量配置只在当前窗口生效,用户可以按需将以上命令写入环境变量配置文件(如.bashrc文件)

  • 安装后检查。执行如下命令查询NNAL软件版本信息,查询结果与安装软件包的版本一致时,则验证安装成功
bash 复制代码
sudo yum list installed | grep nnal
  1. 安装Docker
  • 执行安装命令
bash 复制代码
sudo yum install docker-engine
  • 启动Docker命令
bash 复制代码
sudo systemctl start docker.service
  • Docker设置开机自启命令
bash 复制代码
sudo systemctl enable docker.service
  • 安装完成,查看Docker版本信息命令
bash 复制代码
sudo docker --version   或   sudo docker version
  • Docker拉取Deepseek-r1-distill-qwen-32b镜像

需要到华为昇腾镜像仓库

可能需要权限
昇腾开放Docker镜像仓库,提供昇腾软件Docker镜像

例如:

  • Docker拉取Centos系统镜像
  • 镜像版本选择

自适应架构:

bash 复制代码
docker pull swr.cn-south-1.myhuaweicloud.com/ascendhub/centos:7.6.1810
  • Docker启动Centos镜像

  • 查看镜像命令

bash 复制代码
docker images
  • 启动镜像命令
bash 复制代码
docker run -it swr.cn-south-1.myhuaweicloud.com/ascendhub/centos:7.6.1810  /bin/bash
  • 查看运行中的容器
bash 复制代码
docker ps

安装完成

相关推荐
金刚猿5 分钟前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
JH_Kong32 分钟前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿1 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
Fcy6481 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满1 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠2 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
主机哥哥2 小时前
阿里云OpenClaw部署全攻略,五种方案助你快速部署!
服务器·阿里云·负载均衡
Harvey9032 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
珠海西格电力科技3 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀3 小时前
Linux环境变量
linux·运维·服务器