Jak skonfigurować lokalizację logów VMware w systemie ESXi
VMware ESXi to hiperwizor, który podobnie jak inne systemy operacyjne i oprogramowanie tworzy pliki dziennika. W jednym z ostatnich wpisów na blogu omówiliśmy adres najbardziej przydatne logi VMware , a niniejszy wpis stanowi rozszerzenie tej konfiguracji. Po zainstalowaniu ESXi pliki dziennika są zapisywane w domyślnej lokalizacji. W razie potrzeby można jednak zmienić lokalizację dzienników VMware. W niniejszym wpisie na blogu wyjaśniono, jak zmienić lokalizację dzienników ESXi za pomocą wiersza poleceń oraz w graficznym interfejsie użytkownika (GUI).
Dlaczego warto zmienić lokalizację logów VMware?
Logi VMware ESXi są domyślnie usuwane po ponownym uruchomieniu hosta ESXi. Jeśli nie chcesz, aby logi VMware ESXi były usuwane po każdym ponownym uruchomieniu hosta, możesz zmienić lokalizację logów VMware na hoście ESXi z domyślnej partycji tymczasowej na pamięć trwałą, taką jak katalog w magazynie danych.
Pierwszym podejściem do skonfigurowania VMware ESXi w celu przechowywania logów na trwałym nośniku, takim jak magazyn danych, jest skonfigurowanie trwałej przestrzeni tymczasowej. Domyślnie ESXi używa systemu plików w pamięci (tmpfs) jako przestrzeni tymczasowej, co oznacza, że logi są tracone po ponownym uruchomieniu. Jednak dzięki trwałej przestrzeni tymczasowej logi zostaną zachowane po ponownym uruchomieniu i zapisane w wyznaczonym magazynie danych.
Drugim podejściem jest pozostawienie konfiguracji partycji tymczasowej bez zmian, ale zmiana ścieżki przechowywania plików dziennika z partycji tymczasowej na trwały magazyn danych. W naszym przykładzie stosujemy to podejście.
Lokalizację dzienników systemowych VMware ESXi można zmienić w wierszu poleceń ESXi oraz w interfejsie graficznym, korzystając z klienta VMware vSphere.
Zmiana lokalizacji logów ESXi za pomocą wiersza poleceń
Aby zmienić lokalizację logów ESXi w wierszu poleceń, wykonaj następujące kroki:
- Najpierw określ magazyn danych, w którym chcesz przechowywać logi. Upewnij się, że magazyn danych ma wystarczającą ilość wolnego miejsca, aby pomieścić pliki logów.
- Włącz SSH i połącz się z hostem ESXi. Użyj klienta SSH (na przykład PuTTY), aby połączyć się z adresem IP zarządzania hostem ESXi.
- Sprawdź aktualną konfigurację pamięci tymczasowej i lokalizację logów VMware. Uruchom następujące polecenie, aby sprawdzić aktualną konfigurację przechowywania logów VMware:
esxcli system syslog config getJak widać na zrzucie ekranu, /scratch/log to lokalna lokalizacja logów.

- Możesz również użyć polecenia, aby wyświetlić informacje o aktualnej konfiguracji pamięci tymczasowej:
vim-cmd hostsvc/advopt/view ScratchConfig.ConfiguredScratchLocation
- Zanotuj aktualną lokalizację pamięci tymczasowej (na przykład /tmp/scratch) oraz to, czy wykorzystuje ona pamięć, czy konkretną partycję.
- Utwórz katalog w magazynie danych. Użyj następującego polecenia, aby utworzyć katalog w wybranym magazynie danych, w którym chcesz przechowywać logi:
mkdir /vmfs/volumes//log Zastąp
nazwą magazynu danych ( datastore10a w naszym przypadku).W naszym przypadku polecenie brzmi:
mkdir /vmfs/volumes/datastore10a/log - Ustaw nową lokalizację do przechowywania logów VMware. Można ustawić katalog w magazynie danych lokalnego lub zdalnego hosta ESXi za pomocą polecenia w postaci:
esxcli system syslog config set --logdir=/vmfs/directory/path --loghost='tcp://hostname:514'Jako nową lokalizację do przechowywania logów VMware ustawiliśmy niedawno utworzony katalog w Datastore10a na naszym lokalnym hoście ESXi za pomocą polecenia:
esxcli system syslog config set --logdir=/vmfs/volumes/Datastore10a/logJeśli pojawi się błąd typu „ Logdir must exist and be a directory ”, a wymagany katalog już istnieje, spróbuj użyć identyfikatora UUID magazynu danych (partycji) zamiast przyjaznej dla użytkownika nazwy magazynu danych. Najłatwiejszym sposobem sprawdzenia identyfikatora UUID magazynu danych jest przejście do katalogu magazynu danych:
cd /vmfs/volumes/Datastore10a/Sprawdź ścieżkę bieżącego katalogu, gdzie powinien być widoczny identyfikator UUID magazynu danych (partycji). W naszym przypadku identyfikator UUID datastore10a to 609a545a-50d29185-ffbb-000c293004f2.
Uruchom polecenie, aby ustawić nową lokalizację logów, używając identyfikatora UUID magazynu danych zamiast nazwy magazynu w ścieżce:
esxcli system syslog config set --logdir=/vmfs/volumes/609a545a-50d29185-ffbb-000c293004f2/logPolecenie zostało pomyślnie wykonane.

- Przeładuj syslog, aby zastosować nowe ustawienia i rozpocząć zapisywanie logów w trwałej lokalizacji, którą jest katalog na magazynie danych:
esxcli system syslog reload
Po przeładowaniu ESXi będzie przechowywać swoje logi w określonym katalogu na wyznaczonym magazynie danych. Zapewni to zachowanie logów po ponownym uruchomieniu i zapewni bardziej trwałe i niezawodne rozwiązanie do przechowywania plików logów.
Zmiana lokalizacji logów ESXi za pomocą VMware vSphere Client
Wykonaj następujące kroki, aby zmienić lokalizację logów ESXi w interfejsie graficznym vCenter za pomocą VMware vSphere Client:
- Wybierz widok
Hosts and clustersi wybierz potrzebny host ESXi w panelu nawigacyjnym (znajdującym się po lewej stronie interfejsu). - Kliknij kartę „
Configure”, a następnie kliknij „Advanced System Settings” w sekcji „System” w panelu konfiguracji. - Znajdź klucz „
Syslog.global.logDir”, który chcesz skonfigurować. W naszym przypadku klucz ten znajduje się na stronie 31.Kliknij „
Edit”, aby zmienić wartość klucza „Syslog.global.logDir”.
- Otworzy się nowe okno do edycji zaawansowanych ustawień systemowych.
Zmień domyślną wartość „
/scratch/log” na wartość niestandardową, która może być katalogiem w Twoim magazynie danych, a następnie kliknij „OK”, aby zapisać ustawienia.
Zmiana lokalizacji logów ESXi w VMware Host Client
Jeśli nie masz vCenter Server lub korzystasz z samodzielnego hosta ESXi, możesz zmienić lokalizację logów ESXi w VMware Host Client:
- Wpisz adres IP hosta ESXi w przeglądarce internetowej i zaloguj się do VMware Host Client.
- Przejdź na stronę
Host>Manage>System>Advanced settings. - Znajdź pozycję
Syslog.global.logDirna liście opcji. - Wybierz klucz
Syslog.global.logDiri kliknij opcjęEdit.
- Wprowadź nową wartość lokalizacji logów ESXi w odpowiednim polu i naciśnij
Save.
Jak zmienić lokalizację logów ESXi w PowerCLI
Jeśli lubisz vSphere PowerCLI, czyli interfejs wiersza poleceń oparty na Windows PowerShell, możesz rozważyć następujące sposoby zmiany lokalizacji logów hosta VMware ESXi. Możliwe są trzy scenariusze.
Zmiana lokalizacji logów ESXi na hoście autonomicznym
- Otwórz PowerCLI i zaloguj się do serwera ESXi przy użyciu uprawnień administratora:
Connect-VIServer -Server-User -Password - Ustaw nową lokalizację logów ESXi w PowerCLI:
Set-VMHostAdvancedConfiguration -VMHost-Name "Syslog.global.logDir" -Value "[ ] " Zastąp < DatastoreName > nazwą magazynu danych, w którym chcesz przechowywać logi, oraz < Path > nową ścieżką katalogu dla logów.
Zmiana lokalizacji logów ESXi dla wielu hostów ESXi bez vCenter
Jeśli masz wiele hostów ESXi, ale nie są one zarządzane przez vCenter, wykonaj następujące czynności:
- Przygotuj listę hostów ESXi. Utwórz plik tekstowy zawierający adres IP lub nazwę hosta każdego hosta, po jednym wierszu (na przykład hosts.txt ).
- Rozważ przykład skryptu PowerCLI do ustawienia lokalizacji logów ESXi:
$hosts = Get-Content -Path "C:pathtohosts.txt"foreach ($host in $hosts) {Connect-VIServer -Server $host -User-Password Set-VMHostAdvancedConfiguration -VMHost $host -Name "Syslog.global.logDir" -Value "[] " Disconnect-VIServer -Server $host -Confirm:$false}Wprowadź wymagane wartości zgodnie ze swoim środowiskiem i infrastrukturą.
Zmiana lokalizacji logów ESXi dla wielu hostów za pomocą vCenter
Jeśli hosty ESXi są zarządzane przez vCenter, lokalizację logów ESXi można zmienić w PowerShell w następujący sposób:
- Połącz się z vCenter Server w PowerCLI:
Connect-VIServer -Server-User -Password - Ustaw lokalizację logów ESXi dla wszystkich hostów zarządzanych przez vCenter:
Get-VMHost | ForEach-Object {Set-VMHostAdvancedConfiguration -VMHost $_ -Name "Syslog.global.logDir" -Value "[] " }Podczas uruchamiania poleceń wprowadź wymagane wartości, aby dostosować konfigurację do swojego środowiska.
Wnioski
Korzystanie z trwałego magazynu dla logów ESXi pozwala zachować te logi po ponownym uruchomieniu ESXi. Lokalizację logów ESXi można zmienić za pomocą wiersza poleceń i graficznego interfejsu użytkownika. Jeśli host ESXi jest zarządzany przez vCenter Server, można użyć VMware vSphere Client. Jeśli host ESXi nie jest zarządzany przez vCenter, należy skorzystać z wiersza poleceń ESXi lub programu VMware Host Client. Organizacje posiadające rozbudowane środowiska wirtualne mogą skonfigurować serwer logów z współdzielonym magazynem danych, aby zapisywać na nim logi ESXi z wielu hostów.