Tape changer pass-through doesn't work

athompso

Member
Sep 13, 2013
127
8
18
Trying to pass a tape-changer through to a RHEL6 VM isn't working, not sure why.

1) I had to write custom udev rules to ensure I was always passing through the correct SCSI devices, enumeration doesn't seem to be entirely stable or deterministic on my system.
2) I had to forcibly disable the st and ch modules on the host, otherwise udev kept trying to kill the "modprobe" command because it was taking too long (a full Dell PV-124T autoloader takes ~5 minutes to respond to SCSI SUB-UNIT STATUS because it moves each tape past the barcode scanner).
3) I had to modify QemuServer.pm to allow for Type==8 devices (there's a patch floating around on a mailing list that Google found for me)
4) I also had to set cache=writethrough manually in the config file

KVM finally agreed to start once all those things had been done, but the guest VM doesn't see the passed-through devices at all.
I'm continuing to work on it, but does anyone know how to make this ^%$#@! work???


Notes:
-PCIe passthrough doesn't work because the host is just slightly too old to have a working IOMMU (Opteron 2300 series)
-iSCSI doesn't work because of (I think) the SCST module problem, and also because it's just not fast enough: I have 1Gbps network infrastructure, and Ultrium-5 (?) tape drives need to be fed more than 100MBytes/sec to stream properly.
 
Trying to pass a tape-changer through to a RHEL6 VM isn't working, not sure why.

1) I had to write custom udev rules to ensure I was always passing through the correct SCSI devices, enumeration doesn't seem to be entirely stable or deterministic on my system.
2) I had to forcibly disable the st and ch modules on the host, otherwise udev kept trying to kill the "modprobe" command because it was taking too long (a full Dell PV-124T autoloader takes ~5 minutes to respond to SCSI SUB-UNIT STATUS because it moves each tape past the barcode scanner).
3) I had to modify QemuServer.pm to allow for Type==8 devices (there's a patch floating around on a mailing list that Google found for me)
4) I also had to set cache=writethrough manually in the config file

KVM finally agreed to start once all those things had been done, but the guest VM doesn't see the passed-through devices at all.
I'm continuing to work on it, but does anyone know how to make this ^%$#@! work???


Notes:
-PCIe passthrough doesn't work because the host is just slightly too old to have a working IOMMU (Opteron 2300 series)
-iSCSI doesn't work because of (I think) the SCST module problem, and also because it's just not fast enough: I have 1Gbps network infrastructure, and Ultrium-5 (?) tape drives need to be fed more than 100MBytes/sec to stream properly.
Hi,
I had the same problem some month ago...

Finaly I connected the jukebox with the tape drive to the pve-node and install there the bareos-sd (storage daemon). The backup-vm run the database/director and so on and the clients connect (for tape writing) with the pve-node.
Work well and stable.

Udo
 
Doesn't work so well when you use Amanda, unfortunately... no tape agent per se exists. I could run Amanda directly on the node, but then I may as well just reinstall a non-PVE OS and dedicate the hardware to Amanda. Which it looks like I'll have to do :-(.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!