Udostępnij za pośrednictwem


Rozwiązywanie problemów z wydajnością maszyny wirtualnej platformy Azure w systemie Linux lub Windows

Dotyczy: ✔️ Maszyny wirtualne z systemem Linux maszyny wirtualne z ✔️ systemem Windows

W tym artykule opisano ogólne rozwiązywanie problemów z wydajnością maszyny wirtualnej poprzez monitorowanie i obserwowanie wąskich gardeł oraz zapewnia możliwe korygowanie problemów, które mogą wystąpić. Oprócz monitorowania można również użyć narzędzia Perfinsights, które mogą udostępniać raport z zaleceniami dotyczącymi najlepszych rozwiązań i kluczowymi wąskimi gardłami dotyczącymi operacji we/wy/procesora CPU/pamięci. Narzędzie Perfinsights jest dostępne zarówno dla maszyn wirtualnych z systemem Windows , jak i Linux na platformie Azure.

W tym artykule przedstawiono sposób używania monitorowania do diagnozowania wąskich gardeł wydajności.

Włączanie monitorowania

Monitorowanie maszyn wirtualnych IAAS platformy Azure

Aby monitorować maszynę wirtualną gościa, użyj monitorowania maszyny wirtualnej platformy Azure, która powiadomi Cię o pewnych warunkach zasobów wysokiego poziomu. Aby sprawdzić, czy włączono diagnostykę maszyny wirtualnej, zobacz Omówienie dzienników zasobów platformy Azure. Jeśli widzisz następujące elementy, najprawdopodobniej nie masz włączonej diagnostyki:

Zrzut ekranu przedstawiający komunikat Monitorowanie może nie być włączony.

Włączanie diagnostyki maszyny wirtualnej za pośrednictwem witryny Microsoft Azure Portal

Aby włączyć diagnostykę maszyny wirtualnej:

  1. Przejdź do maszyny wirtualnej.

  2. Kliknij pozycję Ustawienia diagnostyczne.

  3. Wybierz konto magazynu i kliknij pozycję Włącz monitorowanie na poziomie gościa.

    Zrzut ekranu przedstawia kroki włączania diagnostyki maszyny wirtualnej.

Konto magazynu używane do konfigurowania diagnostyki można sprawdzić na karcie Agent w obszarze Ustawienia diagnostyczne.

Zrzut ekranu przedstawia konto magazynu na karcie Agent.

Włączanie diagnostyki konta magazynu za pośrednictwem witryny Azure Portal

Magazyn jest bardzo ważną warstwą, gdy zamierzamy przeanalizować wydajność operacji we/wy dla maszyny wirtualnej na platformie Azure. W przypadku metryk związanych z magazynem musimy włączyć diagnostykę jako dodatkowy krok. Można to również włączyć, jeśli chcemy analizować tylko liczniki związane z magazynem.

  1. Zidentyfikuj konto magazynu (lub konta) używane przez maszynę wirtualną, wybierając maszynę wirtualną. Kliknij pozycję Ustawienia, a następnie kliknij pozycję Dyski:

    Zrzut ekranu przedstawia dysk systemu operacyjnego w obszarze dysków.

  2. W portalu przejdź do konta magazynu (lub kont) dla maszyny wirtualnej i wykonaj następujące czynności:

    1. Kliknij pozycję Przegląd dla konta magazynu znalezionego w kroku powyżej.
    2. Zostaną wyświetlone domyślne metryki.

    Zrzut ekranu przedstawiający domyślne metryki w obszarze Przegląd.

  3. Kliknij dowolną metrykę, która wyświetli kolejny blok z większą częścią opcji konfigurowania i dodawania metryk.

    Zrzut ekranu przedstawia kroki dodawania i konfigurowania metryk.

Aby skonfigurować następujące opcje:

  1. Wybierz pozycję Metryki.
  2. Wybierz zasób (konto magazynu).
  3. Wybierz przestrzeń nazw
  4. Wybierz pozycję Metryka.
  5. Wybierz typ agregacji
  6. Ten widok można przypiąć na pulpicie nawigacyjnym.

Obserwowanie wąskich gardeł

Po zakończeniu początkowego procesu konfiguracji wymaganych metryk i po włączeniu diagnostyki dla maszyny wirtualnej i powiązanego konta magazynu możemy przejść do fazy analizy.

Uzyskiwanie dostępu do monitorowania

Wybierz maszynę wirtualną platformy Azure, którą chcesz zbadać, i wybierz pozycję Monitorowanie.

Zrzut ekranu przedstawiający panel Monitorowanie.

Osie czasu obserwacji

Aby określić, czy istnieją wąskie gardła zasobów, przejrzyj dane. Jeśli okaże się, że maszyna działa prawidłowo, ale została zgłoszona, że wydajność została niedawno obniżona, przejrzyj zakres czasu danych, który obejmuje dane metryki wydajności przed zgłoszoną zmianą, w trakcie i po wystąpieniu problemu.

Sprawdzanie wąskiego gardła procesora CPU

Zrzut ekranu przedstawia kroki sprawdzania wąskiego gardła procesora CPU.

  1. Edytuj wykres.
  2. Ustaw zakres czasu.
  3. Następnie należy dodać licznik: procent procesora CPU systemu operacyjnego gościa
  4. Zapisać.

Podczas przeglądania problemów z wydajnością należy pamiętać o trendach i zrozumieć, czy mają one wpływ na Ciebie. W następnych sekcjach użyjemy wykresów monitorowania z portalu, aby pokazać trendy. Mogą one być również przydatne w przypadku zachowań zasobów różnicy krzyżowej w tym samym okresie. Aby dostosować wykresy, kliknij pozycję Platforma danych usługi Azure Monitor.

Spiking — spiking może być związany z zaplanowanym zadaniem/znanym zdarzeniem. Jeśli możesz zidentyfikować zadanie, ustal, czy zadanie jest uruchamiane na wymaganym poziomie wydajności. Jeśli wydajność jest akceptowalna, może nie być konieczne zwiększenie zasobów.

Skok w górę i stała — często wskazuje nowe obciążenie. Jeśli nie jest to rozpoznane obciążenie, włącz monitorowanie na maszynie wirtualnej, aby dowiedzieć się, jaki proces (lub procesy) powoduje zachowanie. Po rozpoznaniu procesu ustal, czy zwiększone zużycie jest spowodowane nieefektywnym kodem, czy normalnym zużyciem. W przypadku normalnego użycia zdecyduj, czy proces działa na wymaganym poziomie wydajności.

Stała — określ, czy maszyna wirtualna zawsze działa na tym poziomie, czy jest uruchomiona tylko na tym poziomie od czasu włączenia diagnostyki. Jeśli tak, zidentyfikuj proces (lub procesy) powodujący problem i rozważ dodanie większej liczby tych zasobów.

Stale rosnące — stały wzrost zużycia jest często nieefektywny kod lub proces, który zajmuje więcej obciążeń użytkowników.

Korygowanie wysokiego wykorzystania procesora CPU

Jeśli aplikacja lub proces nie działa na poprawnym poziomie wydajności i widzisz stałą 95% + użycie procesora CPU, możesz wykonać jedną z następujących zadań:

  • Aby uzyskać natychmiastową pomoc — zwiększ rozmiar maszyny wirtualnej do rozmiaru przy użyciu większej liczby rdzeni
  • Zapoznaj się z problemem — zlokalizuj aplikację/proces i odpowiednio rozwiąż problemy.

Jeśli zwiększono maszynę wirtualną, a procesor CPU nadal działa 95%, ustal, czy to ustawienie oferuje lepszą wydajność, czy większą przepływność aplikacji na akceptowalny poziom. Jeśli nie, rozwiąż problemy z poszczególnymi aplikacjami\procesami.

Możesz użyć narzędzia Perfinsights dla systemu Windows lub Linux , aby przeanalizować, który proces napędza użycie procesora CPU.

Sprawdzanie wąskiego gardła pamięci

Aby wyświetlić metryki:

  1. Dodaj sekcję.
  2. Dodaj kafelek.
  3. Otwórz galerię.
  4. Wybierz pozycję Użycie pamięci i przeciągnij. Po zadokowaniu kafelka kliknij prawym przyciskiem myszy i wybierz pozycję 6x4.

Użycie pamięci pokazuje ilość pamięci zużywanej przez maszynę wirtualną. Poznaj trend i określa, czy jest mapowania na czas, w którym występują problemy. Zawsze należy mieć więcej niż 100 MB dostępnej pamięci.

Wzrost i stałe/stałe stałe zużycie pamięci — wysokie wykorzystanie pamięci może nie być przyczyną złej wydajności, ponieważ niektóre aplikacje, takie jak relacyjne aparaty baz danych, przydzielają dużą ilość pamięci, a to wykorzystanie może nie być znaczące. Jeśli jednak istnieje wiele aplikacji z głodem pamięci, może wystąpić niska wydajność rywalizacji o pamięć, powodując przycinanie i stronicowanie/zamiana na dysk. Ta niska wydajność jest często zauważalną przyczyną wpływu na wydajność aplikacji.

Stale rosnące zużycie — możliwa aplikacja "rozgrzewająca", to zużycie jest powszechne wśród aparatów baz danych podczas uruchamiania. Jednak może to również być oznaką przecieku pamięci w aplikacji. Zidentyfikuj aplikację i dowiedz się, czy zachowanie jest oczekiwane.

Użycie pliku stronicowania lub zamiany — sprawdź, czy używasz pliku stronicowania systemu Windows (znajdującego się w lokalizacji D:) lub pliku zamiany systemu Linux (znajdującego się w /dev/sdblokalizacji ) są intensywnie używane. Jeśli nie masz nic na tych woluminach z wyjątkiem tych plików, sprawdź, czy na tych dyskach znajdują się wysokie odczyty/zapisy. Ten problem wskazuje na niskie warunki pamięci.

Korygowanie wysokiego wykorzystania pamięci

Aby rozwiązać problemy z wysokim wykorzystaniem pamięci, wykonaj dowolne z następujących zadań:

  • Aby uzyskać natychmiastową ulgę lub użycie pliku stronicowania lub zamiany — zwiększ rozmiar maszyny wirtualnej do jednego z większą ilością pamięci, a następnie monitoruj.
  • Omówienie problemu — lokalizowanie aplikacji/procesów i rozwiązywanie problemów dotyczących identyfikowania aplikacji pamięci o dużym użyciu.
  • Jeśli znasz aplikację, sprawdź, czy alokacja pamięci może być ograniczona.

Jeśli po uaktualnieniu do większej maszyny wirtualnej okaże się, że nadal występuje stały wzrost do 100%, zidentyfikuj aplikację/proces i rozwiąż problemy.

Za pomocą narzędzia Perfinsights dla systemu Windows lub Linux możesz przeanalizować, który proces napędza zużycie pamięci.

Sprawdzanie wąskiego gardła dysku

Aby sprawdzić podsystem magazynowania maszyny wirtualnej, sprawdź diagnostykę na poziomie maszyny wirtualnej platformy Azure przy użyciu liczników w diagnostyce maszyny wirtualnej, a także diagnostyki konta magazynu.

W przypadku rozwiązywania problemów specyficznych dla maszyny wirtualnej można użyć narzędzia Perfinsights dla systemu Windows lub Linux, co może pomóc w analizie, który proces napędza we/wy.

Pamiętaj, że nie mamy liczników dla kont strefowo nadmiarowych i Premium Storage. W przypadku problemów związanych z tymi licznikami zgłoś zgłoszenie do pomocy technicznej.

Wyświetlanie diagnostyki konta magazynu w monitorowaniu

Aby pracować nad poniższymi elementami, przejdź do konta magazynu maszyny wirtualnej w portalu:

Zrzut ekranu przedstawia kroki wyświetlania diagnostyki konta magazynu w obszarze Monitorowanie.

  1. Edytuj wykres monitorowania.
  2. Ustaw zakres czasu.
  3. Dodaj liczniki opisane w poniższych krokach.
  4. Zapisz zmiany.

Aby zidentyfikować problemy z magazynem, zapoznaj się z metrykami wydajności z diagnostyki konta magazynu i diagnostyki maszyny wirtualnej.

Dla każdego poniższego sprawdzenia poszukaj kluczowych trendów, gdy problemy występują w zakresie czasu wystąpienia problemu.

Sprawdzanie dostępności usługi Azure Storage — dodawanie metryki konta magazynu: dostępność

Jeśli widzisz spadek dostępności, może wystąpić problem z platformą, sprawdź stan platformy Azure. Jeśli nie zostanie wyświetlony żaden problem, zgłoś nowy wniosek o pomoc techniczną.

Sprawdzanie limitu czasu usługi Azure Storage — dodawanie metryk konta magazynu

  • ClientTimeOutError
  • ServerTimeOutError
  • AverageE2ELatency
  • AverageServerLatency
  • TotalRequests

Wartości w metrykach *TimeOutError wskazują, że operacja we/wy trwała zbyt długo i przekroczyła limit czasu. Wykonanie następnych kroków pomoże zidentyfikować potencjalne przyczyny.

AverageServerLatency zwiększa się w tym samym czasie w timeOutErrors może być problemem platformy. Zgłoś nowy wniosek o pomoc techniczną w tej sytuacji.

AverageE2ELatency reprezentuje opóźnienie klienta. Sprawdź, jak operacje we/wy na sekundę są wykonywane przez aplikację. Poszukaj metryki TotalRequests ze wzrostem lub stale wysokim poziomem. Ta metryka reprezentuje operacje we/wy na sekundę. Jeśli zaczynasz osiągać limity konta magazynu lub pojedynczego dysku VHD, opóźnienie może być związane z ograniczaniem przepustowości.

Sprawdzanie ograniczania usługi Azure Storage — dodawanie metryk konta magazynu: ThrottlingError

Wartości ograniczania przepustowości wskazują, że ograniczanie jest ograniczane na poziomie konta magazynu, co oznacza, że osiągasz limit liczby operacji we/wy na sekundę dla konta. Możesz określić, czy osiągasz próg operacji we/wy, sprawdzając metryki TotalRequests.

Należy pamiętać, że każdy wirtualny dysk twardy ma limit 500 operacji we/wy na sekundę lub 60 mb/s, ale jest powiązany z skumulowanym limitem 20000 operacji we/wy na sekundę na konto magazynu.

W przypadku tej metryki nie można określić, który obiekt blob powoduje ograniczenie przepustowości i które ma na nie wpływ. Jednak osiągasz limity liczby operacji we/wy na sekundę lub ruchu przychodzącego/wychodzącego konta magazynu.

Aby określić, czy osiągasz limit liczby operacji we/wy na sekundę, przejdź do diagnostyki konta magazynu i sprawdź łączne elementy żądań, aby sprawdzić, czy zbliżasz się do 20 tysięcy totalRequests. Zidentyfikuj zmianę wzorca, niezależnie od tego, czy limit jest wyświetlany po raz pierwszy, czy też ten limit występuje w określonym czasie.

W przypadku nowych ofert dysków w magazynie w warstwie Standardowa limity liczby operacji we/wy na sekundę i przepływności mogą się różnić, ale skumulowany limit konta magazynu w warstwie Standardowa wynosi 20000 operacji we/wy na sekundę (usługa Premium Storage ma różne limity na poziomie konta lub dysku). Przeczytaj więcej na temat różnych ofert dysków magazynu w warstwie Standardowa i limitów dysków:

Dokumentacja

Przepustowość konta magazynu jest mierzona przez metryki konta magazynu: TotalIngress i TotalEgress. Istnieją różne progi przepustowości w zależności od typu nadmiarowości i regionów.

Sprawdź wartości TotalIngress i TotalEgress względem limitów ruchu przychodzącego i wychodzącego dla typu nadmiarowości i regionu konta magazynu.

Sprawdź limity przepływności wirtualnych dysków twardych dołączonych do maszyny wirtualnej. Dodaj dysk metryk maszyny wirtualnej odczyt i zapis.

Nowe oferty dysków w obszarze Magazyn w warstwie Standardowa mają różne limity liczby operacji we/wy na sekundę i przepływności (liczba operacji we/wy na sekundę nie jest uwidoczniona na dysk VHD). Przyjrzyj się danym, aby sprawdzić, czy osiągasz limity łącznej przepływności MB dysków VHD na poziomie maszyny wirtualnej przy użyciu funkcji Odczyt i zapis dysku, a następnie zoptymalizuj konfigurację magazynu maszyny wirtualnej, aby skalować wcześniejsze limity pojedynczego dysku VHD. Przeczytaj więcej na temat różnych ofert dysków magazynu w warstwie Standardowa i limitów dysków:

Wysokie wykorzystanie dysku/korygowanie opóźnień

Zmniejsz opóźnienie klienta i zoptymalizuj operacje we/wy maszyny wirtualnej, aby skalować wcześniejsze limity wirtualnego dysku twardego

Zmniejszanie ograniczania przepustowości

W przypadku osiągnięcia wyższych limitów kont magazynu zrównoważyć ponownie dyski VHD między kontami magazynu. Zapoznaj się z tematem Cele skalowalności i wydajności usługi Azure Storage.

Zwiększanie przepływności i zmniejszanie opóźnienia

Jeśli masz aplikację wrażliwą na opóźnienia i wymagasz wysokiej przepływności, przeprowadź migrację dysków VHD do usługi Azure Premium Storage przy użyciu maszyny wirtualnej z serii DS i GS.

W tych artykułach omówiono konkretne scenariusze:

Skontaktuj się z nami, aby uzyskać pomoc

Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pomoc techniczną społeczności platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii na temat platformy Azure.