PowerScale OneFS: Risoluzione dei problemi relativi alle prestazioni

Summary: Risolvi i problemi di rallentamento di PowerScale OneFS con la nostra guida completa sulla configurazione di rete, i carichi di elaborazione e il monitoraggio con InsightIQ per migliorare l'efficienza del cluster. ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Le prestazioni dei computer client sono lente. Processi specifici, in particolare quelli in esecuzione nel cluster, hanno esito negativo o richiedono più tempo del previsto.

Cause

I problemi di prestazioni sono in genere dovuti al traffico di rete, a problemi di configurazione della rete, al carico di elaborazione client o cluster o a una combinazione di questi. Questo articolo descrive diversi modi efficaci per risolvere i problemi relativi alle prestazioni.

Resolution

Risoluzione dei problemi con InsightIQ

Sommario:

  • Utilizzo di Isilon InsightIQ
  • Risoluzione dei problemi senza InsightIQ
  • Throughput di rete
  • Distribuzione delle connessioni client
  • SmartConnect
  • Throughput del cluster
  • Elaborazione del cluster
  • Operazioni in coda
  • CPU


Utilizzo di Isilon InsightIQ

L'utilizzo di Isilon InsightIQ è il modo migliore per monitorare le prestazioni e risolvere i problemi relativi alle prestazioni.

L'appliance virtuale Isilon InsightIQ consente di monitorare e analizzare l'attività dell'Isilon Cluster tramite grafici flessibili e personalizzabili nell'applicazione web-based InsightIQ. Questi grafici forniscono informazioni dettagliate su hardware, software, file system e operazioni di protocollo del cluster. InsightIQ trasforma i dati in informazioni visive che mettono in evidenza eventuali anomalie nelle prestazioni, consentendo una rapida diagnosi dei colli di bottiglia o ottimizzando i flussi di lavoro.

Per informazioni dettagliate sull'utilizzo di InsightIQ, consultare la Guida utente di InsightIQ.


Risoluzione dei problemi senza InsightIQ

Se non si utilizza InsightIQ, è possibile eseguire vari comandi per analizzare i problemi relativi alle prestazioni. Risolvere i problemi relativi alle prestazioni esaminando innanzitutto il throughput di rete e del cluster, quindi l'elaborazione del cluster e infine le velocità della CPU dei singoli nodi.


Throughput di rete

Utilizzare uno strumento di test di rete come Iperf Per determinare le funzionalità di throughput del cluster e dei computer client sulla rete.

Utilizzando Iperf, eseguire i seguenti comandi sul cluster e sul client. Questi comandi definiscono una dimensione della finestra sufficientemente grande da indicare se il collegamento di rete è una potenziale causa dei problemi di latenza.

  • Grappolo:
iperf -s -w 262144
  • Client:
iperf -c <cluster IP> -w 262144


Distribuzione delle connessioni client

Controllare quanti client NFS e SMB sono connessi al cluster per assicurarsi che non stiano favorendo un nodo.

  1. Aprire una connessione SSH su qualsiasi nodo del cluster ed effettuare l'accesso utilizzando l'account "root".
  2. Eseguire il comando seguente per controllare i client NFS:
    isi statistics query - nodes=all --stats=node.clientstats.connected.nfs,node.clientstats.active.nfs
    L'output visualizza il numero di client connessi per nodo e il numero di tali client attivi in ogni nodo.
  3. Eseguire il seguente comando per controllare i client SMB:
    isi statistics query - nodes=all --stats=node.clientstats.connected.smb,
    node.clientstats.active.smb1,node.clientstats.active.smb2
    L'output visualizza il numero di client connessi per nodo e il numero di tali client attivi in ogni nodo.


SmartConnect

Verificare che il nodo su cui SmartConnect è in esecuzione non sia gravato dal traffico di rete.

  1. Aprire una connessione SSH su qualsiasi nodo del cluster ed effettuare l'accesso utilizzando l'account "root".
  2. Eseguire il seguente comando:
    isi_for_array -sq 'ifconfig|grep em -A3'
    L'output visualizza un elenco di tutti gli indirizzi IP associati all'interfaccia esterna.
  3. Verificare la presenza di eventuali nodi con un indirizzo IP aggiuntivo rispetto agli altri.
  4. Controllare lo stato dei nodi notati nel passaggio 3 eseguendo il seguente comando:
    isi status
    Controllare la colonna del throughput dell'output per determinare il carico dei nodi rilevati nel passaggio 3.


Throughput del cluster

Valutare il throughput del cluster eseguendo test di scrittura e lettura che misurano la quantità di tempo necessaria per leggere e scrivere in un file. Eseguire almeno un test di scrittura e un test di lettura, come indicato di seguito.

Test di scrittura

  1. Aprire una connessione SSH su qualsiasi nodo del cluster ed effettuare l'accesso utilizzando l'account "root".
  2. Passare alla directory /ifs :
    cd /ifs
  3. Dall'interfaccia della riga di comando (CLI) sul cluster o da un computer client UNIX o Linux, utilizzare il comando dd per scrivere un nuovo file nel cluster. Eseguire il seguente comando:
    dd if=/dev/zero of=1GBfile bs=1024k count=1024
    Questo comando crea un file di esempio da 1 GB e segnala la quantità di tempo necessaria per scriverlo su disco.
  4. Dall'output di questo comando, estrapolare il numero di MB al secondo che è possibile scrivere su disco in flussi di lavoro a flusso singolo.
  5. Se si dispone di un client MAC e si desidera condurre ulteriori analisi,
    1. Avviare Monitoraggio Attività.
    2. Eseguire il seguente comando, dove pathToFile è il percorso del file di destinazione:
      cat /dev/zero > /pathToFile
      Questo comando consente di misurare il throughput delle operazioni di scrittura sull'Isilon Cluster. Anche se è possibile eseguire il comando dd da un client MAC, i risultati possono essere incoerenti.)
    3. Monitorare i risultati del comando nella scheda Rete di Monitoraggio Attività.

Test di
letturaQuando si misura il throughput delle operazioni di lettura, assicurarsi di non condurre test di lettura sul file creato durante il test di scrittura. Poiché tale file è stato memorizzato nella cache, i risultati dei test di lettura non sono accurati. Testare invece un'operazione di lettura di un file non memorizzato nella cache. Trovare nel cluster un file di dimensioni superiori a 1 GB e fare riferimento a tale file nel test di lettura.

  1. Aprire una connessione SSH su qualsiasi nodo del cluster ed effettuare l'accesso utilizzando l'account "root".
  2. Dalla CLI sul cluster o da un computer client UNIX o Linux, utilizzare il comando dd per leggere un file nel cluster. Eseguire il seguente comando, dove pathToFile è il percorso del file di destinazione:
    dd if=/pathToLargeFile of=/dev/null bs=1024k
    Questo comando legge il file di destinazione e segnala la quantità di tempo necessaria per leggerlo.
  3. Se si dispone di un client MAC e si desidera condurre ulteriori analisi,
    1. Avviare Monitoraggio Attività.
    2. Eseguire il seguente comando, dove pathToFile è il percorso del file di destinazione:
      time cp /pathToLargeFile > /dev/null
      Questo comando consente di misurare il throughput delle operazioni di lettura sul cluster Isilon. Anche se è possibile eseguire il comando dd da un client MAC, i risultati possono essere incoerenti.)
    3. Monitorare i risultati del comando nella scheda Rete di Monitoraggio Attività.


Elaborazione del cluster

Processi
di restripingPrima di esaminare le operazioni di input/output (I/O) (IOPS) del cluster:

  • Determinare quali processi sono in esecuzione nel cluster. Se sono in esecuzione processi di restriping come Auto-Balance, Collect o Multi-Scan, considerare il motivo per cui tali processi sono in esecuzione e se debbano continuare a essere eseguiti.
  • Considerare il tipo di dati utilizzati. Se i computer client lavorano con file video di grandi dimensioni o macchine virtuali (VM), il processo con restriping richiede una quantità maggiore di IOPS del disco rispetto al normale.
  • Prendere in considerazione la sospensione temporanea di un processo di restriping. In questo modo è possibile migliorare significativamente le prestazioni e potrebbe essere una soluzione valida a breve termine per un problema di prestazioni.

I/O
discoL'esame dell'I/O del disco può aiutare a determinare se alcuni dischi sono sovrautilizzati.

Per cluster

  1. Aprire una connessione SSH su qualsiasi nodo del cluster ed effettuare l'accesso utilizzando l'account "root".
  2. Eseguire il comando seguente per verificare l'I/O del disco:
    isi statistics pstat
  3. Dall'output di questo comando, dividere il numero di IOPS del disco per il numero totale di dischi nel cluster. Ad esempio, per un cluster a 8 nodi che utilizza nodi Isilon IQ 12000x, che ospita 12 unità per nodo, si dividono gli IOPS del disco per 96.

    Per i nodi serie X e serie NL, dovrebbero essere presenti al massimo 70 IOPS del disco per flussi di lavoro casuali al 100% o massimo 140 IOPS del disco per flussi di lavoro sequenziali al 100%. Poiché i nodi serie NL hanno meno RAM e velocità inferiori della CPU rispetto ai nodi serie X, questi ultimi possono gestire IOPS del disco più elevati.

Per nodo e per disco

  1. Aprire una connessione SSH su qualsiasi nodo del cluster ed effettuare l'accesso utilizzando l'account "root".
  2. Eseguire il comando seguente per verificare gli IOPS del disco per nodo, in modo da individuare i dischi sovrautilizzati:
    isi statistics query --nodes=all --stats=node.disk.xfers.rate.sum --top
  3. Eseguire il seguente comando per determinare come eseguire una query per le statistiche in base al singolo disco:
    isi statistics describe --stats=all | grep disk
    


Operazioni in coda

Un altro modo per determinare se i dischi sono sovrautilizzati consiste nel determinare il numero di operazioni in coda per ogni disco nel cluster. Per un flusso di lavoro basato su SMB a flusso singolo, una coda di 4 può indicare un problema, mentre per le operazioni di namespace NFS a elevata simultaneità, la coda è maggiore.

  1. Aprire una connessione SSH su qualsiasi nodo del cluster ed effettuare l'accesso utilizzando l'account "root".
  2. Eseguire il comando seguente per determinare il numero di operazioni in coda per ogni disco nel cluster:
    isi_for_array -s sysctl hw.iosched | grep total_inqueue
  3. Determinare la latenza causata dalle operazioni in coda:
    sysctl -aN hw.iosched|grep bios_inqueue|xargs sysctl -D


CPU

I problemi della CPU sono spesso riconducibili alle operazioni eseguite dai client sul cluster. Utilizzando il comando isi statistics , è possibile determinare le operazioni eseguite sul cluster, catalogate in base al protocollo di rete o al computer client.

  1. Aprire una connessione SSH su qualsiasi nodo del cluster ed effettuare l'accesso utilizzando l'account "root".
  2. Eseguire il comando seguente per determinare quali operazioni vengono eseguite in rete e valutare quali di queste richiedono più tempo:
    isi statistics protocol --orderby=TimeAvg --top
    L'output di questo comando fornisce statistiche dettagliate per tutti i protocolli di rete, organizzate in base al tempo impiegato dal cluster per rispondere ai client. Anche se i risultati di questo comando potrebbero non identificare quale operazione è più lenta, può indirizzare l'utente nella direzione giusta.
  3. Eseguire il comando seguente per ottenere ulteriori informazioni sull'elaborazione della CPU, ad esempio le CPU dei nodi più utilizzate:
    isi statistics system --top
  4. Eseguire il comando seguente per ottenere i quattro processi su ciascun nodo che utilizzano la maggior parte delle risorse della CPU:
    isi_for_array -sq 'top -d1|grep PID -A4'

Additional Information

Risorse
correlateDi seguito sono riportate le risorse consigliate relative a questo argomento che potrebbero essere di interesse:

Affected Products

PowerScale, PowerScale OneFS

Products

Isilon, PowerScale OneFS
Article Properties
Article Number: 000015384
Article Type: Solution
Last Modified: 30 Jan 2025
Version:  11
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.