3 minute read

服务器配置

AI 服务器:华为 Atlas 800I A2 推理服务器

组件 规格
CPU 鲲鹏 920(5250)
NPU 昇腾 910B4(8X32G)
内存 1024GB
硬盘 系统盘:450GB SSDX2 RAID1
数据盘:3.5TB NVME SSDX4
操作系统 openEuler 22.03 LTS

逻辑卷创建

LVM(逻辑卷管理)

LVM (Logical Volume Manager,逻辑卷管理) 是 Linux 环境下对磁盘分区进行管理的一种机制,它提供了比传统分区更灵活和强大的磁盘管理功能。

LVM 主要由以下几个核心概念组成:

  • 物理卷 (Physical Volume, PV):实际的物理磁盘或分区
  • 卷组 (Volume Group, VG):由一个或多个物理卷组成的存储池
  • 逻辑卷 (Logical Volume, LV):从卷组中划分出的逻辑存储单元,可格式化并挂载使用

LVM 的优势

  • 灵活的容量管理:可以动态调整逻辑卷大小
  • 存储池化:多个物理设备可以组合成一个大的存储池
  • 在线扩容:无需卸载文件系统即可调整大小
  • 快照功能:可以创建逻辑卷的快照用于备份
  • 条带化:提高性能
  • 镜像:提高数据可靠性

查看磁盘信息

lsblk
NAME               MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda                  8:0    0 446.1G  0 disk 
├─sda1               8:1    0   600M  0 part /boot/efi
├─sda2               8:2    0     1G  0 part /boot
└─sda3               8:3    0 444.5G  0 part 
  ├─openeuler-root 253:0    0    70G  0 lvm  /
  ├─openeuler-swap 253:1    0     4G  0 lvm  [SWAP]
  └─openeuler-home 253:2    0 370.5G  0 lvm  /home
nvme1n1            259:0    0   3.5T  0 disk 
nvme0n1            259:1    0   3.5T  0 disk 
nvme2n1            259:2    0   3.5T  0 disk 
nvme3n1            259:3    0   3.5T  0 disk 

创建物理卷(PV)

for d in /dev/nvme{0..3}n1; do
    pvcreate "$d"
done
  Physical volume "/dev/nvme0n1" successfully created.
  Physical volume "/dev/nvme1n1" successfully created.
  Physical volume "/dev/nvme2n1" successfully created.
  Physical volume "/dev/nvme3n1" successfully created.
  • 查看物理卷信息
pvs
  PV           VG        Fmt  Attr PSize    PFree
  /dev/nvme0n1           lvm2 ---     3.49t 3.49t
  /dev/nvme1n1           lvm2 ---     3.49t 3.49t
  /dev/nvme2n1           lvm2 ---     3.49t 3.49t
  /dev/nvme3n1           lvm2 ---     3.49t 3.49t
  /dev/sda3    openeuler lvm2 a--  <444.54g    0

创建卷组(VG)

vgcreate vg_data /dev/nvme0n1 /dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1
Volume group "vg_data" successfully created
  • 查看卷组信息
vgs
VG        #PV #LV #SN Attr   VSize    VFree 
  openeuler   1   3   0 wz--n- <444.54g     0 
  vg_data     4   0   0 wz--n-   13.97t 13.97t

创建逻辑卷(LV)

lvcreate -l 100%VG -n lv_data vg_data
  Logical volume "lv_data" created.
  • 查看逻辑卷信息
lvs
  LV      VG        Attr       LSize    Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home    openeuler -wi-ao---- <370.54g
  root    openeuler -wi-ao----   70.00g
  swap    openeuler -wi-ao----    4.00g
  lv_data vg_data   -wi-a-----   13.97t

格式化

mkfs.xfs /dev/vg_data/lv_data
meta-data=/dev/vg_data/lv_data   isize=512    agcount=14, agsize=268435455 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1    bigtime=0 inobtcount=0
data     =                       bsize=4096   blocks=3750735872, imaxpct=5
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=521728, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
Discarding blocks...Done.

如需 ext4:mkfs.ext4 /dev/vg_data/lv_data

以下是 ext4 和 XFS 文件系统的对比表格整理:

对比项 ext4 XFS
设计背景 ext 家族第四代,通用场景设计 为高性能、大容量存储设计(如视频、数据库)
最大文件大小 16 TiB(理论 1 EiB) 8 EiB
最大卷大小 1 EiB 8 EiB
目录文件数限制 默认约 6.4 万(可通过调整增大) 近乎无限
小文件性能 更优(适合频繁创建/删除小文件) 较差
大文件性能 一般 显著更优(连续读写性能强)
高并发 I/O 一般 优化更好(多线程、多核 CPU 支持佳)
日志功能 支持三种模式:journal/ordered/writeback 始终启用高效元数据日志
碎片管理 需离线整理(e4defrag 支持在线整理(xfs_fsr
扩展性 支持在线扩展,但不支持缩小(速度较慢) 支持在线扩展(速度快),不支持缩小
fsck 修复时间 较长(尤其大容量分区) 通常无需修复(日志恢复快)
适用场景 桌面系统、传统服务器、邮件存储等小文件密集型场景 大文件、高吞吐场景(如数据库、虚拟化、云存储)
格式化命令 mkfs.ext4 -L mydata /dev/sdX1 mkfs.xfs -L mydata /dev/sdX1
保留空间 默认 5% 保留给 root(可通过 -m 0 取消) 无固定保留空间
兼容性 广泛支持(旧版 Linux、嵌入式系统等) 需较新内核(主流现代发行版均支持)
快照支持 依赖 LVM 或 btrfs 原生支持(配合 LVM 更佳)

关键选择建议

  • 选 ext4:常规用途、小文件操作多、兼容性要求高。
  • 选 XFS:处理大文件(如虚拟机镜像)、需要高吞吐或并发 I/O(如数据库)。

临时挂载

mkdir -p /data
mount /dev/vg_data/lv_data /data

开机自动挂载

  • 查看 UUID
blkid /dev/vg_data/lv_data
/dev/vg_data/lv_data: UUID="eee7da5b-7d61-4a57-8b4d-b409da39d551" BLOCK_SIZE="512" TYPE="xfs"
  • 编辑 /etc/fstab 文件,添加如下内容
UUID=eee7da5b-7d61-4a57-8b4d-b409da39d551 /data  xfs  defaults  0  0

或者直接使用设备路径

/dev/mapper/vg_data-lv_data /data xfs defaults 0 0
  • 验证挂载
mount -a   # 无报错即成功

创建软链接

mkdir -p /data/models
ln -s /data/models /models

大模型下载

模型目录结构

/models
├── BAAI
│   └── bge-large-zh-v1.5
├── deepseek-ai
│   ├── DeepSeek-R1-Distill-Qwen-7B
│   ├── DeepSeek-R1-Distill-Qwen-7B-quantized.w8a8
│   ├── DeepSeek-R1-Distill-Qwen-14B
│   └── DeepSeek-R1-Distill-Qwen-32B
└── Qwen
    ├── Qwen2.5-14B-Instruct
    ├── Qwen2.5-32B-Instruct
    ├── Qwen2.5-72B-Instruct
    ├── Qwen2.5-7B-Instruct
    ├── Qwen2.5-Coder-7B-Instruct
    └── Qwen2.5-VL-7B-Instruct

魔搭(ModelScope)下载工具

在下载前,请先通过如下命令安装 ModelScope

pip install modelscope
modelscope download --model <模型名称> --local_dir <本地目录>
  • --model 参数指定要下载的模型名称
  • --local_dir 参数指定下载到本地的目录。

默认存储

  • Linux/macOS: ~/.cache/modelscope/hub
  • Windows: C:\Users<用户名>.cache\modelscope\hub

大语言模型

Qwen2.5

modelscope download --model Qwen/Qwen2.5-7B-Instruct --local_dir Qwen2.5-7B-Instruct
modelscope download --model Qwen/Qwen2.5-14B-Instruct --local_dir Qwen2.5-14B-Instruct
modelscope download --model Qwen/Qwen2.5-32B-Instruct --local_dir Qwen2.5-32B-Instruct
modelscope download --model Qwen/Qwen2.5-72B-Instruct --local_dir Qwen2.5-72B-Instruct

DeepSeek-R1

modelscope download --model deepseek-ai/DeepSeek-R1-Distill-Qwen-7B --local_dir DeepSeek-R1-Distill-Qwen-7B
modelscope download --model deepseek-ai/DeepSeek-R1-Distill-Qwen-14B --local_dir DeepSeek-R1-Distill-Qwen-14B
modelscope download --model deepseek-ai/DeepSeek-R1-Distill-Qwen-32B --local_dir DeepSeek-R1-Distill-Qwen-32B

嵌入模型

modelscope download --model BAAI/bge-large-zh-v1.5 --local_dir bge-large-zh-v1.5

多模态大模型

modelscope download --model Qwen/Qwen2.5-VL-3B-Instruct --local_dir Qwen2.5-VL-3B-Instruct
modelscope download --model Qwen/Qwen2.5-VL-7B-Instruct --local_dir Qwen2.5-VL-7B-Instruct

Updated: