Mam 2 hosty, oba z Centrum danych 2016 Server
Na każdym hoście mam obecnie 2 maszyny wirtualne, które używają pamięci współdzielonej
Mogę wykonywać wszystkie czynności związane z klastrem, tj. Migrować na żywo, przenosić pamięć,
Szukałem w całym Google skryptu, aby móc zapisać wszystkie maszyny wirtualne w klastrze w tym samym czasie.
Jeśli uruchomię to:
$clusterNodes = Get-ClusterNode;
$Name = ForEach($item in $clusterNodes){Get-VM -ComputerName $item.Name; }
{save-VM -ComputerName $item.Name; }
Uratuje to VM jednak dwukrotnie poprosi mnie o nazwy maszyn wirtualnych dla każdego hosta.
Moim nadrzędnym celem jest możliwość rekonfiguracji wszystkich maszyn wirtualnych w klastrze z jednego komputera, a także wielu maszyn wirtualnych, więc nie zawsze są one na tym samym hoście.
Przykład:
Zapisz wszystkie vm
Przenieś poza pamięć współdzieloną:
Set-VM pv02 -SnapshotFileLocation C:\ClusterStorage\Volume1\pv02
Set-VM pv02 -SmartPagingFilePath C:\ClusterStorage\Volume1\pv02
Set-VMHardDiskDrive -VMName pv02 -ControllerType SCSI -Path C:\ClusterStorage\Volume1\pv02\pv02.vhdx
Uruchom maszyny wirtualne
Jeśli zaloguję się do każdego hosta osobno, polecenie będzie działać poprawnie, jednak w mojej produkcji mam 7 hostów z około 100 maszynami wirtualnymi.
źródło