Linux
在 Oracle Linux 8 中未檢測到 HP 1/8 G2 介質更換器
我有一個連接到 SAN 交換機的 HP 1x8 G2 Autoloader,在我的 VMware 環境中,我有一個可以與磁帶一起使用的 Oracle Linux。問題是在將磁帶連接到 VM 後,未檢測到介質更換器,但磁帶驅動器正常!
$ cat /proc/scsi/scsi Attached devices: Host: scsi2 Channel: 00 Id: 00 Lun: 00 Vendor: VMware Model: Virtual disk Rev: 2.0 Type: Direct-Access ANSI SCSI revision: 06 Host: scsi2 Channel: 00 Id: 01 Lun: 00 Vendor: HP Model: Ultrium 6-SCSI Rev: 25MW Type: Sequential-Access ANSI SCSI revision: 06 Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: NECVMWar Model: VMware IDE CDR00 Rev: 1.00 Type: CD-ROM ANSI SCSI revision: 05
$ lsscsi -g [0:0:0:0] cd/dvd NECVMWar VMware IDE CDR00 1.00 /dev/sr0 /dev/sg2 [2:0:0:0] disk VMware Virtual disk 2.0 /dev/sda /dev/sg0 [2:0:1:0] tape HP Ultrium 6-SCSI 25MW /dev/st0 /dev/sg1
$ ls -l /dev/tape/by-path lrwxrwxrwx 1 root root 9 Jul 30 08:49 pci-0000:00:10.0-scsi-0:0:1:0 -> ../../st0 lrwxrwxrwx 1 root root 10 Jul 30 08:49 pci-0000:00:10.0-scsi-0:0:1:0-nst -> ../../nst0
$ lsmod | grep scsi scsi_transport_spi 32768 1 mptspi mptscsih 36864 1 mptspi mptbase 94208 2 mptspi,mptscsih
$ lsmod | grep sg sg 36864 0
$ lsmod | grep st st 61440
我為 Centos 8 安裝了最新版本的 HPE 陣列控制器
$ yum list installed kmod-hpsa.x86_64 3.4.20-5.el8_4.elrepo @elrepo
並且磁帶自動載入器處於順序模式,我將其更改為自動。
核心資訊:
$ uname -r 5.4.17-2102.202.5.el8uek.x86_64
mtx 輸出:
$ mtx -f /dev/nst0 status mtx: Request Sense: Long Report=yes mtx: Request Sense: Valid Residual=no mtx: Request Sense: Error Code=70 (Current) mtx: Request Sense: Sense Key=Illegal Request mtx: Request Sense: FileMark=no mtx: Request Sense: EOM=no mtx: Request Sense: ILI=no mtx: Request Sense: Additional Sense Code = 20 mtx: Request Sense: Additional Sense Qualifier = 00 mtx: Request Sense: BPV=no mtx: Request Sense: Error in CDB=no mtx: Request Sense: SKSV=no READ ELEMENT STATUS Command Failed
$ mtx -f /dev/nst0 inquiry Product Type: Tape Drive Vendor ID: 'HP ' Product ID: 'Ultrium 6-SCSI ' Revision: '25MW' Attached Changer API: No
經過幾天和幾週,終於…
問題是什麼?
HP 1x8 G2 Autoloader 是一種多 LUN 設備。任何想要使用磁帶的系統都必須找到具有一個 SCSI 路徑但有兩個 LUN ID 的中型充電器和磁帶驅動器。此功能稱為多 LUN 掃描。
在我的測試中,當磁帶連接到安裝了 Centos 7(裸機)的 HP-DL380 時,我沒有遇到問題。但在虛擬化環境中。ESXi 無法檢測到介質轉換器。
解決方案:
01- 通過 ssh 登錄到 ESXi 主機
02- 在 scsidevs 列表中找到 HBA:
# esxcfg-scsidevs -a
03- 為設備設置 VMW_SATP_LOCAL 規則:
# esxcli storage nmp rule add --driver=<HBA_DRIVER> --satp VMW_SATP_LOCAL
04- 重新啟動主機 05- 檢查 HBA 上的設備並找到介質轉換器和磁帶機 06- 通過 SCSI 設備將設備添加到 VM
如果您想了解更多關於 NMP、SATP 和 VMW_SATP_LOCAL 的資訊: