Isilon: Notifica di evento: La partizione var è quasi piena, ID evento: 100010001
Summary: Questo articolo descrive come cancellare la partizione Var quando la capacità sta per esaurirsi.
Symptoms
Evento
Viene emessa una delle seguenti notifiche di evento:
The /var partition is near capacity (95% used) The /var partition is near capacity (85% used) The /var partition is near capacity (75% used)
Dettagli
Quando la partizione /var raggiunge il 75%, l'85% o il 95% della capacità, viene registrato un evento e viene inviato un avviso.
Cause
La cartella /var contiene numerosi registri, file di diagnostica, dati di configurazione e file temporanei per varie funzioni del cluster. Nel corso del tempo, vari file aggiuntivi possono accumularsi all'interno della cartella /var e causarne il riempimento.
Le /var/log/wtmp file e i file di rollover /var/log/wtmp.0, /var/log/wtmp.1, ad esempio, aumentare le dimensioni a oltre 10 MB. A volte, aumentano fino a 150 MB. La variabile /var/log/wtmp file è un file di registro binario che registra i dati di accesso e disconnessione. Il file di gestione dei log, /etc/newsyslog.conf, non archivia allo stesso modo degli altri file di registro, quindi il /var/log/wtmp può espandere e riempire la directory /var.
Resolution
Di seguito è riportato il contenuto predefinito di una partizione /var e una breve descrizione delle sottodirectory più rilevanti. Salvo diversa indicazione, il contenuto e i dati all'interno di /var e delle sue sottodirectory non devono essere modificati o rimossi.
ps9500x3-2# cd /var ps9500x3-2# ls .snap at backups db ifs lib patch spool account audit cache empty journal log preserve tmp agentx authpf crash games journal-peer mail run unbound apache2 backup cron heimdal krb5kdc msgs rwho yp .snap Snapshots. Do not touch. account Account information. Do not touch. agentx Empty but preserved for Agent Extensibility (AgentX) Protocol apache2 Apache Files. Do not touch. at Variable data. Do not touch. audit Audit Files. Do not touch. authpf Authentication gateway. Do not touch. backup System configuration backup files. Do not touch backups Group configuration backups. Do not touch cache System cache. Do not touch. crash Crash files, older files can be deleted if needed cron Cron jobs, do not touch db Database files. Do not touch empty Do not touch. games Empty but preserved. heimdal Kerberos 5 protocol. Do not touch. ifs Do not touch unless directed by support journal System Journal database journal-peer System Journal-peer database krb5kdc Kerberos KDC (Key Distribution Center) lib Likewise database files. Do not touch log Various System log files, can be cleared but zero's out the system logs. mail Mail sub-system files. msgs Message logs patch System patch database. Do not touch preserve Do not touch run Do not touch rwho Do Not Touch spool System Spool files. Do not touch. tmp Healthcheck items and vi recover. Do not touch. unbound Do Not Touch yp Do Not Touch
Le due directory su cui concentrarsi sono /var/crash e /var/logs in quanto possono crescere e utilizzare la maggior parte dello spazio su disco nella partizione /var.
I file di crash meno recenti in /var/crash possono essere rimossi se non sono più necessari.
/var/logs può essere azzerato e reimpostato se i registri diventano troppo grandi. Tenere presente che, una volta reimpostati i registri, non è più possibile risolvere e ricercare i problemi precedenti.
Esaminare l'output df per la partizione /var . A seconda dell'output, completare una o più delle seguenti attività:
ps9500x3-2# df Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/mirror/root0 1957292 871082 929628 48% / devfs 1 1 0 100% /dev /dev/mirror/var0 978604 51394 848922 6% /var /dev/mirror/var-crash 2946284 10 2710572 0% /var/crash /dev/mirror/keystore 61228 46 56284 0% /keystore /dev/md0 61166 2158 54116 4% /tmp/ufp /dev/md1.uzip 435751 406426 -5535 101% /base OneFS 246327840 2362592 173903776 1% /ifs ps9500x3-2#
Ruotare i registri:
Le istruzioni dettagliate sulla modalità di rotazione dei registri sono riportate nell'articolo 20315 della Knowledge Base di Isilon: OneFS: Come ruotare i registri di sistema per un nodo.Comando per ruotare i registri:
newsyslog -f
Se la partizione /var torna a un normale livello di utilizzo, esaminare l'elenco dei registri scritti di recente per determinare se un registro specifico è in rotazione frequente. La rotazione può risolvere il problema di spazio esaurito nella partizione comprimendo o rimuovendo registri di grandi dimensioni e meno recenti e riducendo automaticamente l'utilizzo delle partizioni.
Controlla la percentuale di inode liberi:
Aprire una connessione SSH al nodo che ha segnalato l'errore e accedere utilizzando l'account "root".Eseguire il seguente comando:
df -i |grep var |grep -v crashViene visualizzato un output simile al seguente:
Filesystem 1K-blocks Used Avail Capacity iused ifree %iused Mounted on /dev/mirror/var0 1013068 49160 882864 5% 1650 139276 100% /varSe il valore %iused è pari o superiore al 90%, ridurre il numero di file nella partizione /var utilizzando uno dei metodi descritti di seguito.
Identificare i file che non appartengono alla partizione /var:
- Nel nodo che ha generato l'avviso, eseguire il comando seguente per elencare i file nella partizione /var di dimensioni superiori a 5 MB:
find -x /var -type f -size +10000 -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'
- Nell'output, cercare i file che in genere non appartengono alla partizione /var . Ad esempio, un file di installazione di OneFS, raccolte di registri o un file creato dall'utente.
- Rimuovere i file o spostarli nella directory /ifs.
Rimuovere manualmente i file dalla partizione /var:
Una volta identificati i file aggiuntivi, i comandi necessari per pulire la directory /var in genere includono Make Directory (mkdir), Copy (cp), Move (mv) e Remove (rm). Prima di procedere, gli utenti devono avere familiarità con questi comandi UNIX/Linux di base.
Creare sempre una copia di backup dei file prima di eliminarli o spostarli dalla loro posizione originale.
Creare una directory in cui spostare o copiare i dati di backup, dove <dest> è la directory di destinazione. Questa è la directory in cui prima devono essere copiati i backup di tutti i file da eliminare.
# mkdir /ifs/data/Isilon_Support/<dest>
Copiare, spostare o eliminare i file in base alle esigenze:
Per copiare un file o una directory:
# cp <file> /ifs/data/Isilon_Support/<dest>
Copiare una directory in modo ricorsivo.
# cp -R <directory> /ifs/data/Isilon_Support/<dest>
Per spostare un file o una directory:
# mv <file> /ifs/data/Isilon_Support/<dest> # mv <directory> /ifs/data/Isilon_Support/<dest>
Per rimuovere/eliminare un file:
# rm <file>
Determinare se un processo mantiene aperto un file di grandi dimensioni.
Utilizzare il comando fstat per elencare i file aperti in un nodo o in una directory o per elencare i file aperti da un processo. Un elenco dei file aperti consente di monitorare i processi che scrivono file di grandi dimensioni. Vedere come usare il comando fstat per elencare i file aperti su un nodo, articolo 21402, Isilon: Come utilizzare il comando fstat per elencare i file aperti in un nodo.
Se nessuna delle attività precedenti risolve il problema, passare alla seguente soluzione:
Limitare le dimensioni del file di rollover e comprimere il file
- Aprire una connessione SSH a qualsiasi nodo nel cluster e accedere utilizzando l'account "root".
- Utilizzare i seguenti comandi per creare un backup del file /etc/newsyslog.conf:
cp /etc/newsyslog.conf /ifs/newsyslog.conf cp /etc/newsyslog.conf /etc/newsyslog.bak
- Aprire il file /ifs/newsyslog.conf in un editor di testo.
- Individuare la riga seguente:
/var/log/wtmp 644 3 * @01T05 B
- Modificare la riga in:
/var/log/wtmp 644 3 10000 @01T05 ZBQueste modifiche indicano al sistema di eseguire il rollover del file /var/log/wtmp quando raggiunge 10 MB e di comprimere il file con gzip.
- Salvare e chiudere il file /ifs/newsyslog.conf .
- Utilizzare il seguente comando per copiare il file aggiornato in tutti i nodi nel cluster:
isi_for_array 'cp /ifs/newsyslog.conf /etc/newsyslog.conf'
- I file di log ruotano automaticamente, se necessario, utilizzando un cron job all'ora e alla mezz'ora (/etc/crontab)
#minute hour mday month wday who command # # rotate log files every half-hour, if necessary 0,30 * * * * root newsyslogSe altri registri ruotano frequentemente o se la procedura precedente non risolve il problema, contattare il supporto tecnico Dell per assistenza.