We are testing Dell storage (MD3620i) with dual active iSCSI controllers using 1Gbit switch
and dual port 1Gbit NICs on Proxmox hosts (no 10Gbit stuff yet)
Unfortunately, only one controller can access to one virtual disk on storage, so we did the following:
- Configured and tested multipath setup using vendor documentation
- Created two identical "virtual disks" on storage
- Manualy created Volume Group with two physical volumes (from storage "virtual disks")
- Added that volume group to the web interface (as an "existing volume group")
To achieve the final goal (IO over two iSCSI controllers), LVs must be created
with --stripes option (see patch at the bottom).
The result is rather reasonable (180MB/s-200MB/s) from a Debian VPS installed
on "striped" volume group.
Is it possible to add this option to the Proxmox itself, something along the lines:
- "number of stripes" option when creating LV groups
- More elaborate patch for /usr/share/perl5/PVE/Storage.pm, to detect stripes > 0
and dual port 1Gbit NICs on Proxmox hosts (no 10Gbit stuff yet)
Unfortunately, only one controller can access to one virtual disk on storage, so we did the following:
- Configured and tested multipath setup using vendor documentation
- Created two identical "virtual disks" on storage
- Manualy created Volume Group with two physical volumes (from storage "virtual disks")
- Added that volume group to the web interface (as an "existing volume group")
To achieve the final goal (IO over two iSCSI controllers), LVs must be created
with --stripes option (see patch at the bottom).
The result is rather reasonable (180MB/s-200MB/s) from a Debian VPS installed
on "striped" volume group.
Is it possible to add this option to the Proxmox itself, something along the lines:
- "number of stripes" option when creating LV groups
- More elaborate patch for /usr/share/perl5/PVE/Storage.pm, to detect stripes > 0
Code:
--- Storage.pm.orig 2011-08-22 12:49:32.000000000 +0200
+++ Storage.pm 2011-08-22 12:51:20.000000000 +0200
@@ -1621,7 +1621,7 @@
die "unable to allocate an image name for VM $vmid in storage '$storeid'\n"
if !$name;
- my $cmd = ['/sbin/lvcreate', '--addtag', "pve-vm-$vmid", '--size', "${size}k", '--name', $name, $vg];
+ my $cmd = ['/sbin/lvcreate', '--addtag', "pve-vm-$vmid", '--size', "${size}k", '--stripes', '2', '--name', $name, $vg];
run_command ($cmd);