Zasoby VMware vSphere: wyjaśnienie funkcji HotAdd/HotPlug
W środowisku VMware vSphere przydzielone zasoby mogą okazać się niewystarczające do osiągnięcia wymaganego poziomu wydajności, gdy na maszynie wirtualnej działa wymagająca aplikacja. W takim przypadku optymalnym rozwiązaniem jest dodanie do maszyny wirtualnej dodatkowych zasobów procesora i pamięci.
Gdy na maszynie wirtualnej działają krytyczne aplikacje, nie można pozwolić sobie na jej wyłączenie i ryzyko przestoju. W takiej sytuacji przydatna jest funkcja „ Hot Add ” z VMware vSphere. Dzięki elastyczności zapewnianej przez wirtualizację VMware można dodać wirtualny Procesor i pamięć RAM do uruchomionej maszyny wirtualnej. W tym artykule wyjaśnimy, jak włączyć funkcję „ VMware Hot Add”, a także omówimy przypadki użycia, konfigurację i ograniczenia tej funkcji.
Czym jest funkcja VMware Hot Add?
VMware Hot Add to funkcja umożliwiająca dodawanie urządzeń wirtualnych do maszyny wirtualnej podczas jej działania. Domyślnie można dodawać urządzenia wirtualne, takie jak wirtualny dysk twardy (nie IDE), karty sieciowe i urządzenia USB, gdy maszyna wirtualna jest włączona. VMware Hot Add umożliwia dodawanie wirtualnego Procesora (central processing unit) i pamięci RAM (random access memory) w trakcie pracy. Po włączeniu opcji VMware Hot Add nie ma potrzeby wyłączania maszyny wirtualnej w celu dodania urządzeń wirtualnych.
VMware Hot Add vs Hot Plug
Można zauważyć, że funkcja CPU Hot Add jest czasami określana jako CPU hot plug. Ta sama zasada dotyczy pamięci hot add oraz pamięci hot plug. Te dwa terminy odnoszą się do tego samego i są zamienne.
Uwaga: Nie należy mylić pamięci dynamicznej VMware z pamięcią VMware hot add , ponieważ są to różne funkcje. Pamięć dynamiczna VMware to technika służąca do wydajnego zarządzania pamięcią VMware dla maszyn wirtualnych. Nazwa ta nie jest oficjalną nazwą tej funkcji, ale użytkownicy określają ją jako zaawansowany odpowiednik pamięci dynamicznej Hyper-V. Techniki zarządzania pamięcią VMware obejmują przezroczyste współdzielenie stron, balonowanie pamięci, kompresję pamięci oraz wymianę pamięci.
Wymagania i ograniczenia
Istnieją wymagania i ograniczenia dotyczące dodawania wirtualnych procesorów (vCPU) i pamięci do uruchomionych maszyn wirtualnych:
- System operacyjny gościa musi obsługiwać funkcję dodawania urządzeń na gorąco.
- Zgodność sprzętowa maszyny wirtualnej (wersja sprzętu wirtualnego) musi wynosić 7 lub wyższą.
- {15} powinien być zainstalowany w systemie operacyjnym gościa.
Fault Tolerancenie może być włączona dla maszyny wirtualnej.- Aby włączyć funkcję
Hot Add, maszyna wirtualna musi być wyłączona. - Należy używać licencji
VMware vSphere Advanced,EnterpriselubEnterprise Plus. VMware vSphereEnterprise Plusobsługuje zarównoCPU hot addjak i pamięćhot add. Zapoznaj się z Przewodnik po licencjach VMware , aby sprawdzić dostępne funkcje dla innych edycji i systemów operacyjnych gościa.
Przed dodaniem procesorów vCPU należy wziąć pod uwagę ograniczenia licencyjne systemu operacyjnego gościa oraz aplikacji zainstalowanych na maszynie wirtualnej. Konieczne może być zakupienie dodatkowych licencji, aby uruchomić oprogramowanie na większej liczbie procesorów.
Systemy operacyjne gości obsługujące Hot Add to Windows Server 2003 i nowsze, a także systemy Linux korzystające z kernel 3.8 i nowszych wersji. Najwyższe Windows Server edycje obsługują zarówno procesory, jak i pamięć hot add. Niektóre niższe Windows Server edycje obsługują wyłącznie pamięć hot add.
CPU hotplug |
|||
Standard, Enterprise
|
|||
Standard, Enterprise, Datacenter
|
|||
Standard, Enterprise
|
|||
Datacenter
|
|||
Standard, Enterprise
|
|||
Datacenter
|
|||
Standard, Datacenter
|
|||
Standard, Datacenter
|
|||
Standard, Datacenter
|
|||
Standard, Datacenter
|
VMware Hot Add
VMware Hot Add VMware Hot Add
VMware vCPU Hot Add
vNUMA
VMware Hot AddvNUMA
vNUMA NUMA vNUMA
NUMA
NUMA (non-uniform memory access) NUMA NUMA NUMA node 
Jeśli funkcja NUMA jest wyłączona lub, na przykład, posiadasz dwa procesory, a pamięć jest zainstalowana tylko w gniazdach jednego z nich, mogą wystąpić spadki wydajności i inne problemy sprzętowe. Jeśli nie masz wystarczającej liczby modułów pamięci, aby zapełnić wszystkie gniazda na płycie głównej z dwoma procesorami, spróbuj rozmieścić moduły pamięci w gniazdach zarówno pierwszego, jak i drugiego procesora. Funkcja
NUMA pomaga w racjonalnym rozmieszczeniu procesów systemowych działających w systemie operacyjnym obsługującym NUMA. Pozwala to każdemu procesowi na dostęp do obszarów pamięci znajdujących się najbliżej procesorów wykorzystywanych przez te procesy.
Czym jest vNUMA?
Virtual NUMA (vNUMA) to metoda optymalizacji w VMware vSphere. Zapewnia ona optymalną wydajność dużych maszyn wirtualnych poprzez uwzględnienie topologii NUMA i unikanie wąskich gardeł przepustowości pamięci. Topologia fizyczna NUMA jest udostępniana systemowi operacyjnemu gościa za pomocą vNUMA. W rezultacie wirtualna topologia NUMA opiera się na topologii NUMA podstawowego sprzętu fizycznego używanego przez host ESXi. Wirtualne procesory maszyny wirtualnej mogą planować dostęp do pamięci znajdującej się na tych samych węzłach NUMA . Funkcja
vNUMA jest dostępna dla maszyn wirtualnych korzystających z wirtualnego sprzętu w wersji 8 lub wyższej. Podczas tworzenia maszyny wirtualnej można wybrać liczbę procesorów oraz liczbę rdzeni procesorów. Liczba gniazd procesorów jest obliczana automatycznie. Jeśli liczba procesorów vCPU używanych przez maszynę wirtualną jest większa niż liczba rdzeni w każdym węźle NUMA , wówczas topologia vNUMA zostanie zmieniona i zoptymalizowana pod kątem systemu operacyjnego gościa. W tym przypadku system operacyjny gościa może korzystać z wielu NUMA węzłów. Taka maszyna wirtualna nazywana jest maszyną wirtualną typu „wide” lub „large”.
Co się dzieje, gdy vNUMA jest wyłączone?
Gdy Hot Add jest włączone, a vNUMA wyłączone, maszyna wirtualna nie rozpoznaje podstawowych NUMA węzłów na hoście ESXi i zwiększa dostęp do pamięci na zdalnych NUMA węzłach. Planowanie wykorzystania procesora i pamięci przez system operacyjny gościa nie jest optymalne. W rezultacie wydajność maszyny wirtualnej ulega pogorszeniu. Spadek wydajności jest zauważalny w przypadku rozległych maszyn wirtualnych, w których aplikacja uruchamia coraz więcej wątków. Na przykład, jeśli włączysz Hot Add na maszynie wirtualnej, której system operacyjny gościa korzystał z dwóch NUMA węzłów, ten system operacyjny gościa będzie mógł wykryć tylko jeden NUMA węzeł, ponieważ nie zostanie utworzona zoptymalizowana topologia vNUMA .
Włącz VMware Hot Add tylko wtedy, gdy zamierzasz korzystać z tej funkcji podczas pracy maszyny wirtualnej. W przeciwnym razie lepiej wyłączyć opcję Hot Add dla maszyn wirtualnych obejmujących więcej niż jeden NUMA węzeł. Jeśli nie masz pewności, czy potrzebujesz możliwości dodawania procesorów i pamięci na gorąco, możesz od samego początku przydzielić maszynie wirtualnej większą ilość zasobów procesora i pamięci.
VMware Hot Add ograniczenia
Nie ma możliwości usuwania na gorąco
Gdy włączona jest funkcja Hot Add/hot plug , nie można usuwać na gorąco zasobów procesora i pamięci. Po dodaniu na gorąco vCPU i pamięci do maszyny wirtualnej aplikacje wykorzystują te dodane zasoby. Dlatego aplikacje nie obsługują opcji takich jak odbieranie pamięci i mocy obliczeniowej procesora, które są już w użyciu. Z tego powodu jedynym możliwym sposobem zmniejszenia zasobów procesora i pamięci dla maszyny wirtualnej jest jej wyłączenie i edycja ustawień wyłączonej maszyny wirtualnej.
Ograniczenia skalowalności pamięci
Maksymalna ilość pamięci, jaką można dodać na gorąco, wynosi 16-krotność początkowej ilości pamięci przydzielonej dla maszyny wirtualnej. Na przykład, jeśli maszyna wirtualna ma 4 GB pamięci RAM, ilość tę można zwiększyć do 64 GB.
Istnieje również ograniczenie dotyczące maszyn wirtualnych z 3 GB pamięci RAM (dokładnie 3072 MB) lub mniej. Może pojawić się błąd lub system operacyjny gościa (64-bitowy Linux i 32-bitowy Windows) może nie rozpoznać dodanej pamięci. Rozwiązaniem jest wyłączenie maszyny wirtualnej i zwiększenie ilości pamięci do wartości powyżej 3072 MB. Następnie można włączyć maszynę wirtualną i skorzystać z pamięci VMware Hot Add.
Jak skonfigurować VMware Hot Add
Istnieje wiele metod włączenia VMware vCPUs Hot Add oraz pamięci VMware Hot Add. Można skorzystać z graficznego interfejsu użytkownika lub interfejsu wiersza poleceń.
Włączanie Hot Add w vCenter
Aby włączyć opcję VMware Hot Add za pomocą vCenter, zaloguj się do VMware vSphere Client i wykonaj następujące czynności:
- Przejdź do
Hosts and Clusters. - Wybierz odpowiednią maszynę wirtualną w panelu nawigacyjnym. Maszyna wirtualna musi być wyłączona.
- Kliknij ikonę Edytuj ustawienia . Alternatywnie możesz kliknąć prawym przyciskiem myszy nazwę maszyny wirtualnej i w menu, które się otworzy, wybrać opcję
Edit Settings.
Aby włączyć CPU hot add, wykonaj następujące czynności:
- W oknie
Edit Settingsrozwiń ustawienia procesora. - W wierszu
CPU Hot Plugzaznacz pole wyboruEnable CPU Hot Add.
Aby włączyć pamięć hot add:
- W oknie
Edit Settingsrozwiń ustawienia pamięci. - W wierszu
Memory Hot Plugzaznacz pole wyboruEnable.
- Kliknij
OK, aby zapisać ustawienia maszyny wirtualnej i zamknąć okno.
Teraz możesz uruchomić maszynę wirtualną i hot add przydzielić jej procesory vCPU i pamięć VMware.
Włączanie VMware Hot Add w PowerCLI
VMware PowerCLI to potężne narzędzie wiersza poleceń do zarządzania VMware vSphere. Przyjrzyjmy się, jak włączyć VMware Hot Add w PowerCLI.
-
Connect-VIServer 192.168.101.205Połącz się z vCenter lub hostem ESXi, używając poniższego polecenia i wprowadzając odpowiedni adres IP (w tym przykładzie 192.168.101.205) lub nazwę hosta: Po wyświetleniu monitu wprowadź dane uwierzytelniające. Wyświetl listę maszyn wirtualnych na hoście ESXi, z którym nawiązałeś połączenie. Upewnij się, że maszyna wirtualna, dla której chcesz włączyć funkcję , jest wyłączona. Uruchom te polecenia, aby włączyć funkcje hot add pamięci i procesora dla wybranej maszyny wirtualnej. Gdzie: to nazwa potrzebnej maszyny wirtualnej to polecenie włączające pamięć to polecenie włączające Sprawdź, na których maszynach wirtualnych włączono funkcje hot add procesora i pamięci: Włączanie w pliku konfiguracyjnym maszyny wirtualnej Inną metodą włączenia jest użycie ESXi i edycja pliku konfiguracyjnego maszyny wirtualnej. Otwórz powłokę ESXi lub połącz się z hostem ESXi przez SSH. Następnie uruchom w wierszu poleceń poniższe polecenia, aby włączyć : Przejdź do katalogu maszyny wirtualnej: Upewnij się, że maszyna wirtualna jest wyłączona. Otwórz plik konfiguracyjny VMX maszyny wirtualnej w edytorze tekstowym: Dodaj ten wiersz do pliku konfiguracyjnego, aby włączyć Dodaj ten wiersz do pliku konfiguracyjnego, aby włączyć pamięć Zapisz plik konfiguracyjny i zamknij edytor tekstowy. XML-PH-0026@deepl.internal To ustawienie nie ma wpływu na ani na konfigurację pamięci dodawanej na gorąco VMware dla maszyny wirtualnej. Edycja konfiguracji pliku VMX w Można również edytować konfigurację pliku VMX w Wybierz potrzebną maszynę wirtualną w . Wyłącz maszynę wirtualną, jeśli jest uruchomiona. Kliknij . Wybierz kartę w oknie . Kliknij , aby rozwinąć opcje, a następnie kliknij . Kliknij w oknie . W sekcji wprowadź odpowiednie wartości, aby włączyć pamięć i procesory wirtualne VMware vCPU. Nazwa: Wartość: Nazwa: Wartość:
-
Get-VM -
Hot Add -
$VM = Get-VM Windows-VM
$spec = New-Object VMware.Vim.VirtualMachineConfigSpec
$spec.memoryHotAddEnabled = $true
$spec.cpuHotAddEnabled = $true
$VM.ExtensionData.ReconfigVM_Task($spec)Windows-VM
$spec.memoryHotAddEnabled = $truehot add
$spec.cpuHotAddEnabled = $trueCPU hot add -
Get-VM | Get-View | Select Name, `
@{N="CpuHotAddEnabled";E={$_.Config.CpuHotAddEnabled}}, `
@{N="CpuHotRemoveEnabled";E={$_.Config.CpuHotRemoveEnabled}}, `
@{N="MemoryHotAddEnabled";E={$_.Config.MemoryHotAddEnabled}}
Hot Add
VMware Hot Add
interfejs wiersza poleceń VMX Hot Add
-
cd /vmfs/volumes/datastore10a/Windows-VM/
-
vi Windows-VM.vmx -
vCPU Hot Add:vcpu.hotadd = "TRUE" -
Hot Add:mem.hotadd = "TRUE" -
VMX
devices.hotplug = “false”
CPU hotplug
VMware vSphere Client
VMware vSphere Client:
-
VMware vSphere Client -
Edit Settings -
VM OptionsVM Settings -
AdvancedEdit Configuration
-
Add Configuration ParamsConfiguration Parameters -
Add New Configuration ParamsVMware Hot Add
mem.hotaddTRUE
vcpu.hotaddTRUE

- Kliknij
OK, aby zapisać ustawienia i zamknąć okno.
Wnioski
Włącz VMware Hot Add tylko wtedy, gdy zamierzasz korzystać z tej funkcji w celu dodawania wirtualnych procesorów i pamięci do uruchomionej maszyny wirtualnej. Jeśli włączysz opcję VMware Hot Add , ale nie będziesz korzystać z tej funkcji, wydajność dużych maszyn wirtualnych może ulec pogorszeniu, ponieważ nie będzie wykorzystywana topologia z wieloma węzłami NUMA . Skorzystaj z monitorowania maszyn wirtualnych VMware, aby monitorować wydajność maszyn wirtualnych i wykorzystanie zasobów w vSphere. Takie podejście pomoże Ci ustalić, czy w przypadku danej maszyny wirtualnej konieczne jest włączenie funkcji Hot Add.
