Problem
Ein vSphere 6.x Host sieht einen frisch angeschlossenen VMFS Datastore nicht, der auf einem HP MSA2000fc erstellt wurde. Die VMFS-Version ist aktuell, vSphere 6 ist aktuell, die Firmware ist aktuell, aber der Datastore ist einfach nicht da. Die angeschlossenen LUNs und ihre Pfade sind in der Geräteübersicht sichtbar und werden korrekt angezeigt. Nur das/die VMFS-Volumen werden nicht gemountet.
Das /var/log/vmkernel.log sagt dazu:
2017-06-14T10:09:27.643Z cpu34:33171)ScsiUid: 273: Path 'vmhba37:C0:T0:L0' does not support VPD Device Id page.
2017-06-14T10:09:27.645Z cpu34:33171)VMWARE SCSI Id: Could not get disk id for vmhba37:C0:T0:L0
2017-06-14T10:09:27.765Z cpu8:34953 opID=81e32a6)World: 15544: VC opID 3xxxxxx-xxxxxx-xx-xx-xxxx maps to vmkernel opID xxxxxx
2017-06-14T10:09:27.765Z cpu8:34953 opID=81e32a6)WARNING: HBX: 480: 'DATASTORENAME':
ATS-only volume unable to use ATS due to host-level HardwareAcceleratedLocking configuration.
Lösung
Das nette VAAI Feature („VMware vSphere Storage APIs Array Integration“) nutzt eine Technik, die ATS heißt („Atomic, Test and Set“). Dabei werden einzelne Blöcke des Storages („atomic“) durch die Storage-Hardware gelockt, so daß nur ein Host diese exklusiv beschreiben kann. Ohne ATS könnte, in so einem Fall, ein einzelner Host die ganze LUN blockieren. Die MSA2000 G1/G2 Controller beherrschen dieses Feature allerdings leider nicht – um genau zu sein gar keine VAAI-Features.
ATS (pro Host) ausschalten:
Host > Konfiguration > Software/Erweiterte Einstellungen > VMFS3 > „HardwareAcceleratedLocking“ auf „0“ stellen
- Why VAAI? https://storagegaga.wordpress.com/2012/01/06/why-vaai/
- Disabling the VAAI functionality in ESXi/ESX https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1033665