Delen via


Prestatieproblemen met virtuele Windows-machines oplossen met behulp van het CLI-hulpprogramma Performance Diagnostics (PerfInsights)

Van toepassing op: ✔️ Windows-VM's

De extensie PerfInsights (Performance Diagnostics) is een zelfhulphulpprogramma voor diagnostische gegevens waarmee diagnostische gegevens worden verzameld en geanalyseerd, en een rapport wordt weergegeven om prestatieproblemen met virtuele Windows-machines (VM's) in Azure op te lossen. Prestatiediagnose gebruiken om prestatieproblemen in een van de twee modi te identificeren en op te lossen:

  • Continue diagnose (preview) verzamelt gegevens met vijf seconden en rapporteert bruikbare inzichten over hoog resourcegebruik om de vijf minuten.
  • Diagnostische gegevens op aanvraag helpen u bij het oplossen van een doorlopend prestatieprobleem met uitgebreidere gegevens, inzichten en aanbevelingen op basis van gegevens die op één bepaald moment worden verzameld.

In dit artikel wordt uitgelegd hoe u de extensie Prestatiediagnose naar uw Windows-VM downloadt en het hulpprogramma uitvoert met behulp van het CLI-hulpprogramma. U kunt ook Prestatiediagnose uitvoeren vanuit de portal en de extensie Performance Diagnostics implementeren met behulp van een ARM-sjabloon of PowerShell.

Als u prestatieproblemen ondervindt met virtuele machines, voert u prestatiediagnose uit voordat u contact op neemt met de ondersteuning.

Ondersteunde scenario's voor probleemoplossing

U kunt Prestatiediagnose gebruiken om verschillende scenario's op te lossen. In de volgende secties worden veelvoorkomende scenario's beschreven voor het gebruik van continue en on-demand prestatiediagnose om prestatieproblemen te identificeren en op te lossen. Zie Voor een vergelijking van continue en on-demand prestatiediagnose inzichten en rapporten

Notitie

Zie PerfInsights en VM-exemplaren voor schaalsets van PerfInsights voor meer informatie over het gebruik van PerfInsights in een virtuele-machineschaalset.

Continue diagnostische gegevens

Met continue prestatiediagnose kunt u een hoog resourcegebruik identificeren door uw VM regelmatig te controleren op:

  • Hoog CPU-gebruik: detecteert perioden met een hoog CPU-gebruik en toont de belangrijkste CPU-gebruiksconsumenten gedurende die perioden.
  • Hoog geheugengebruik: detecteert perioden met een hoog geheugengebruik en toont de belangrijkste geheugengebruiksverbruikers tijdens deze perioden.
  • Hoog schijfgebruik: detecteert perioden met hoog schijfgebruik op fysieke schijven en toont de belangrijkste verbruikers van schijfgebruik tijdens deze perioden.

Diagnostische gegevens op aanvraag

Snelle analyse

In dit scenario worden de schijfconfiguratie en andere belangrijke informatie verzameld, waaronder:

  • Gebeurtenislogboeken

  • Netwerkstatus voor alle binnenkomende en uitgaande verbindingen

  • Configuratie-instellingen voor netwerk en firewall

  • Takenlijst voor alle toepassingen die momenteel op het systeem worden uitgevoerd

  • Configuratie-instellingen voor Microsoft SQL Server-database (als de VIRTUELE machine wordt geïdentificeerd als een server waarop SQL Server wordt uitgevoerd)

  • Betrouwbaarheidsmeteritems voor opslag

  • Belangrijke Windows-hotfixes

  • Geïnstalleerde filterstuurprogramma's

Dit is een passieve verzameling informatie die niet van invloed mag zijn op het systeem.

Notitie

Dit scenario wordt automatisch opgenomen in elk van de volgende scenario's.

Benchmarking

In dit scenario wordt de Diskspd-benchmarktest (IOPS en MBPS) uitgevoerd voor alle stations die aan de VIRTUELE machine zijn gekoppeld.

Notitie

Dit scenario kan van invloed zijn op het systeem en mag niet worden uitgevoerd op een live productiesysteem. Voer dit scenario indien nodig uit in een speciaal onderhoudsvenster om problemen te voorkomen. Een verhoogde workload die wordt veroorzaakt door een tracerings- of benchmarktest, kan de prestaties van uw VM nadelig beïnvloeden.

Prestatieanalyse

In dit scenario wordt een prestatiemeteritemtracering uitgevoerd met behulp van de tellers die zijn opgegeven in het RuleEngineConfig.json-bestand. Als de VIRTUELE machine wordt geïdentificeerd als een server waarop SQL Server wordt uitgevoerd, wordt er een prestatiemeteritemtracering uitgevoerd. Dit doet u door de tellers te gebruiken die in het RuleEngineConfig.json-bestand zijn gevonden. Dit scenario bevat ook diagnostische gegevens over prestaties.

Analyse van Azure Files

In dit scenario wordt een speciale prestatiemeteritem vastgelegd in combinatie met een netwerktracering. De opname bevat alle server message block -clientshares (SMB). Hier volgen enkele belangrijke prestatiemeteritems voor SMB-clientshares die deel uitmaken van de capture:

Type Teller voor SMB-clientshares
IOPS Gegevensaanvragen per seconde
Leesaanvragen per seconde
Schrijfaanvragen per seconde
Latentie Avg. sec/Data Request
Gem. sec/gelezen
Gem. sec/write
IO-grootte Gem. bytes/gegevensaanvraag
Gem. bytes/lezen
Gem. bytes/schrijven
Doorvoer Gegevensbytes per seconde
Gelezen bytes/sec
Geschreven bytes/sec
Wachtrijlengte Gemiddelde. Lengte van leeswachtrij
Gemiddelde. Lengte van wachtrij schrijven
Gemiddelde lengte van gegevenswachtrij

Geavanceerde prestatieanalyse

Wanneer u een geavanceerde prestatieanalyse uitvoert, selecteert u traceringen die parallel moeten worden uitgevoerd. Als u wilt, kunt u ze allemaal uitvoeren (Prestatiemeteritems, Xperf, Netwerk en StorPort).

Notitie

Dit scenario kan van invloed zijn op het systeem en mag niet worden uitgevoerd op een live productiesysteem. Voer dit scenario indien nodig uit in een speciaal onderhoudsvenster om problemen te voorkomen. Een verhoogde workload die wordt veroorzaakt door een tracerings- of benchmarktest, kan de prestaties van uw VM nadelig beïnvloeden.

Welke informatie verzamelt Prestatiediagnose in Windows?

Informatie over de configuratie van Windows-VM's, schijven of opslaggroepen, prestatiemeteritems, logboeken en verschillende traceringen worden verzameld. Dit is afhankelijk van het prestatiescenario dat u gebruikt. De volgende tabel bevat details:

Verzamelde gegevens Snelle prestatieanalyse Benchmarking Prestatieanalyse Analyse van Azure Files Geavanceerde prestatieanalyse
Informatie uit gebeurtenislogboeken Ja Ja Ja Ja Ja
Systeemgegevens Ja Ja Ja Ja Ja
Volumetoewijzing Ja Ja Ja Ja Ja
Schijftoewijzing Ja Ja Ja Ja Ja
Actieve taken Ja Ja Ja Ja Ja
Betrouwbaarheidsmeteritems voor opslag Ja Ja Ja Ja Ja
Opslaggegevens Ja Ja Ja Ja Ja
Fsutil-uitvoer Ja Ja Ja Ja Ja
Stuurprogrammagegevens filteren Ja Ja Ja Ja Ja
Netstat-uitvoer Ja Ja Ja Ja Ja
Netwerkconfiguratie Ja Ja Ja Ja Ja
Firewallconfiguratie Ja Ja Ja Ja Ja
SQL Server-configuratie Ja Ja Ja Ja Ja
Traceringen voor prestatiediagnose * Ja Ja Ja Ja Ja
Tracering prestatiemeteritems ** Ja Ja
SMB-tellertracering ** Ja
SQL Server-tellertracering ** Ja Ja
Xperf-trace Ja
StorPort-trace Ja
Netwerktracering Ja Ja
Diskspd-benchmarktracering *** Ja

Tracering van prestatiediagnose (*)

Voert een engine op basis van regels op de achtergrond uit om gegevens te verzamelen en lopende prestatieproblemen vast te stellen. Regels worden weergegeven in het rapport onder het tabblad Categorie -> Zoeken.

Elke regel bestaat uit de volgende items:

  • Zoeken: Beschrijving van de bevindingen.
  • Aanbeveling: Aanbeveling over welke actie kan worden ondernomen voor de bevindingen. Er zijn ook referentiekoppelingen naar documentatie met meer informatie over het zoeken en/of aanbevelingen.
  • Impactniveau: Vertegenwoordigt het potentieel voor het beïnvloeden van de prestaties.

De volgende categorieën regels worden momenteel ondersteund:

  • Hoog resourcegebruik:
    • Hoog CPU-gebruik: detecteert perioden met een hoog CPU-gebruik en toont de belangrijkste CPU-gebruiksconsumenten gedurende die perioden.
    • Hoog geheugengebruik: detecteert perioden met een hoog geheugengebruik en toont de belangrijkste geheugengebruiksverbruikers tijdens deze perioden.
    • Hoog schijfgebruik: detecteert perioden met hoog schijfgebruik op fysieke schijven en toont de belangrijkste verbruikers van schijfgebruik tijdens deze perioden.
    • Schijfgebruik met hoge resolutie: toont metrische gegevens over IOPS, doorvoer en I/O-latentie per 50 milliseconden voor elke fysieke schijf. Hiermee kunt u snel schijfbeperkingsperioden identificeren.
  • Knowledge Base: detecteert of specifieke Knowledge Base-artikelen (KB) niet zijn geïnstalleerd.
  • Schijf: detecteert specifieke instellingen voor schijfconfiguratie.
  • SQL: Detecteert specifieke SQL-instellingen.
  • Netwerk: detecteert specifieke netwerkinstellingen.
  • Servercluster: detecteert specifieke configuratie-instellingen voor serverclusters.
  • Systeem: Detecteert specifieke systeemconfiguratie-instellingen.
  • CLR: detecteert lange garbagecollection pauzes voor beheerde processen.

Notitie

Op dit moment worden Windows-versies met .NET Framework 4.5 of hoger ondersteund.

Tracering prestatiemeteritems (*)

Verzamelt de volgende prestatiemeteritems:

  • \System, \Process, \Processor, \Memory, \Thread, \PhysicalDisk en \LogicalDisk
  • \Cache\Dirty Pages, \Cache\Lazy Write Flushes/sec, \Server\Pool Nonpaged, Failures en \Server\Pool Paged Failures
  • Geselecteerde tellers onder \Network Interface, \IPv4\Datagrams, \IPv6\Datagrams, \TCPv4\Segments, \TCPv6\Segments, \Network Adapter, \WFPv4\Packets, \WFPv6\Packets, \UDPv4\Datagrams, \UDPv6\Datagrams, \TCPv4\Connection, \TCPv6\Connection, \Network QoS Policy\Packets, \Per Processor Network Interface Card Activity en \Microsoft Winsock BSP

Voor SQL Server-exemplaren

  • \SQL Server:Buffer Manager, \SQLServer:Resource Pool Stats en \SQLServer:SQL Statistics\
  • \SQLServer:Locks, \SQLServer:General, Statistics
  • \SQLServer:Toegangsmethoden

Voor Azure Files

\SMB-clientshares

Diskspd-benchmarktracering (***)

Diskspd I/O-workloadtests (besturingssysteemschijf [schrijven] en poolstations [lezen/schrijven])

Prestatiediagnose uitvoeren op uw VM met behulp van het CLI-hulpprogramma

Wat moet ik weten voordat ik het hulpprogramma uitvoer?

Hulpprogrammavereisten

  • Dit hulpprogramma moet worden uitgevoerd op de VIRTUELE machine met het prestatieprobleem.

  • De volgende besturingssystemen worden ondersteund:

    • Windows Server 2022
    • Windows Server 2019
    • Windows Server 2016
    • Windows Server 2012 R2
    • Windows Server 2012
    • Windows 11
    • Windows 10

Toegang tot SQL Server

Als op de VM SQL Server-exemplaren zijn geïnstalleerd, gebruikt PerfInsights het account NT AUTHORITY\SYSTEM voor toegang tot de SQL Server-exemplaren om configuratiegegevens te verzamelen en regels uit te voeren. Aan het account NT AUTHORITY\SYSTEM moet de machtiging Serverstatus weergeven en SQL-machtiging verbinden voor elk exemplaar worden verleend. Anders kan PerfInsights geen verbinding maken met de SQL Server. In het PerfInsights-rapport worden geen gerelateerde SQL Server-gegevens weergegeven.

Mogelijke problemen bij het uitvoeren van het hulpprogramma op productie-VM's

  • Voor het benchmarkingscenario of het scenario 'Geavanceerde prestatieanalyse' dat is geconfigureerd voor het gebruik van Xperf of Diskspd, kan het hulpprogramma de prestaties van de VIRTUELE machine nadelig beïnvloeden. Deze scenario's mogen niet worden uitgevoerd in een live productieomgeving.

  • Voor het benchmarkscenario of het scenario 'Geavanceerde prestatieanalyse' dat is geconfigureerd voor het gebruik van Diskspd, moet u ervoor zorgen dat geen andere achtergrondactiviteit de I/O-workload beïnvloedt.

  • Standaard gebruikt het hulpprogramma het tijdelijke opslagstation om gegevens te verzamelen. Als tracering langer is ingeschakeld, kan de hoeveelheid verzamelde gegevens relevant zijn. Dit kan de beschikbaarheid van ruimte op de tijdelijke schijf verminderen en kan daarom van invloed zijn op elke toepassing die afhankelijk is van dit station.

Hoe kan ik PerfInsights uitvoeren?

U kunt PerfInsights uitvoeren op een virtuele machine door de AZURE Performance Diagnostics VM-extensie te installeren. U kunt het ook uitvoeren als zelfstandig hulpprogramma.

PerfInsights installeren en uitvoeren vanuit Azure Portal

Zie Azure Performance Diagnostics VM-extensie installeren voor meer informatie over deze optie.

PerfInsights uitvoeren in de zelfstandige modus

Voer de volgende stappen uit om het hulpprogramma PerfInsights uit te voeren:

  1. Download PerfInsights.zip.

  2. De blokkering van het PerfInsights.zip-bestand opheffen. Hiervoor klikt u met de rechtermuisknop op het PerfInsights.zip bestand en selecteert u Eigenschappen. Selecteer op het tabblad Algemeen deblokkeren en selecteer vervolgens OK. Deze actie zorgt ervoor dat het hulpprogramma wordt uitgevoerd zonder andere beveiligingsprompts.

    Schermopname van PerfInsights Properties, met De blokkering opheffen gemarkeerd.

  3. Vouw het gecomprimeerde PerfInsights.zip-bestand uit naar uw tijdelijke station (standaard is dit meestal het D-station).

  4. Open de Windows-opdrachtprompt als beheerder en voer PerfInsights.exe uit om de beschikbare opdrachtregelparameters weer te geven.

    cd <the path of PerfInsights folder>
    PerfInsights
    

    Schermopname van de uitvoer van de perfInsights-opdrachtregel.

    De basissyntaxis voor het uitvoeren van PerfInsights-scenario's is:

    PerfInsights /run <ScenarioName> [AdditionalOptions]
    

    Zoek alle beschikbare scenario's en opties op met behulp van de opdracht /list :

    PerfInsights /list
    

    Dit zijn voorbeelden van het gebruik van het CLI-hulpprogramma om de verschillende scenario's voor probleemoplossing uit te voeren:

    • Continue prestatiediagnose uitvoeren:

      PerfInsights /run always on /sau 
      

      Als u continue diagnostische gegevens over prestaties wilt stoppen, drukt u op Ctrl+C of sluit u de terminal.

    • Voer het scenario voor prestatieanalyse uit voor 5 minuten:

      PerfInsights /run vmslow /d 300 /AcceptDisclaimerAndShareDiagnostics
      
    • Voer het geavanceerde scenario uit met xperf- en prestatiemeteritems gedurende 5 minuten:

      PerfInsights /run advanced xp /d 300 /AcceptDisclaimerAndShareDiagnostics
      
    • Voer het benchmarkscenario voor 5 minuten uit:

      PerfInsights /run benchmark /d 300 /AcceptDisclaimerAndShareDiagnostics
      
    • Voer het scenario voor prestatieanalyse gedurende 5 minuten uit en upload het zip-bestand met resultaten naar het opslagaccount:

      PerfInsights /run vmslow /d 300 /AcceptDisclaimerAndShareDiagnostics /sa <StorageAccountName> /sk <StorageAccountKey>
      

    Notitie

    Voordat een scenario wordt uitgevoerd, vraagt PerfInsights de gebruiker om diagnostische gegevens te delen en akkoord te gaan met de gebruiksrechtovereenkomst. Gebruik de optie /AcceptDisclaimerAndShareDiagnostics om deze prompts over te slaan.

    Als u een actief ondersteuningsticket bij Microsoft hebt en PerfInsights uitvoert volgens de aanvraag van de ondersteuningstechnicus waarmee u werkt, moet u het ondersteuningsticketnummer opgeven met behulp van de optie /sr .

    Standaard probeert PerfInsights zichzelf bij te werken naar de nieuwste versie, indien beschikbaar. Gebruik /SkipAutoUpdate of /sau-parameter om automatische update over te slaan.

    Als de duurswitch /d niet is opgegeven, wordt u in PerfInsights gevraagd om het probleem opnieuw op te lossen tijdens het uitvoeren van vmslow, azurefiles en geavanceerde scenario's.

Wanneer de traceringen of bewerkingen zijn voltooid, wordt een nieuw bestand weergegeven in dezelfde map als PerfInsights. De naam van het bestand is PerformanceDiagnostics_yyyy-MM-dd_hh-mm-ss-fff.zip. U kunt dit bestand verzenden naar de ondersteuningsagent voor analyse of het rapport openen in het zip-bestand om bevindingen en aanbevelingen te bekijken.

Het diagnostische rapport bekijken

In het PerformanceDiagnostics_yyyy-MM-dd_hh-mm-ss-fff.zip-bestand vindt u een HTML-rapport met informatie over de bevindingen van PerfInsights. Als u het rapport wilt bekijken, vouwt u het PerformanceDiagnostics_yyyy-MM-dd_hh-mm-ss-fff.zip-bestand uit en opent u het bestand PerfInsights Report.html.

Selecteer het tabblad Resultaten .

Schermopname van het tabblad Resultaten onder het tabblad Overzicht van het PerfInsights-rapport.

Schermopname van het tabblad Resultaten onder het tabblad Opslag van het PerfInsights-rapport.

Notitie

Bevindingen die als hoog zijn gecategoriseerd, zijn bekende problemen die prestatieproblemen kunnen veroorzaken. Bevindingen die als gemiddeld zijn gecategoriseerd, vertegenwoordigen niet-optimale configuraties die niet noodzakelijkerwijs prestatieproblemen veroorzaken. Bevindingen die als laag zijn gecategoriseerd, zijn alleen informatieve instructies.

Bekijk de aanbevelingen en koppelingen voor alle resultaten met hoge en gemiddelde resultaten. Meer informatie over hoe deze invloed kunnen hebben op de prestaties en ook over aanbevolen procedures voor configuraties die zijn geoptimaliseerd voor prestaties.

Tabblad Opslag

In de sectie Bevindingen worden verschillende bevindingen en aanbevelingen met betrekking tot opslag weergegeven.

In de secties Schijftoewijzing en Volumetoewijzing worden beschreven hoe logische volumes en fysieke schijven aan elkaar zijn gerelateerd.

In het perspectief van de fysieke schijf (Schijftoewijzing) worden in de tabel alle logische volumes weergegeven die op de schijf worden uitgevoerd. In het volgende voorbeeld worden in PhysicalDrive2 twee logische volumes uitgevoerd die zijn gemaakt op meerdere partities (J en H):

Schermopname van de sectie Schijftoewijzing onder het tabblad Bevindingen van het PerfInsights-rapport.

In het volumeperspectief (Volumetoewijzing) worden in de tabellen alle fysieke schijven onder elk logisch volume weergegeven. U ziet dat u voor RAID/dynamische schijven een logisch volume op meerdere fysieke schijven kunt uitvoeren. In het volgende voorbeeld is C:\mount een koppelpunt dat is geconfigureerd als SpannedDisk op fysieke schijven 2 en 3:

Schermopname van de sectie Volumetoewijzing onder het tabblad Bevindingen van het PerfInsights-rapport.

SQL-tabblad

Als de doel-VM als host fungeert voor SQL Server-exemplaren, ziet u een ander tabblad in het rapport met de naam SQL:

Schermopname van het TABBLAD SQL en de subtabbladen eronder.

Deze sectie bevat een tabblad Bevindingen en extra tabbladen voor elk van de SQL Server-exemplaren die worden gehost op de VIRTUELE machine.

Het tabblad Bevindingen bevat een lijst met alle aan SQL gerelateerde prestatieproblemen, samen met de aanbevelingen.

In het volgende voorbeeld wordt PhysicalDrive0 (met het C-station) weergegeven. Dit komt doordat zowel de modeldev - als modellog-bestanden zich op het C-station bevinden en ze van verschillende typen zijn (zoals gegevensbestanden en transactielogboeken).

Schermopname van de gegevens van modeldev- en modellogbestanden.

De tabbladen voor specifieke exemplaren van SQL Server bevatten een algemene sectie met basisinformatie over het geselecteerde exemplaar. De tabbladen bevatten ook meer secties voor geavanceerde informatie, waaronder instellingen, configuraties en gebruikersopties.

Tabblad Diagnostische gegevens

Het tabblad Diagnostische gegevens bevat informatie over de belangrijkste CPU-, schijf- en geheugengebruikers op de computer tijdens de uitvoering van diagnostische gegevens over prestaties. U kunt ook informatie vinden over kritieke patches die het systeem mogelijk mist, de takenlijst en belangrijke systeemevenementen.

Verwijzingen naar de gebruikte externe hulpprogramma's

Diskspd

Diskspd is een hulpprogramma voor opslagbelastingsgenerator en prestatietest van Microsoft. Zie Diskspd voor meer informatie.

Xperf

Xperf is een opdrachtregelprogramma voor het vastleggen van traceringen uit de Windows Performance Toolkit. Zie Windows Performance Toolkit – Xperf voor meer informatie.

Volgende stappen

U kunt diagnostische logboeken en rapporten uploaden naar Microsoft Ondersteuning voor verdere controle. Ondersteuning kan vragen om de uitvoer die door PerfInsights wordt gegenereerd, te verzenden om u te helpen bij het probleemoplossingsproces.

In de volgende schermopname ziet u een bericht dat lijkt op wat u mogelijk ontvangt:

Schermopname van voorbeeldbericht uit Microsoft Ondersteuning.

Volg de instructies in het bericht voor toegang tot de werkruimte voor bestandsoverdracht. Voor extra beveiliging moet u uw wachtwoord wijzigen bij eerste gebruik.

Nadat u zich hebt aangemeld, ziet u een dialoogvenster om het PerformanceDiagnostics_yyyy-MM-dd_hh-mm-ss-fff.zip bestand te uploaden dat is verzameld door PerfInsights.

Contact met ons opnemen voor ondersteuning

Als u vragen hebt of hulp nodig hebt, maakt u een ondersteuningsaanvraag of stelt u ondersteuning voor de Azure-community. U kunt ook productfeedback verzenden naar de Azure-feedbackcommunity.