PowerScale OneFS: Fejlfinding af problemer med ydeevnen
Summary: Foretag fejlfinding af langsom PowerScale OneFS-ydeevne med vores omfattende vejledning om netværkskonfiguration, behandling af belastninger og overvågning med InsightIQ for forbedret klyngeeffektivitet. ...
Symptoms
Klientcomputere fungerer langsomt. Specifikke job, især dem, der kører på klyngen, mislykkes eller tager længere tid end forventet.
Cause
Problemer med ydeevnen skyldes typisk netværkstrafik, problemer med netværkskonfiguration, indlæsning af klient- eller klyngebehandling eller en kombination heraf. I denne artikel beskrives flere effektive metoder til fejlfinding af problemer med ydeevnen.
Resolution
Fejlfinding med InsightIQ
indholdsfortegnelse:
- Brug af Isilon InsightIQ
- Fejlfinding uden InsightIQ
- Netværksoverførselshastighed
- Distribution af klientforbindelser
- SmartConnect
- Klyngeoverførselshastighed
- Klyngebehandling
- Handlinger i kø
- CPU
Brug af Isilon InsightIQ
Brug af Isilon InsightIQ er den bedste metode til at overvåge ydeevnen og foretage fejlfinding af problemer med ydeevnen.
Den virtuelle Isilon InsightIQ-enhed giver dig mulighed for at overvåge og analysere Isilon-klyngeaktivitet via fleksible, brugertilpassede diagramvisninger i det webbaserede InsightIQ-program. Disse diagrammer indeholder detaljerede oplysninger om klyngehardware, -software samt filsystem- og protokolhandlinger. InsightIQ omdanner data til visuel information, der fremhæver eventuelle afvigelser i ydeevnen, hvilket muliggør hurtig diagnosticering af flaskehalse eller optimerer arbejdsgange.
Du kan finde flere oplysninger om brug af InsightIQ i brugervejledningen til InsightIQ.
Fejlfinding uden InsightIQ
Hvis du ikke bruger InsightIQ, kan du køre forskellige kommandoer for at undersøge problemer med ydeevnen. Foretag fejlfinding af problemer med ydeevnen først ved at undersøge netværks- og klyngeoverførselshastigheder, derefter ved at undersøge klyngebehandling og endelig ved at undersøge CPU-hastighederne for individuelle noder.
Netværksoverførselshastighed
Brug et netværkstestværktøj som f.eks. Iperf for at bestemme gennemløbsegenskaberne for klyngen og klientcomputerne på netværket.
Bruge Iperf, skal du køre følgende kommandoer på klyngen og klienten. Disse kommandoer definerer en vinduesstørrelse, der er stor nok til at afsløre, om netværksforbindelsen er en potentiel årsag til problemer med ventetiden.
- Klynge:
iperf -s -w 262144
- Klient:
iperf -c <cluster IP> -w 262144
Distribution af klientforbindelser
Kontrollér, hvor mange NFS- og SMB-klienter der er tilsluttet klyngen for at sikre, at de ikke favoriserer én node.
- Åbn en SSH-forbindelse på en vilkårlig node i klyngen, og log på ved hjælp af "rod"-kontoen.
- Kør følgende kommando for at kontrollere NFS-klienter:
isi statistics query - nodes=all --stats=node.clientstats.connected.nfs,node.clientstats.active.nfs
Outputtet viser antallet af tilsluttede klienter pr. node, og hvor mange af disse klienter der er aktive på hver node. - Kør følgende kommando for at kontrollere SMB-klienter:
isi statistics query - nodes=all --stats=node.clientstats.connected.smb, node.clientstats.active.smb1,node.clientstats.active.smb2
Outputtet viser antallet af tilsluttede klienter pr. node, og hvor mange af disse klienter der er aktive på hver node.
SmartConnect
Kontrollér, at den node, SmartConnect kører på, ikke er belastet med netværkstrafik.
- Åbn en SSH-forbindelse på en vilkårlig node i klyngen, og log på ved hjælp af "rod"-kontoen.
- Kør følgende kommando:
isi_for_array -sq 'ifconfig|grep em -A3'
Outputtet viser en liste over alle IP-adresser, der er bundet til den eksterne grænseflade. - Kontroller, om der er noder, der har en ekstra IP-adresse end resten.
- Kontroller status for de noder, du bemærkede i trin 3, ved at køre følgende kommando:
isi status
Kontroller gennemløbskolonnen for outputtet for at bestemme belastningen af de noder, der blev bemærket i trin 3.
Klyngeoverførselshastighed
Vurder klyngeoverførselshastighed ved at udføre skrive- og læsetest, der måler den tid, det tager at læse fra og skrive til en fil. Udfør mindst en skrivetest og en læsetest som følger.
Skriv test
- Åbn en SSH-forbindelse på en vilkårlig node i klyngen, og log på ved hjælp af "rod"-kontoen.
- Skift til mappen /ifs :
cd /ifs
- Fra kommandolinjegrænsefladen (CLI) på klyngen eller fra en UNIX- eller Linux-klientcomputer skal du bruge
ddfor at skrive en ny fil til klyngen. Kør følgende kommando:dd if=/dev/zero of=1GBfile bs=1024k count=1024
Denne kommando opretter et eksempel på en 1 GB-fil og rapporterer, hvor lang tid det tog at skrive den til disken. - Fra outputtet af denne kommando ekstrapolerer du, hvor mange MB pr. sekund der kan skrives til disk i enkeltstrømsarbejdsprocesser.
- Hvis du har en MAC-klient og ønsker at foretage yderligere analyser,
- Start aktivitetsovervågning.
- Kør følgende kommando, hvor
pathToFileer filstien til den målrettede fil:cat /dev/zero > /pathToFile
Denne kommando hjælper med at måle overførselshastigheden for skrivehandlinger på Isilon-klyngen. (Selvom det er muligt at køreddfra en MAC-klient, kan resultaterne være inkonsistente.) - Overvåg resultaterne af kommandoen under fanen Netværk i Aktivitetsovervågning.
Læs test
Når du måler gennemløbet af læsehandlinger, skal du sørge for ikke at udføre læsetest på den fil, du oprettede under skrivetesten. Da filen er cachelagret, vil resultaterne af dine læsetest være unøjagtige. Test i stedet en læsehandling af en fil, der ikke er cachelagret. Find en fil på klyngen, der er større end 1 GB, og henvis til denne fil i læsetesten.
- Åbn en SSH-forbindelse på en vilkårlig node i klyngen, og log på ved hjælp af "rod"-kontoen.
- Fra CLI på klyngen eller fra en UNIX- eller Linux-klientcomputer skal du bruge
ddfor at læse en fil i klyngen. Kør følgende kommando, hvorpathToFileer filstien til den målrettede fil:dd if=/pathToLargeFile of=/dev/null bs=1024k
Denne kommando læser den målrettede fil og rapporterer, hvor lang tid det tog at læse den. - Hvis du har en MAC-klient og ønsker at foretage yderligere analyser,
- Start aktivitetsovervågning.
- Kør følgende kommando, hvor
pathToFileer filstien til den målrettede fil:time cp /pathToLargeFile > /dev/null
Denne kommando hjælper med at måle gennemløbet for læsehandlinger på Isilon-klyngen. (Selvom det er muligt at køreddfra en MAC-klient, kan resultaterne være inkonsistente.) - Overvåg resultaterne af kommandoen under fanen Netværk i Aktivitetsovervågning.
Klyngebehandling
Restripe job
Før undersøgelse af klyngens I/O-handlinger (input/output):
- Find ud af, hvilke job der kører på klyngen. Hvis restripe job som Auto-Balance, Collect eller Multi-Scan kører, skal du overveje, hvorfor disse job kører, og om de skal fortsætte med at køre.
- Overvej den type data, der forbruges. Hvis klientcomputere arbejder med store videofiler eller virtuelle maskiner (VM'er), kræver det overførte job en større mængde disk-IOPS end normalt.
- Overvej midlertidigt at sætte et restripe job på pause. Dette kan forbedre ydeevnen betydeligt og kan være en levedygtig kortsigtet løsning på et præstationsproblem.
Disk I/O
Undersøgelse af disk I/O kan hjælpe med at afgøre, om visse diske overbruges.
Efter klynge
- Åbn en SSH-forbindelse på en vilkårlig node i klyngen, og log på ved hjælp af "rod"-kontoen.
- Kør følgende kommando for at finde disk-I/O:
isi statistics pstat
- Fra outputtet af denne kommando divideres disk-IOPS med det samlede antal diske i klyngen. For en 8-nodeklynge, der bruger Isilon IQ 12000x-noder, som er vært for 12 drev pr. node, dividerer du disk-IOPS med 96.
For noder i X-serien og NL-seriens noder kan du forvente at se disk-IOPS på 70 eller mindre for 100 % tilfældige arbejdsgange eller disk-IOPS på 140 eller mindre for 100 % sekventielle arbejdsgange. Da NL-seriens noder har mindre RAM og lavere CPU-hastigheder end X-seriens noder, kan X-seriens noder håndtere højere disk-IOPS.
Efter node og disk
- Åbn en SSH-forbindelse på en vilkårlig node i klyngen, og log på ved hjælp af "rod"-kontoen.
- Kør følgende kommando for at finde disk-IOPS efter node, hvilket kan hjælpe med at finde diske, der er overbrugt:
isi statistics query --nodes=all --stats=node.disk.xfers.rate.sum --top
- Kør følgende kommando for at bestemme, hvordan du forespørger på statistik pr. disk:
isi statistics describe --stats=all | grep disk
Handlinger i kø
Du kan også finde ud af, om diske overbruges, ved at bestemme, hvor mange handlinger der er i kø for hver disk i klyngen. For en SMB-baseret arbejdsproces baseret på en enkelt strøm kan en kø på 4 indikere et problem, mens køen er større for NFS-navneområdehandlinger med høj samtidighed.
- Åbn en SSH-forbindelse på en vilkårlig node i klyngen, og log på ved hjælp af "rod"-kontoen.
- Kør følgende kommando for at bestemme, hvor mange handlinger der er i kø for hver disk i klyngen:
isi_for_array -s sysctl hw.iosched | grep total_inqueue
- Bestem ventetiden forårsaget af køhandlingerne:
sysctl -aN hw.iosched|grep bios_inqueue|xargs sysctl -D
CPU
CPU-problemer spores ofte til de handlinger, klienter udfører på klyngen. Brug af isi statistics , kan du bestemme de handlinger, der udføres på klyngen, katalogiseret efter enten netværksprotokol eller klientcomputer.
- Åbn en SSH-forbindelse på en vilkårlig node i klyngen, og log på ved hjælp af "rod"-kontoen.
- Kør følgende kommando for at finde ud af, hvilke handlinger der udføres på tværs af netværket, og vurdere, hvilke af disse handlinger der tager mest tid:
isi statistics protocol --orderby=TimeAvg --top
Dette kommandooutput giver detaljerede statistikker for alle netværksprotokoller, organiseret efter, hvor lang tid klyngen er om at svare klienter. Selvom resultaterne af denne kommando muligvis ikke identificerer, hvilken operation der er den langsomste, kan den pege dig i den rigtige retning. - Kør følgende kommando for at få flere oplysninger om CPU-behandling, f.eks. hvilke noders CPU'er der er de mest anvendte:
isi statistics system --top
- Kør følgende kommando for at hente de fire processer på hver node, der bruger flest CPU-ressourcer:
isi_for_array -sq 'top -d1|grep PID -A4'
Additional Information
Her er anbefalede ressourcer relateret til dette emne, som kan være af interesse: