wskazówki i porady dotyczące rozwiązywania problemów ze słabą wydajnością vSphere

wprowadzenie

jak każdy inny administrator, wiesz, że maszyny wirtualne w końcu zaczynają cierpieć z powodu zakłóceń, problemów z wydajnością lub po prostu przestają reagować. To niestety jest fakt życia. Są szanse, że jako inżynier ds. wirtualizacji prawdopodobnie przynajmniej raz zetknąłeś się z tymi problemami. A ponieważ zwirtualizowane środowisko jest dość skomplikowanym systemem, może być zbyt wiele różnych przyczyn lub czynników wpływających na słabą wydajność maszyny wirtualnej. Próbując dowiedzieć się, co jest nie tak może zająć dużo czasu.

dzisiaj wspólnie spróbujemy ustalić, co może powodować słabą wydajność infrastruktury VMware i znaleźć sposoby na jej uniknięcie.

co będzie potrzebne do prawidłowego rozwiązywania problemów?

po pierwsze rekordy. Rekordy są Świętym Graalem w rozwiązywaniu problemów środowiska vSphere. Wiem, wiem. Oczywiście ufasz swojej pamięci w 100% i oczywiście zapamiętasz wszystko, co musisz wiedzieć, takie jak dane logowania lub inne niezbędne informacje. Jednak ostatnią rzeczą, którą chcesz zrobić, gdy serwer nagle zawiedzie lub hosty ESXi są przeciążone, jest nerwowa próba zapamiętania haseł, aby wejść do hosta lub vSphere vCenter.

również każda istniejąca dokumentacja, taka jak schematy klastrów vSphere, może być bardzo pomocna. Jeśli tak naprawdę nie wiesz, jak skonfigurowany jest cały system, spowolni to cię. Oczywiście, żadna osoba na świecie nie uwielbia prowadzić rejestrów, ale uwierz, gdy zajdzie taka potrzeba, będziesz wdzięczny za łatwo dostępne informacje. Teraz rzućmy okiem na to, z czego powinny składać się te informacje:

hosty ESXi:

  • nazwy hostów / adresy IP
  • Wersja hosta ESXi i poziom poprawek
  • hasło roota (zachowaj je w zabezpieczonej lokalizacji)
  • zarejestrowane adresy IP do przechowywania i interfejsu
  • opis sprzętu hosta
  • konfiguracja pamięci masowej (iSCSI itp.)
  • Karty Sieciowe (dostawca, Wersja Sterownika itp.)

Przełączniki pamięci masowej:

  • używane adresy IP
  • Wersja oprogramowania układowego
  • poświadczenia (zachowaj je w zabezpieczonej lokalizacji)
  • ustawienia Vlan

tablica pamięci:

  • adres IP portu zarządzania SAN
  • poziom oprogramowania sprzętowego
  • konfiguracja LUN, poziom RAID, liczba dysków, rozmiary, oprogramowanie sprzętowe dysku
  • loginy i hasła do interfejsu zarządzania tablicą San
  • specyficzne dla dostawcy narzędzia do zarządzania SAN(specyficzne narzędzia)

jak już pewnie możesz zebrać, im więcej dokumentacji, tym lepiej. Niestety, wielu adminów ignoruje tę zasadę. Ponadto Twoja dokumentacja nie będzie zbyt przydatna, jeśli jest przestarzała, więc musi nadążać za zmianami w miarę ich pojawiania się.

od czego zacząć?

1. Uważnie przestudiuj najlepsze praktyki wydajności VMware

ten materiał pozostaje krytyczny i ważny od dwóch lat. Na początku jest schemat rozwiązywania problemów. Możliwe problemy są sortowane według ich znaczenia (narzędzia VMware, procesor, itp) i ich zasięgu (od 100% wpływ na wydajność do minimalnego). Jeśli go używasz, może ci bardzo pomóc w ulepszeniu infrastruktury.

2. Narzędzia VMware?

upewnij się, że narzędzia VMware są zainstalowane, uaktualnione i uruchomione na wszystkich maszynach wirtualnych. Zasadniczo pakiet VMware Tools jest pakietem sterowników urządzeń wirtualnych, które wpływają na wydajność maszyny wirtualnej (zwykle na lepsze, oczywiście).

Sprawdź instalację narzędzi VMware.

  • Wybierz hosta w vSphere Web Client;
  • przejdź do zakładki Virtual Machines;
  • Dodaj kolumnę “Status VMware Tools”;
  • Sprawdź status. Jeśli jest napisane OK, zacznij szukać następnego sposobu na poprawę wydajności.
  • nie działa / nie działa-Zainstaluj narzędzia VMware.

Jeśli narzędzia VMware nie uruchamiają się, musisz naprawić system operacyjny gościa, ponieważ tam może być problem. To albo Aktualizacja jądra Linuksa, albo ktoś z jakiegoś powodu miał wyłączone narzędzia VMware w systemie Windows.

jeśli bieżąca wersja VMware Tools jest nieaktualna, musisz przejść do aktualizacji za pomocą menu kontekstowego vSphere Web Client. Zwykle dzieje się tak po zainstalowaniu najnowszych aktualizacji na hostach ESX/ESXi. Gdy skończysz z nimi, nie zapomnij również o aktualizowaniu narzędzi VMware Tools. Ogólnie rzecz biorąc, dzięki vSphere Web Client można łatwo sprawdzić narzędzia VMware, jak sugeruje następujący schemat: vSphere Web Client

Wyświetlanie stanu vmtools dla maszyn wirtualnych.
możesz dodać vmtools klikając prawym przyciskiem myszy na tytule i wybierając go odpowiednio.

stan Vmtools
można jednak zastosować scenariusz PowerCLI, który sprawdza obecność pakietu vmtools i jego aktualny stan. Większość właściwości związanych z vmtools znajduje się pod <vm>.gość.extensiondata.

VMWare PowerCLI dla ESXi i vSphere

PowerCLI dla VMware vSphere to niezwykle potężne narzędzie, oparte na Microsoft PowerShell/ PowerCLI umożliwia wykonywanie 98% zadań ręcznych do zarządzania infrastrukturą wirtualną z wiersza poleceń. Jako narzędzie PowerCLI umożliwia centralizację zarządzania operacyjnego serwerem ESXi i vCenter w wierszu poleceń. Dzięki temu wspaniałemu narzędziu możesz tworzyć scenariusze, monitorować stan maszyn wirtualnych, pamięci masowej, sieci, kont użytkowników i, wisienką na torcie, zautomatyzować większość procesów operacyjnych. Możesz zainstalować PowerCLI na komputerach z Microsoft Windows 7 / Windows Server 2008 R2 i wyższymi, ale co ciekawsze, istnieje kilka wersji dla różnych zestawów Linuksa.

PowerCLI składa się z ponad 1900 cmdletów do zarządzania chmurą i wirtualną infrastrukturą VMware (vSphere, vSAN, vRealize Operations Manager, vCloud Director, Site Recovery Manager, Horizon 7 i vCloud Air). Wykonując cmdlet, zwracasz się do API na wybranym hoście ESXi lub serwerze vCenter. Dobra wiadomość: możesz pobrać najnowszą łatkę VMware PowerCLI z oficjalnej strony VMware (Tak, oczywiście, będziesz potrzebował do tego konta). VMware PowerCLI aby rozpocząć korzystanie z konsoli PowerCLI, po prostu uruchom skrót VMware vSphere PowerCLI jako administrator.  konsola PowerCLI

podstawowe problemy

1. Brak zasobów dla maszyny wirtualnej

wiem, Wiem, co prawda, posiadanie wystarczającej ilości zasobów dla maszyny Wirtualnej do wydajnego działania jest koniecznością. Będziesz jednak zaskoczony, ile maszyn wirtualnych nie ma przydzielonych wystarczających zasobów zgodnie z wymaganiami systemu operacyjnego gościa i uruchomionymi pod nim aplikacjami. To znaczy, powinieneś to wiedzieć jak z tyłu ręki, że pomimo niezliczonych korzyści, jakie przynosi wirtualizacja, zawsze są koszty ogólne, z którymi musisz się zmagać. Co zrobi VM, jeśli zabraknie pamięci RAM? Oczywiście twoja maszyna zacznie wymieniać się na dysk znacznie częściej. Jeśli podstawowa pamięć masowa jest pełna, wydajność zostanie dotknięta ogromnym ciosem. Dlatego zawsze, gdy masz na to okazję, korzystaj z rezerwacji, pul zasobów, DRS i wszystkiego, co tylko możesz, aby upewnić się, że odpowiednia ilość zasobów jest przypisana do maszyny Wirtualnej, aby zapewnić maksymalną wydajność operacyjną.

2. Monitorowanie wydajności

zasadniczo monitorowanie wydajności jest funkcją wbudowaną w klientach vSphere. To tutaj jest jednym z tych niezbędnych narzędzi, które pomogą Ci zbadać problemy związane z wydajnością. Jest tak dobry, ponieważ umożliwia korzystanie z alarmów w miarę możliwości, więc zawsze jesteś o krok przed każdym problemem z wydajnością.  Vmware ESXi

pamiętaj jednak, że pracując na lokalnym hoście ESXi, możesz dotrzeć tylko do zakładki wydajność. Aby uzyskać więcej informacji, użyj VMware® vSphere vCenter. VMware® vSphere vCenterbardzo ważne. Wydajność i zaawansowana wydajność to więcej niż skuteczne i pouczające narzędzia diagnostyczne. Jeśli użyjesz go dobrze, nie będziesz miał problemu ze znalezieniem słabego punktu swojego systemu.

weźmy nasycenie zasobów procesora jako przykład. Aby sprawdzić szczegóły:

  • wybierz pulę zasobów i przejdź do wydajności. Następnie przełącz go na zaawansowane i wybierz obiekt CPU;
  • Oceń aktualne nasycenie W MHz (użycie);
  • Porównaj wartość ograniczenia puli zasobów i aktualnego nasycenia. Jeśli jest blisko limitu, istnieje możliwość, że brakuje zasobów i wszystko, co musisz zrobić, to ponownie ocenić wartość CPU ready dla oddzielnych maszyn wirtualnych w tej puli;

weryfikacja gotowości procesora:

  • dla procesora gotowy. wybierz maszynę wirtualną, przejdź do wydajności, następnie wybierz tryb zaawansowany i przełącz na przeglądanie “CPU” (jeśli chcesz rozwiązać problemy z wydajnością określonej maszyny wirtualnej, zacznij od tej);
  • Oceń gotowe dla wszystkich “obiektów”maszyny wirtualnej. “Object” jest oddzielnym procesorem wirtualnym maszyny wirtualnej. Musisz zmienić właściwości ” opcji wykresu…”, aby to sobie wyobrazić;
  • powiedz mi, czy minimalna lub Średnia wartość gotowości dla dowolnego procesora wirtualnego przekracza 2000 ms? Jeśli tak, to kiedy, teraz wszystko jasne. Po prostu brakuje zasobów procesora z powodu limitu ustawionego na pulę zasobów;
  • teraz zrób to samo dla reszty maszyn wirtualnych w tej puli.

weryfikacja nasycenia procesora hosta:

  • Wybierz hosta, przejdź do wydajności, a następnie przejdź do trybu zaawansowanego i wybierz obiekt “CPU”;
  • Oceń obecne nasycenie W MHz (użycie);
  • czy przekracza 75%, czy góra to 90%? Jeśli tak, to być może brakuje zasobów procesora hosta. Sprawdź procesor gotowy do maszyny wirtualnej na tym hoście, jak zrobiłem poniżej. Jeśli średnie nasycenie centralnego procesora nie przekracza 75%, następny jest dla Ciebie!

weryfikacja gotowości procesora:

  • jeśli chcesz rozwiązać problem wydajności określonej maszyny wirtualnej, zacznij od tej. W przeciwnym razie wybierz hosta, przejdź do maszyn wirtualnych, Uporządkuj listę tak, jak w Host CPU — MHz (kolumna do kolumny) i spójrz na jedną lub dwie maszyny wirtualne na początku listy;
  • aby zmierzyć gotowość procesora, wybierz maszynę wirtualną, przejdź do wydajności, przełącz się na tryb zaawansowany, a następnie przełącz na przeglądanie “CPU” (jeśli chcesz rozwiązać problemy z wydajnością określonej maszyny wirtualnej, zacznij od tej);
  • Oceń gotowość dla wszystkich “obiektów”maszyny wirtualnej. “Object” jest oddzielnym procesorem wirtualnym maszyny wirtualnej. Musisz zmienić właściwości ” Opcje wykresu…”, aby to zobrazować;
  • czy minimalna lub Średnia wartość gotowości dla dowolnego procesora wirtualnego przekracza 2000 ms? Jeśli tak, brakuje zasobów procesora hosta.

potencjalnie problematyczne parametry, które wymagają weryfikacji:

  • weryfikacja nasycenia procesora Gościa;
  • weryfikacja aktywnej wymiany pamięci maszyny wirtualnej;
  • weryfikacja oczekiwania na wymianę maszyny wirtualnej;
  • weryfikacja kompresji pamięci maszyny wirtualnej;
  • weryfikacja przeciążonego urządzenia pamięci masowej;
  • odrzucona weryfikacja pakietów odbiorczych;
  • odrzucona weryfikacja pakietów nadawczych;
  • jeden vCPU w weryfikacji maszyny wirtualnej SMP;
  • procesor maszyny Wirtualnej gotowy na hoście z weryfikacją średniego obciążenia;
  • powolna lub przeciążona weryfikacja systemu pamięci masowej;
  • weryfikacja obciążenia systemu górnej pamięci masowej;
  • weryfikacja szczytowej transmisji danych w sieci;
  • weryfikacja niskiego nasycenia procesora maszyny Wirtualnej;
  • weryfikacja przeszłej wymiany pamięci maszyny Wirtualnej;
  • weryfikacja wysokiego zapotrzebowania na pamięć puli zasobów;
  • weryfikacja wysokiego zapotrzebowania na pamięć hosta;
  • weryfikacja wysokiego zapotrzebowania na pamięć Gościa;
  • weryfikacja wysokiej częstotliwości przerwań timera;
  • weryfikacja ustawień NUMA;
  • weryfikacja wysokiego czasu odpowiedzi migawek maszyny wirtualnej;

problemy z podsystemem dysku

krótko mówiąc, możesz zawęzić problemy z systemem pamięci masowej do:

1. System magazynowania jest przeciążony;

  • jakie są przyczyny przeciążenia systemu pamięci masowej? Cóż, te podstawowe są dość proste, czy byłoby to błędne konfiguracje (ilość i rodzaj urządzeń / poziom RAID/buforowanie / itp) lub bardzo duże obciążenie.
    nie ma uniwersalnego rozwiązania, więc zamierzam po prostu założyć Mundur kapitana oczywistego i wymienić rzeczy, które prawdopodobnie już wiesz:
  • Zbuduj swój system pamięci masowej pod względem wydajności, a nie tylko pojemności;
    weź pod uwagę, że gdy przejdziesz do Wirtualnego, Typ obciążenia może się przełączyć (z spójnego na losowy);
    mają w sklepie narzędzia do monitorowania wydajności dysku systemu pamięci masowej, musisz go oglądać razem z esxtop;
  • (esxtop – narzędzie konsoli VMware, działa dobrze do monitorowania wydajności pamięci masowej. Zaloguj się do sesji ssh i rozpocznij. Dla tych z Was, którzy mają tendencję do korzystania z resxtop: będziesz musiał pobrać vMA lub vSphere CLI dla Linuksa i uruchomić to narzędzie stamtąd. Ale szczerze mówiąc, ostatnia wersja jest uniwersalna, ponieważ działa zarówno z ESX, jak i ESXi;
  • również istnieje genialne narzędzie vSCSIStats;
    Jeśli zastanawiasz się, dlaczego system pamięci masowej działa tak wolno, możesz to zrozumieć za pomocą obciążenia syntetycznego FIO;
    pamiętaj, że niektóre aplikacje mogą obniżyć koszty ogólne dysku, jeśli zapewnisz im więcej pamięci.

2. Slow storage system;
zasadniczo zrób wszystko z powyższej listy!

3. Opóźnienia systemu pamięci masowej;
3 proste rozwiązania:

udziały;
Limit IOPS;
próg przeciążenia (Kontrola IO magazynu).

4. Złe dyski;
Regularnie sprawdzaj Dysk/ Pamięć sieciową, a jeśli coś się nie powiedzie lub nieaktualnie, natychmiast go wymień. Jednak powinieneś wiedzieć, że w niektórych przypadkach, zwłaszcza gdy dysk się nie powiódł, rozpoczęcie sprawdzania (dodatkowe użycie pamięci RAID) może doprowadzić inne dyski do tego samego losu = doom całego RAID.

5. ESXi OS;
używaj oddzielnych dysków dla systemu operacyjnego hosta ESXi, partycji wymiany i maszyn wirtualnych znajdujących się w lokalnych magazynach danych. Pomyśl również o użyciu macierzy RAID, aby poprawić wydajność odczytu i zapisu.

6. Migawki;
usuń wszelkie nieużywane lub nadmiarowe migawki, nie jest to opcjonalne. Musisz już wiedzieć, że im więcej migawek masz, tym większe będą koszty ogólne dysku z aktywnością We / Wy.

7. Szyfrowanie;
używaj szyfrowania dysku tylko wtedy, gdy jest to konieczne! Szyfrowanie prowadzi do kosztów ogólnych, koszty ogólne prowadzą do zmniejszenia wydajności, a my tego nie chcemy, prawda?

(jeśli chcesz uzyskać więcej informacji, możesz je sam sprawdzić)

małe wskazówki

wdrażanie vRealize Operations Manager w celu głębszej oceny środowiska

ten vRealize Operations Manager jest produktem VMware przeznaczonym do kompleksowego monitorowania i zarządzania infrastrukturą wirtualną VMware vSphere. Sprzedawca obiecał zintegrowane rozwiązywanie problemów. Możesz go pobrać tutaj.

zadaj sobie pytanie: czy VM naprawdę zachowuje się dziwnie?

maszyna wirtualna, która jest obciążona dużym obciążeniem, może czasami wyglądać, jakby dawała słabą wydajność. Na przykład zwirtualizowane instancje serwerów SQL lub źle napisane zapytania SQL mogą znacznie spowolnić wydajność! Serwery Pocztowe z dużymi bazami Użytkowników mogą być również nieco problemem w tym zakresie. Na szczęście wykresy monitorowania wydajności w programie vSphere Web client pomogą Ci zmierzyć wykorzystanie zasobów w określonym czasie, aby potwierdzić, czy niepokojące zachowanie było jednorazowe lub ciągłe, i określić, czy jest to oczekiwane, czy nie w takich okolicznościach. MS SQL i Exchange Server pobierają dowolną pamięć RAM z systemu operacyjnego gościa maszyny wirtualnej, którą mogą znaleźć, zwłaszcza jeśli jest skonfigurowana dynamiczna alokacja pamięci.

Analyze I/O Workloads to Determine Storage Performance Requirements

najnowsze aktualizacje i najnowsze wersje

aktualizacje i najnowsze wersje najczęściej rozwiązują problemy z wydajnością dzięki poprawionym błędom, ulepszonym sterownikom i kodowi. Niemniej jednak, zaufaj mi na ten jeden; czasami, najnowsze wydanie sprawia, że jeszcze gorzej! Więc bądźcie czujni i testujcie, dopóki nie będziecie pewni. Albo przynajmniej pozwól innym spróbować i pracować nad tym, abyś mógł podjąć decyzję, która została przemyślana.

Oprogramowanie Antywirusowe ESXi

masz większą szansę na wpadnięcie na jednorożca, ale w rzeczywistości są przypadki, kiedy możesz znaleźć oprogramowanie antywirusowe działające na ESXi (vShield). Nie trzeba dalej wyjaśniać, że takie działanie może poważnie wpłynąć na wydajność maszyny wirtualnej na wiele sposobów, jeśli nie jest poprawnie skonfigurowane. Musisz również pamiętać, że nie ma powodu, aby uruchamiać oprogramowanie antywirusowe Na ESXi ze względu na niewielkie rozmiary i wbudowane funkcje bezpieczeństwa. Sugerowałbym, że byłoby znacznie lepiej, gdyby oprogramowanie anty-malware zostało przeniesione do systemu operacyjnego gościa maszyny wirtualnej. Jeśli musisz zainstalować AV na ESXi, należy wykluczyć pliki maszyn wirtualnych, takie jak VMDKs, z harmonogramów skanowania, zwłaszcza w godzinach szczytowego wykorzystania.

czy zarządzanie zasilaniem procesora jest włączone?

zarządzanie zasilaniem procesora, jeśli jest włączone na serwerach ESXi, może prowadzić do opóźnienia prędkości, które z kolei mogą być odbierane przez aplikacje lub obciążenia, co powoduje wolniejszą wydajność. Jeśli uważasz, że jest to źródło problemu, musisz to sprawdzić w dokumentacji dostawcy na temat wyłączania zarządzania energią procesora. W przypadku zerowego efektu, włącz go ponownie i wykonaj kilka razy kontrolę stanu (więcej szczegółów tutaj)

Bateria zasilania dla kontrolerów Bios i SCSI

sprawdź baterię zasilania dla podsystemu Bios hosta ESXi, jeśli pozwalają na to specyfikacje, również dla SCSI lub innych kontrolerów. Pamięć podręczna SCSI często wymaga dodatkowego zasilania do pracy, a bateria zasilająca na płycie kontrolera Zwykle ją zapewnia. Mimo że specyfikacje twierdzą, że jest to plan zasilania rezerwowego, dowiedziałem się, że podnapięcie akumulatora zasilającego prowadzi do błędów w pracy sterowników i udało mi się to naprawić tylko przez wymianę.

kilka rad na koniec:

  • wykonaj kontrolę stanu całej architektury fizycznej systemu pamięci masowej, w tym przełączników iSCSI, kabli sieciowych i optycznych itp.
  • sprawdź dzienniki przełączników, aby upewnić się, że nie ma błędów lub niefortunnych zdarzeń w systemie pamięci masowej lub samym urządzeniu.
  • Ping your iSCSI from your VMkernel addresses, just to make sure that connecting to iSCSI isn ‘ t problem.
  • Sprawdź poprawność działania samego SAN – upewnij się, że nie ma uszkodzonych dysków, zdarzeń awaryjnego przełączania kontrolera pamięci masowej ani innych błędów, które mogą mieć wpływ na wydajność.
  • Sprawdź wolne miejsce na każdej jednostce LUN podłączonej do hostów ESXi.

wnioski

wiem, rozwiązywanie problemów z VMware vSphere ESXi może wyglądać trochę przerażająco. Jednak dzięki precyzyjnej dokumentacji, dobrej znajomości infrastruktury i kilku wydajnym wbudowanym narzędziom można rozwiązać wszelkie problemy, które dręczą maszyny wirtualne. Po prostu zatrzymaj się na chwilę i zastanów się, gdzie dokładnie i jaki masz problem, a następnie dowiedz się, która część systemu powoduje problemy. Mam nadzieję, że narzędzia, ESXTOP wiersza poleceń, esxcli, i, last but not least vRealize Operations Manager będzie w stanie pomóc, jeśli zajdzie taka potrzeba. Nie wahaj się również poprosić o pomoc techniczną VMware lub vendora. Bardzo często mogą pomóc Ci naprawić to niesamowicie szybko.

Leave a Reply