Jeśli dotychczas nie mieliście do czynienia z rozwiązaniem VSAN od VMware a chcecie je przetestować i jednocześnie niekoniecznie macie trzy hosty ESXi (wymaganie VSAN) pod ręką lub też lab nie pozwala Wam na uruchomienie infrastruktury trzech wirtualnych hostów to pozostaje jeszcze jedno wyjście – uruchomienie „klastra” złożonego z jednego hosta ESXi, z wymuszeniem provisioningu VSAN. Wpis prezentuje jak to zrobić szybko i skutecznie – na przykładzie maszyny wirtualnej z ESXi 6.0.
- Tworzymy maszynę wirtualną, ustalamy jej parametry – tutaj UWAGA: maszynie należy przydzielić min 6 GB RAMu, gdyż w przeciwnym wypadku provisioning VSAN się nie powiedzie i zakończy błędem!
- Do maszyny dodajemy dyski, które posłużą za cache (dyski SSD) oraz zwiększą pojemność VSAN (dyski HDD). Jeden z dodatkowych dysków musi być typu SSD – w jaki sposób uzyskać taki dysk w VMware Workstation przeczytasz w artykule „Symulowanie dysku SSD po VMware Workstation oraz vSphere„.
- Na maszynie wirtualnej instalujemy ESXi – tutaj standardowo.
- Do provisioningu VSAN będziemy używać SSH, stąd – po uruchomieniu ESXi i zalogowaniu się do DCUI aktywujemy SSH (opcja w Troubleshooting Mode Options -> Enable SSH), a następnie logujemy się przez SSH.
- W sesji SSH listujemy dostępne urządzenia poleceniem:
esxcli storage core device list
- W wyniku czego otrzymujemy listę:
mpx.vmhba1:C0:T2:L0 Display Name: Local VMware, Disk (mpx.vmhba1:C0:T2:L0) Has Settable Display Name: false Size: 512000 Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/mpx.vmhba1:C0:T2:L0 Vendor: VMware, Model: VMware Virtual S Revision: 1.0 SCSI Level: 2 Is Pseudo: false Status: on Is RDM Capable: false Is Local: true Is Removable: false Is SSD: false Is VVOL PE: false Is Offline: false Is Perennially Reserved: false Queue Full Sample Size: 0 Queue Full Threshold: 0 Thin Provisioning Status: unknown Attached Filters: VAAI Status: unsupported Other UIDs: vml.0000000000766d686261313a323a30 Is Shared Clusterwide: false Is Local SAS Device: false Is SAS: false Is USB: false Is Boot USB Device: false Is Boot Device: false Device Max Queue Depth: 32 No of outstanding IOs with competing worlds: 32 Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false mpx.vmhba1:C0:T1:L0 Display Name: Local VMware, Disk (mpx.vmhba1:C0:T1:L0) Has Settable Display Name: false Size: 122880 Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/mpx.vmhba1:C0:T1:L0 Vendor: VMware, Model: VMware Virtual S Revision: 1.0 SCSI Level: 2 Is Pseudo: false Status: on Is RDM Capable: false Is Local: true Is Removable: false Is SSD: true Is VVOL PE: false Is Offline: false Is Perennially Reserved: false Queue Full Sample Size: 0 Queue Full Threshold: 0 Thin Provisioning Status: unknown Attached Filters: VAAI Status: unsupported Other UIDs: vml.0000000000766d686261313a313a30 Is Shared Clusterwide: false Is Local SAS Device: false Is SAS: false Is USB: false Is Boot USB Device: false Is Boot Device: false Device Max Queue Depth: 32 No of outstanding IOs with competing worlds: 32 Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false mpx.vmhba1:C0:T0:L0 Display Name: Local VMware, Disk (mpx.vmhba1:C0:T0:L0) Has Settable Display Name: false Size: 40960 Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/mpx.vmhba1:C0:T0:L0 Vendor: VMware, Model: VMware Virtual S Revision: 1.0 SCSI Level: 2 Is Pseudo: false Status: on Is RDM Capable: false Is Local: true Is Removable: false Is SSD: false Is VVOL PE: false Is Offline: false Is Perennially Reserved: false Queue Full Sample Size: 0 Queue Full Threshold: 0 Thin Provisioning Status: unknown Attached Filters: VAAI Status: unsupported Other UIDs: vml.0000000000766d686261313a303a30 Is Shared Clusterwide: false Is Local SAS Device: false Is SAS: false Is USB: false Is Boot USB Device: false Is Boot Device: true Device Max Queue Depth: 32 No of outstanding IOs with competing worlds: 32 Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false
- Na bazie powyższej listy i parametrów poszczególnych urządzeń identyfikujemy dyski, które chcemy użyć w VSANie:
/vmfs/devices/disks/mpx.vmhba1:C0:T1:L0 - ssd /vmfs/devices/disks/mpx.vmhba1:C0:T2:L0 - hdd
- Kolejny krok to sprawdzenie bieżących polis VSAN:
[root@localhost:~] esxcli vsan policy getdefault Policy Class Policy Value ------------ -------------------------------------------------------- cluster (("hostFailuresToTolerate" i1)) vdisk (("hostFailuresToTolerate" i1)) vmnamespace (("hostFailuresToTolerate" i1)) vmswap (("hostFailuresToTolerate" i1) ("forceProvisioning" i1)) vmem (("hostFailuresToTolerate" i1) ("forceProvisioning" i1))
- … oraz ustawienie nowych polis, zmieniających kryteria uznania klastra VSAN i wymuszających provisioning:
esxcli vsan policy setdefault -c cluster -p "((\"hostFailuresToTolerate\" i0) (\"forceProvisioning\" i1) (\"stripeWidth\" i1))" esxcli vsan policy setdefault -c vdisk -p "((\"hostFailuresToTolerate\" i0) (\"forceProvisioning\" i1) (\"stripeWidth\" i1))" esxcli vsan policy setdefault -c vmnamespace -p "((\"hostFailuresToTolerate\" i0) (\"forceProvisioning\" i1) (\"stripeWidth\" i1))" esxcli vsan policy setdefault -c vmswap -p "((\"hostFailuresToTolerate\" i0) (\"forceProvisioning\" i1) (\"stripeWidth\" i1))" esxcli vsan policy setdefault -c vmem -p "((\"hostFailuresToTolerate\" i0) (\"forceProvisioning\" i1) (\"stripeWidth\" i1))"
- Sprawdzamy czy polisy zostały zaktualizowane:
[root@localhost:~] esxcli vsan policy getdefault Policy Class Policy Value ------------ --------------------------------------------------------------------------- cluster (("stripeWidth" i1) ("hostFailuresToTolerate" i0) ("forceProvisioning" i1)) vdisk (("stripeWidth" i1) ("hostFailuresToTolerate" i0) ("forceProvisioning" i1)) vmnamespace (("stripeWidth" i1) ("hostFailuresToTolerate" i0) ("forceProvisioning" i1)) vmswap (("stripeWidth" i1) ("hostFailuresToTolerate" i0) ("forceProvisioning" i1)) vmem (("stripeWidth" i1) ("hostFailuresToTolerate" i0) ("forceProvisioning" i1))
- Polisy są ustawione poprawnie, przystępujemy do utworzenia klastra:
esxcli vsan cluster new
- Sprawdzenia stanu klastra możemy dokonać poleceniem:
esxcli vsan cluster get
- Kolejnym krokiem jest dodanie dysków do klastra. Wydajemy komendę jak poniżej, gdzie przełącznik -s określa dysk SSD, a przełącznik -d określa dysk HDD:
esxcli vsan storage add -s mpx.vmhba1:C0:T1:L0 -d mpx.vmhba1:C0:T2:L0
- Sprawdzamy, czy dyski zostały dodane poprawnie:
[root@localhost:~] esxcli vsan storage list mpx.vmhba1:C0:T2:L0 Device: mpx.vmhba1:C0:T2:L0 Display Name: mpx.vmhba1:C0:T2:L0 Is SSD: false VSAN UUID: 529637e8-d6e6-ce69-e2e7-884841747241 VSAN Disk Group UUID: 52fbe12f-6a00-3b1f-f4b2-100f93be9443 VSAN Disk Group Name: mpx.vmhba1:C0:T1:L0 Used by this host: true In CMMDS: true Checksum: 16871227982374977612 Checksum OK: true Emulated DIX/DIF Enabled: false mpx.vmhba1:C0:T1:L0 Device: mpx.vmhba1:C0:T1:L0 Display Name: mpx.vmhba1:C0:T1:L0 Is SSD: true VSAN UUID: 52fbe12f-6a00-3b1f-f4b2-100f93be9443 VSAN Disk Group UUID: 52fbe12f-6a00-3b1f-f4b2-100f93be9443 VSAN Disk Group Name: mpx.vmhba1:C0:T1:L0 Used by this host: true In CMMDS: true Checksum: 17302222945194844651 Checksum OK: true Emulated DIX/DIF Enabled: false
- Wynikiem powyższego powinien być nowy datastore o nazwie vsanDatastore widoczny np. poprzez ESXi Embedded Host Client:
W tym momencie datastore oparty o VSAN jest gotowy do pracy i możemy rozpocząć instalowanie maszyn wirtualnych. Do pełnego działania VSAN należy jednak podłączyć go do vCenter i przypisać licencję – w przeciwnym wypadku VSAN będzie działał na 60 dniowej licencji testowej.
Dodaj komentarz