PowerScale OneFS: Prestatieproblemen oplossen
Summary: Los problemen met trage PowerScale OneFS prestaties op met een uitgebreide handleiding over netwerkconfiguratie, verwerkingsbelastingen en bewaking met InsightIQ voor verbeterde clusterefficiëntie. ...
Symptoms
Clientcomputers werken traag. Specifieke taken, met name de taken die op het cluster worden uitgevoerd, mislukken of duren langer dan verwacht.
Cause
Prestatieproblemen zijn meestal te wijten aan netwerkverkeer, problemen met de netwerkconfiguratie, belasting van de client- of clusterverwerking of een combinatie van deze factoren. In dit artikel worden verschillende effectieve manieren beschreven om prestatieproblemen op te lossen.
Resolution
Problemen oplossen met InsightIQ
Inhoudsopgave:
- Isilon InsightIQ gebruiken
- Problemen oplossen zonder InsightIQ
- Netwerkdoorvoer
- Verdeling van clientverbindingen
- Clusterdoorvoer
- Clusterverwerking
- Bewerkingen in de wachtrij
- CPU
Isilon InsightIQ gebruiken
Het gebruik van Isilon InsightIQ is de beste manier om prestaties te bewaken en prestatieproblemen op te lossen.
Met het virtuele Isilon InsightIQ-apparaat kunt u de activiteit van het Isilon-cluster bewaken en analyseren via flexibele, aanpasbare grafiekweergaven in de InsightIQ webapplicatie. Deze grafieken bevatten gedetailleerde informatie over clusterhardware, software en bewerkingen van het bestandssysteem en het protocol. InsightIQ zet data om in visuele informatie die eventuele prestatie-uitschieters benadrukt, waardoor een snelle diagnose van knelpunten mogelijk is of workflows worden geoptimaliseerd.
Zie de PowerScale InsightIQ - Info Hub voor meer informatie over het gebruik van InsightIQ.
Problemen oplossen zonder InsightIQ
Als u InsightIQ niet gebruikt, kunt u verschillende opdrachten uitvoeren om prestatieproblemen te onderzoeken. Los prestatieproblemen eerst op door de netwerk- en clusterdoorvoer te onderzoeken, vervolgens door de clusterverwerking te onderzoeken en ten slotte door de CPU-snelheden van afzonderlijke knooppunten te onderzoeken.
Netwerkdoorvoer
Gebruik een netwerktesttool, zoals Iperf of Iperf3 Voor het bepalen van de doorvoermogelijkheden van het cluster en de clientcomputers in uw netwerk.
Gebruik Iperf, voert u de volgende opdrachten uit op het cluster en de client. Deze opdrachten definiëren een venstergrootte die groot genoeg is om te laten zien of de netwerkverbinding een mogelijke oorzaak is van latentieproblemen.
- Cluster:
iperf -s -w 262144 - Client:
iperf -c <cluster IP> -w 262144
Gebruik Iperf3, voert u de volgende opdrachten uit op het cluster en de client. Deze opdrachten definiëren een venstergrootte die groot genoeg is om te laten zien of de netwerkverbinding een mogelijke oorzaak is van latentieproblemen.
- Cluster:
iperf3 -s -w 262144 Client:iperf3 -c <cluster IP> -w 262144
Verdeling van clientverbindingen
Controleer hoeveel NFS- (Network File System) en Server Message Block (SMB) clients op het cluster zijn aangesloten om er zeker van te zijn dat ze niet de voorkeur geven aan één knooppunt.
- Open een SSH-verbinding op een willekeurig knooppunt in het cluster en meld u aan met behulp van de
rootAccount. - Start de
isi statistics query current list --nodes=all --keys=node.clientstats.connected.nfs,node.clientstats.active.nfs -dopdracht om NFS-clients te controleren.
De uitvoer toont het aantal clients dat per knooppunt is verbonden en hoeveel van deze clients op elk knooppunt actief zijn. - Start de
isi statistics query current list --keys=node.clientstats.connected.smb,node.clientstats.active.smb1,node.clientstats.active.smb2 -n all -dom SMB-clients te controleren.
De uitvoer toont het aantal clients dat per knooppunt is verbonden en hoeveel van deze clients op elk knooppunt actief zijn.
Clusterdoorvoer
Beoordeel de clusterdoorvoer door schrijf- en leestests uit te voeren die de hoeveelheid tijd meten die nodig is om uit een bestand te lezen en ernaar te schrijven. Voer ten minste één schrijftest en één leestest uit, als volgt.
Schrijf een test.
- Open een SSH-verbindingop een willekeurig knooppunt in het cluster en meld u aan met behulp van de
rootAccount. - Verander in de
/ifsDirectory:cd /ifs - Gebruik vanuit de opdrachtregelinterface (CLI) op het cluster of vanaf een UNIX- of Linux-clientcomputer het pictogram
ddopdracht om een nieuw bestand naar het cluster te schrijven.
Voer de volgende opdracht uit:dd if=/dev/zero of=1GBfile bs=1024k count=1024
Met deze opdracht wordt een voorbeeldbestand van 1 GB gemaakt en wordt de benodigde tijd weergegeven om het naar de schijf te schrijven. - Extrapoleer op basis van de uitvoer van deze opdracht hoeveel MB per seconde er naar schijf kan worden geschreven in single-stream workflows.
- Als u een MAC-client hebt en verdere analyse wilt uitvoeren,
- Start Activiteitenweergave.
- Start de
cat /dev/zero > /pathToFilecommando, waarbijpathToFileis het bestandspad van het doelbestand.
Deze opdracht helpt bij het meten van de doorvoer van schrijfbewerkingen op het Isilon-cluster. (Hoewel het mogelijk is om deddcommando van een MAC-client, kunnen de resultaten inconsistent zijn.) - Controleer de resultaten van de opdracht op het tabblad Netwerk van de Activiteitenmonitor.
Lees de test.
Zorg er bij het meten van de doorvoer van leesbewerkingen voor dat u geen leestests uitvoert op het bestand dat u tijdens de schrijftest hebt gemaakt. Omdat dat bestand in de cache is opgeslagen, zijn de resultaten van uw leestests onnauwkeurig. Test in plaats daarvan een leesbewerking van een bestand dat niet in de cache is opgeslagen. Zoek een bestand op het cluster dat groter is dan 1 GB en raadpleeg dat bestand in de leestest.
- Open een SSH-verbinding op een willekeurig knooppunt in het cluster en meld u aan met behulp van de
rootAccount. - Gebruik vanuit de CLI op het cluster of vanaf een UNIX- of Linux-clientcomputer het pictogram
ddopdracht om een bestand op het cluster te lezen.
Voerdedd if=/pathToLargeFile of=/dev/null bs=1024kCommando waarpathToFileis het bestandspad van het doelbestand.
Met deze opdracht wordt het doelbestand gelezen en wordt de tijd weergegeven die nodig was om het bestand te lezen. - Als u een MAC-client hebt en verdere analyse wilt uitvoeren,
- Start Activiteitenweergave.
- Start de
time cp /pathToLargeFile > /dev/nullCommando waarpathToFileis het bestandspad van het doelbestand.
Deze opdracht helpt bij het meten van de doorvoer van leesbewerkingen op het Isilon-cluster. (Hoewel het mogelijk is om deddcommando van een MAC-client, kunnen de resultaten inconsistent zijn.) - Controleer de resultaten van de opdracht op het tabblad Netwerk van de Activiteitenmonitor.
Clusterverwerking
Restripe-taken.
Voordat u I/O-bewerkingen (I/O) van het cluster onderzoekt:
- Bepaal welke taken op het cluster worden uitgevoerd. Als restripe-taken zoals Auto-Balance, Collect of MultiScan worden uitgevoerd, moet u overwegen waarom deze taken worden uitgevoerd en of ze moeten worden voortgezet.
- Houd rekening met het type data dat wordt gebruikt. Als clientcomputers met grote videobestanden of virtuele machines (VM's) werken, is voor de restripe-taak een hogere hoeveelheid schijf-IOPS vereist dan normaal.
- Overweeg een restripe-taak tijdelijk te onderbreken. Dit kan de prestaties verbeteren en kan op korte termijn een haalbare oplossing zijn voor een prestatieprobleem.
Schijf-I/O
Door schijf-I/O te onderzoeken, kunt u bepalen of bepaalde schijven te veel worden gebruikt.
Per cluster
- Open een SSH-verbinding op een knooppunt in het cluster en meld u aan met het hoofdaccount ("root").
- Start de
isi statistics pstatopdracht om schijf-I/O vast te stellen. Deel in de uitvoer van deze opdracht de schijf-IOP's door het totale aantal schijven in het cluster. Bijvoorbeeld, voor een cluster met 8 knooppunten met Isilon IQ 12000x knooppunten, die 12 schijven per knooppunt hosten, deelt u de schijf-IOPS door 96.
Voor knooppunten uit de X-serie en de NL-serie kunt u schijf-IOPS van 70 of minder verwachten voor 100% willekeurige workflows, of schijf-IOPS van 140 of minder voor 100% sequentiële workflows. Omdat knooppunten uit de NL-serie minder RAM en lagere CPU-snelheden hebben dan knooppunten uit de X-serie, kunnen knooppunten uit de X-serie hogere schijf-IOPS verwerken.
Per knooppunt en per schijf
- Open een SSH-verbinding op een knooppunt in het cluster en meld u aan met het hoofdaccount ("root").
- Voerde
isi statistics query current --nodes=all --stats=node.disk.xfers.rate.sum --format=topopdracht om schijf-IOP's per knooppunt te controleren, wat kan helpen bij het detecteren van schijven die te veel worden gebruikt. - Start de
isi_stats_tool -a get_key_info|grep node.disk.xferopdracht om te bepalen hoe er query's moeten worden uitgevoerd op statistieken per schijf.
Bewerkingen in de wachtrij
Een andere manier om te bepalen of schijven te veel worden gebruikt, is door te bepalen hoeveel bewerkingen er voor elke schijf in het cluster in de wachtrij staan. Voor een enkele SMB-workflow kan een wachtrij van vier een probleem aangeven, terwijl voor NFS-namespacebewerkingen met een hoge gelijktijdigheid de wachtrij groter is.
- Open een SSH-verbinding op een willekeurig knooppunt in het cluster en meld u aan met behulp van de
rootAccount. - Voerde
isi statistics drive list --nodes=all --sort=queued -dopdracht om te bepalen hoeveel bewerkingen voor elke schijf in het cluster in de wachtrij staan. - Bepaal hoe lang de bewerking in de wachtrij heeft gestaan:
isi statistics drive list --nodes=all --sort=queued -d
CPU
CPU-problemen zijn vaak terug te voeren op de bewerkingen die clients op het cluster uitvoeren. Met behulp van de isi statistics kunt u de bewerkingen bepalen die worden uitgevoerd op het cluster, gecatalogiseerd op netwerkprotocol of clientcomputer.
- Open een SSH-verbinding op een willekeurig knooppunt in het cluster en meld u aan met behulp van de
rootAccount. - Start de
isi statistics protocol list --long --totalby Op,proto -d --sort TimeAvg --format topopdracht om te bepalen welke bewerkingen in het netwerk worden uitgevoerd en om te beoordelen welke van deze bewerkingen de meeste tijd in beslag nemen.
Deze opdrachtuitvoer geeft gedetailleerde statistieken voor alle netwerkprotocollen, ingedeeld op basis van hoe lang het duurt voordat het cluster op clients reageert. Hoewel de resultaten van deze opdracht mogelijk niet aangeven welke bewerking het langzaamst is, kan het u wel in de goede richting wijzen. - Start de
isi statistics system --nodes all --format topcommando om meer informatie te verkrijgen over CPU-verwerking, zoals welke CPU's van knooppunten het meest worden gebruikt. - Start de
isi_for_array -sX 'top -u -n |grep PID -A4'opdracht om de vier processen op elk knooppunt te verkrijgen die de meeste CPU-bronnen verbruiken.
Additional Information
Hier zijn aanbevolen bronnen met betrekking tot dit onderwerp die mogelijk interessant zijn: