packer-builder-vsphere icon indicating copy to clipboard operation
packer-builder-vsphere copied to clipboard

Support for more than one scsi controller

Open bby-bishopclark opened this issue 5 years ago • 1 comments

After the successful fix for #68 , I'd like to talk about a feature to manage more than one iscsi controller as well:

"datastore": "dsc_testvms",
"disk_controller": "scsi0",  //default
"disk_controller_type": "pvscsi",
"disks": [
  {
    "name": "disk1",
    "size": 32,
    "type": "thin",
  },
  {
    "name": "swap1",
    "size": 12,
    "type": "thick"
    "controller": "scsi1",
    "datastore": "dsc_tst_ssd",
  },
  {
    "name": "data100_1",
    "size": 100,
    "controller": "scsi2",
    "datastore": "dsc_tst_db",
    "type": "thickeagerzeroed"
  }
],

Our standard VM instantiation leverages multiple vHBAs to get multiple write-queues; it's a standard perf tweak for better offload, which then allows the hypervisor more latitude in write ordering with more writes in-flight.

As mentioned under #68 (comment 530072308).

bby-bishopclark avatar Sep 24 '19 16:09 bby-bishopclark

+1
We pre-populate all of our VM templates with 4 pvscsi controllers. (3 of which don't have hard drives) This is due to the 'feature' of VMWare BIOS that the 4th peripheral device added to a VM get's a lower hardware ID than the first. So if you have a VM with 3 SCSI controllers, 3 disk and a NIC; then add a 4th SCSI controller, what was according to BIOS controller 0, 1, 2 is now 1, 2, 3, 0, making SCSI IDs seen by the OS different. On next boot if, or immediate if done live, Windows sees disk 0 that used to be 0:0 is now 1:0, disk 2 is now 2:0, disk 3 is now 3:0, sets disk 1 to offline, reattaches disk 0 and disk 3 with the new scsi ID and adds disk 4. Disk 1 must be brought back online manually.

JesseHermes avatar Nov 01 '19 22:11 JesseHermes