PowerScale OneFS: Feilsøke ytelsesproblemer
Summary: Feilsøk treg ytelse på PowerScale OneFS med en omfattende veiledning om nettverkskonfigurasjon, behandling av belastninger og overvåking med InsightIQ for forbedret klyngeeffektivitet.
Symptoms
Klientdatamaskiner kjører sakte. Bestemte jobber, spesielt de som kjører på klyngen, mislykkes eller tar lengre tid enn forventet.
Cause
Ytelsesproblemer skyldes vanligvis nettverkstrafikk, problemer med nettverkskonfigurasjon, klient- eller klyngebehandlingsbelastning eller en kombinasjon av disse faktorene. Denne artikkelen beskriver flere effektive måter å feilsøke ytelsesproblemer på.
Resolution
Feilsøking med InsightIQ
Innholdsfortegnelse:
- Bruke Isilon InsightIQ
- Feilsøking uten InsightIQ
- Nettverksgjennomstrømning
- Fordeling av klienttilkoblinger
- Gjennomstrømning for klynge
- Klyngebehandling
- Operasjoner i kø
- CPU
Bruke Isilon InsightIQ
Bruk av Isilon InsightIQ er den beste måten å overvåke ytelsen og feilsøke ytelsesproblemer på.
Det virtuelle Isilon InsightIQ-apparatet gjør at du kan overvåke og analysere Isilon-klyngeaktivitet gjennom fleksible, tilpassbare diagramvisninger i den webbaserte InsightIQ-applikasjonen. Disse diagrammene gir detaljert informasjon om klyngemaskinvare, programvare og filsystem- og protokolloperasjoner. InsightIQ forvandler data til visuell informasjon som fremhever eventuelle ytelsesavvik, noe som muliggjør rask diagnostisering av flaskehalser eller optimaliserer arbeidsflyter.
Hvis du vil ha mer informasjon om hvordan du bruker InsightIQ, kan du se PowerScale InsightIQ – informasjonshub.
Feilsøking uten InsightIQ
Hvis du ikke bruker InsightIQ, kan du kjøre ulike kommandoer for å undersøke ytelsesproblemer. Feilsøk ytelsesproblemer først ved å undersøke nettverks- og klyngegjennomstrømning, deretter ved å undersøke klyngebehandlingen, og til slutt ved å undersøke individuelle CPU-hastigheter for noder.
Nettverksgjennomstrømning
Bruk et nettverkstestverktøy, for eksempel Iperf eller Iperf3 for å fastslå gjennomstrømningsegenskapene til klynge- og klientdatamaskinene på nettverket.
Bruke Iperf, kjører du følgende kommandoer på klyngen og klienten. Disse kommandoene definerer en vindusstørrelse som er stor nok til å avsløre om nettverkskoblingen er en potensiell årsak til ventetidproblemer.
- Klynge:
iperf -s -w 262144 - Klient:
iperf -c <cluster IP> -w 262144
Bruke Iperf3, kjører du følgende kommandoer på klyngen og klienten. Disse kommandoene definerer en vindusstørrelse som er stor nok til å avsløre om nettverkskoblingen er en potensiell årsak til ventetidproblemer.
- Klynge:
iperf3 -s -w 262144 Klient:iperf3 -c <cluster IP> -w 262144
Fordeling av klienttilkoblinger
Kontroller hvor mange klienter for Network File System (NFS) og Server Message Block (SMB) som er koblet til klyngen, for å sikre at de ikke favoriserer én node.
- Opprett en SSH-tilkobling på en node i klyngen, og logg på med
rootKonto. - Kjør
isi statistics query current list --nodes=all --keys=node.clientstats.connected.nfs,node.clientstats.active.nfs -dkommando for å sjekke NFS-klienter.
Utdataene viser antall klienter som er koblet til per node, og hvor mange av disse klientene som er aktive på hver node. - Kjør
isi statistics query current list --keys=node.clientstats.connected.smb,node.clientstats.active.smb1,node.clientstats.active.smb2 -n all -d-kommandoen for å kontrollere SMB-klienter.
Utdataene viser antall klienter som er koblet til per node, og hvor mange av disse klientene som er aktive på hver node.
Gjennomstrømning for klynge
Vurder klyngegjennomstrømningen ved å utføre skrive- og lesetester som måler hvor lang tid det tar å lese fra og skrive til en fil. Gjennomfør minst en skrivetest og en lesetest, som følger.
Skriv en test.
- Opprett en SSH-tilkoblingpå en node i klyngen, og logg på med
rootKonto. - Endre til
/ifsKatalogen:cd /ifs - Fra kommandolinjegrensesnittet (CLI) på klyngen eller fra en UNIX- eller Linux-klientdatamaskin bruker du
dd-kommandoen for å skrive en ny fil til klyngen.
Kjør følgende kommando:dd if=/dev/zero of=1GBfile bs=1024k count=1024
Denne kommandoen oppretter en 1 GB-eksempelfil og rapporterer hvor lang tid det tok å skrive den til disken. - Fra utdataene fra denne kommandoen ekstrapolerer du hvor mange MB per sekund som kan skrives til disken i enkeltstrømsarbeidsflyter.
- Hvis du har en MAC-klient og ønsker å utføre ytterligere analyse,
- Start Aktivitetsmonitor.
- Kjør
cat /dev/zero > /pathToFilekommando, hvorpathToFileer filbanen til målfilen.
Denne kommandoen hjelper til med å måle gjennomstrømningen til skriveoperasjoner på Isilon-klyngen. (Selv om det er mulig å kjøredd-kommandoen fra en MAC-klient, kan resultatene være inkonsekvente.) - Overvåk resultatene av kommandoen i Aktivitetsmonitorens Nettverk-fane .
Les testen.
Når du måler gjennomstrømningen til leseoperasjoner, må du passe på at du ikke utfører lesetester på filen du opprettet under skrivetesten. Fordi den filen har blitt bufret, vil resultatene av lesetestene være unøyaktige. I stedet tester du en leseoperasjon for en fil som ikke er bufret. Finn en fil på klyngen som er større enn 1 GB, og referer til filen i lesetesten.
- Opprett en SSH-tilkobling på en node i klyngen, og logg på med
rootKonto. - Fra CLI-modulen på klyngen eller fra en UNIX- eller Linux-klientdatamaskin bruker du
ddkommando for å lese en fil på klyngen.
Kjørdd if=/pathToLargeFile of=/dev/null bs=1024kKommando hvorpathToFileer filbanen til målfilen.
Denne kommandoen leser målfilen og rapporterer hvor lang tid det tok å lese den. - Hvis du har en MAC-klient og ønsker å utføre ytterligere analyse,
- Start Aktivitetsmonitor.
- Kjør
time cp /pathToLargeFile > /dev/nullKommando hvorpathToFileer filbanen til målfilen.
Denne kommandoen hjelper deg med å måle gjennomstrømningen til leseoperasjoner på Isilon-klyngen. (Selv om det er mulig å kjøredd-kommandoen fra en MAC-klient, kan resultatene være inkonsekvente.) - Overvåk resultatene av kommandoen i Aktivitetsmonitorens Nettverk-fane .
Klyngebehandling
Stripe jobber på nytt.
Før du undersøker input / output (I / O) operasjoner (IOPS) av klyngen:
- Bestem hvilke jobber som kjører på klyngen. Hvis stripejobber som Autobalansering, Samle eller MultiScan kjører, bør du vurdere hvorfor disse jobbene kjører, og om de bør fortsette å kjøre.
- Vurder hvilken type data som forbrukes. Hvis klientdatamaskiner arbeider med store videofiler eller virtuelle maskiner (VM-er), krever den stripede jobben en større mengde disk-IOPS enn normalt.
- Vurder å sette en restripe-jobb midlertidig på pause. Dette kan forbedre ytelsen og kan være en levedyktig kortsiktig løsning på et ytelsesproblem.
I/O
for diskUndersøkelse av disk-I/O kan bidra til å avgjøre om enkelte disker brukes for mye.
Etter klynge
- Åpne en SSH-tilkobling på en hvilken som helst node i klyngen, og logg inn ved hjelp av «rot»-kontoen.
- Kjør
isi statistics pstat-kommandoen for å fastslå I/O-disk Fra utgangen av denne kommandoen, del disken IOPS med totalt antall disker i klyngen. For eksempel, for en 8-nodeklynge som bruker Isilon IQ 12000x-noder, som er vert for 12 stasjoner per node, deler du disk-IOPS med 96.
For noder i X-serien og noder i NL-serien kan du forvente å se IOPS for disk på 70 eller mindre for 100 % tilfeldige arbeidsflyter, eller IOPS for disk på 140 eller mindre for 100 % sekvensielle arbeidsflyter. Fordi noder i NL-serien har mindre RAM og lavere CPU-hastigheter enn noder i X-serien, kan noder i X-serien håndtere IOPS med høyere disk.
Etter node og disk
- Åpne en SSH-tilkobling på en hvilken som helst node i klyngen, og logg inn ved hjelp av «rot»-kontoen.
- Kjør
isi statistics query current --nodes=all --stats=node.disk.xfers.rate.sum --format=top-kommando for å fastslå disk IOPS etter node, som kan bidra til å oppdage disker som er overutnyttet. - Kjør
isi_stats_tool -a get_key_info|grep node.disk.xfer-kommandoen for å bestemme hvordan du vil spørre etter statistikk per disk.
Operasjoner i kø
En annen måte å finne ut om disker brukes for mye, er å finne ut hvor mange operasjoner som skal legges i kø for hver disk i klyngen. For en enkelt SMB-basert arbeidsflyt kan en kø på fire indikere et problem, mens for NFS-navneområdeoperasjoner med høy samtidighet er køen større.
- Opprett en SSH-tilkobling på en node i klyngen, og logg på med
rootKonto. - Kjør
isi statistics drive list --nodes=all --sort=queued -d-kommandoen for å bestemme hvor mange operasjoner som skal legges i kø for hver disk i klyngen. - Bestem hvor lenge operasjonen var i køen:
isi statistics drive list --nodes=all --sort=queued -d
CPU
CPU-problemer spores ofte til operasjonene klienter utfører på klyngen. Ved hjelp av isi statistics -kommandoen, kan du bestemme operasjonene som utføres på klyngen, katalogisert av enten nettverksprotokollen eller klientdatamaskinen.
- Opprett en SSH-tilkobling på en node i klyngen, og logg på med
rootKonto. - Kjør
isi statistics protocol list --long --totalby Op,proto -d --sort TimeAvg --format top-kommandoen for å bestemme hvilke operasjoner som utføres på tvers av nettverket og vurdere hvilke av disse operasjonene som tar mest tid.
Disse kommandoutdataene gir detaljert statistikk for alle nettverksprotokoller, organisert etter hvor lang tid klyngen bruker på å svare klienter. Selv om resultatene av denne kommandoen kanskje ikke identifiserer hvilken operasjon som er den tregeste, kan den peke deg i riktig retning. - Kjør
isi statistics system --nodes all --format top-kommandoen for å få mer informasjon om CPU-behandling, for eksempel hvilke noders CPUer som er mest brukt. - Kjør
isi_for_array -sX 'top -u -n |grep PID -A4'-kommandoen for å hente de fire prosessene på hver node som bruker mest CPU-ressurser.
Additional Information
Her er anbefalte ressurser relatert til dette emnet som kan være av interesse: