mhvtl 虚拟磁带库搭建

0 阅读2分钟

搭建虚拟带库环境

1. 准备一台虚拟机,环境建议如下:

系统版本:CentOS 7.5/RedHat 7.5
资源:4C8G

正常安装系统,配置好本地yum源  

2. 下载虚拟带库的源码

从网站 sites.google.com/site/linuxv… 下载最新版的mhvtl,上传到系统中

3. 安装依赖包和基础命令集

yum install -y lzo mtx mt-st lsscsi zlib-devel lzo-devel kernel-devel zlib sg3_utils gcc perl

4. 关闭selinux ,并单独设置挂载盘为磁带部署空间

5. 编辑内核模块

cd /opt/mhvtl-1.7/kernel

make

make install

6. 编译用户空间代码

cd /opt/mhvtl-1.7

make

make install

7. 修改/opt/mhvtl和/etc/mhvtl目录拥有者,不修改无法启动mhvtl

chown -R vtl:vtl /opt/mhvtl

chown -R vtl:vtl /etc/mhvtl

/etc/mhvtl为配置文件路径,/opt/mhvtl为虚拟带库存储路径

8. 启动mhvtl的守护进程

systemctl  start  mhvtl.target

systemctl enable mhvtl.target

systemctl status mhvtl.target

9. 配置完毕查看虚拟带库的信息

lsscsi  -g

10. 虚拟带库配置完毕。默认磁带容量是500M,可以修改配置文件调整容量大小

PixPin_2025-05-20_13-42-58.png

11. 查看磁带库连接

PixPin_2025-05-20_14-11-33.png 一个 mediumx 代表一个机械臂,一个磁带库有一个机械臂
tape 代表驱动,可以多个驱动

12. 查看磁带库的详细信息

mtx -f /dev/sgx status (/dev/sgx 为机械臂在系统中识别出的设备号)

PixPin_2025-05-20_14-23-19.png

Data Transfer Element 代表驱动
Storage Element 代表插槽
VolumeTag 代表磁带
E01001L8 代表磁带编号
Storage Element 40 IMPORT/EXPORT 代表IE仓,负责磁带导入导出
empty 代表为空闲

13. 手动加载磁带到驱动和卸载

  mtx -f  机械臂在系统中识别出的设备号 load 插槽编号 驱动编号

示例:mtx -f /dev/sg6 load 1 0

加载前

PixPin_2025-05-20_14-36-58.png

加载后

PixPin_2025-05-20_14-39-08.png

卸载

PixPin_2025-05-20_14-40-04.png

14. 手动移动驱动磁头在磁带上的位置

查看磁头的当前位置
mt -f /dev/nstx tell
查看驱动器状态

mt -f /dev/stx(驱动器路径) status

PixPin_2025-05-20_15-23-02.png

PixPin_2025-05-20_15-32-20.png

15. 创建ISCSI

创建iscsi

yum install target -y

启用target服务

systemctl start target
systemctl enable target

配置磁带设备
确认磁带设备路径

ls /dev/nst*

PixPin_2025-05-22_12-22-31.png

进入targetcli

targetcli

创建存储对象

cd /backstores/pscsi
create nst0 /dev/nst0
create nst1 /dev/nst1
create nst2 /dev/nst2
create nst3 /dev/nst3
create nst4 /dev/nst4
create nst5 /dev/nst5
create nst6 /dev/nst6 PixPin_2025-05-22_12-24-10.png

创建 iSCSI 目标:

cd /iscsi
create iqn.2025-05.com.example:tape.target

创建 LUN(逻辑单元):

cd iqn.2025-05.com.example:tape.target/tpg1/luns
create /backstores/pscsi/nst0
create /backstores/pscsi/nst1
create /backstores/pscsi/nst2
create /backstores/pscsi/nst3
create /backstores/pscsi/nst4
create /backstores/pscsi/nst5
create /backstores/pscsi/nst6

配置 ACL(访问控制):

cd ../acls
create iqn.2025-05.com.example:tape.initiator
保存配置并退出:
exit
sudo targetcli saveconfig