Isilon: Oznámení události: Oddíl var se blíží kapacitě, ID události: 100010001
Summary: Tento článek popisuje, jak vymazat oddíl var, který se blíží zaplnění své kapacity.
Symptoms
Je vydáno jedno z následujících oznámení o události:
The /var partition is near capacity (95% used) The /var partition is near capacity (85% used) The /var partition is near capacity (75% used)
Detaily
Když oddíl /var dosáhne 75 %, 85 % nebo 95 % kapacity, dojde k zaznamenání události a odeslání výstrahy.
Cause
Složka /var obsahuje velké množství protokolů, diagnostických souborů, konfiguračních dat a dočasných souborů pro různé funkce clusteru. V průběhu času se ve složce /var mohou nahromadit různé další soubory a způsobit její zaplnění.
Ten /var/log/wtmp a soubory s efektem rolloveru /var/log/wtmp.0, /var/log/wtmp.1, například zvětšení velikosti na více než 10 MB. Někdy se zvětšují až na 150 MB. Skript /var/log/wtmp file je binární soubor protokolu, který zaznamenává přihlašovací a odhlašovací údaje. Soubor správce protokolů, /etc/newsyslog.conf, nearchivuje stejným způsobem jako jiné soubory protokolu, takže /var/log/wtmp může zvětšit a zaplnit adresář /var.
Resolution
Níže je uveden výchozí obsah oddílu /var a stručný popis nejdůležitějších podadresářů. Pokud není uvedeno jinak, obsah a data v adresáři /var a jeho podadresářích by neměly být měněny ani odstraňovány.
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
Dva adresáře, na které je třeba se zaměřit, jsou /var/crash a /var/logs, protože se mohou zvětšovat a zabírat většinu místa na disku v oddílu /var.
Starší soubory selhání v umístění /var/crash lze odstranit, pokud již nejsou potřeba.
Protokol /var/logs lze vynulovat a resetovat, pokud jsou protokoly příliš velké. Pamatujte, že po resetování protokolů již není možné odstraňovat problémy a zkoumat minulé problémy.
Zkontrolujte výstup df pro oddíl /var . V závislosti na výstupu proveďte jeden nebo více z následujících úkonů:
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#
Rotace protokolů:
Podrobné pokyny k rotaci protokolů najdete v článku znalostní databáze č. 20315 Isilon: OneFS – Jak otočit systémové protokoly pro uzel.Příkaz k otočení protokolů:
newsyslog -f
Pokud se oddíl /var vrátí na normální úroveň využití, podívejte se do seznamu nedávno zapsaných protokolů a zjistěte, zda daný protokol často rotuje. Rotace může vyřešit problém s celým oddílem komprimací nebo odstraněním velkých a starých protokolů, čímž automaticky sníží využití oddílu.
Zkontrolujte procento volných inod:
Navažte připojení SSH k uzlu, který chybu nahlásil, a přihlaste se pomocí účtu "root".Spusťte následující příkaz:
df -i |grep var |grep -v crashZobrazí se výstup podobný následujícímu:
Filesystem 1K-blocks Used Avail Capacity iused ifree %iused Mounted on /dev/mirror/var0 1013068 49160 882864 5% 1650 139276 100% /varPokud je hodnota %iused 90 % nebo vyšší, snižte počet souborů v oddílu /var pomocí jedné z níže popsaných metod.
Určení souborů, které nepatří do oddílu /var:
- Na uzlu, který výstrahu vygeneroval, spusťte následující příkaz pro výpis souborů v oddílu /var , které jsou větší než 5 MB:
find -x /var -type f -size +10000 -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'
- Ve výstupu vyhledejte soubory, které obvykle nepatří do oddílu /var . Například instalační soubor systému OneFS, shromážděné protokoly nebo soubor vytvořený uživatelem.
- Odstraňte soubory nebo je přesuňte do adresáře /ifs.
Ruční odebrání souborů z oddílu /var:
Po určení dalších souborů příkazy potřebné k vymazání adresáře /var obvykle zahrnují vytvoření adresáře (mkdir), kopírování (cp), přesun (mv) a odstranění (rm). Uživatelé by měli znát tyto základní příkazy systému UNIX/Linux, než budou pokračovat.
Před odstraněním nebo přesunutím souborů z původního umístění si vždy vytvořte záložní kopii.
Vytvořte adresář, do kterého chcete přesunout nebo zkopírovat zálohovaná data, kde <dest> je cílový adresář. Do tohoto adresáře byste měli nejprve zkopírovat záložní kopie všech souborů, které chcete odstranit.
# mkdir /ifs/data/Isilon_Support/<dest>
Podle potřeby kopírovat, přesunout nebo odstranit soubory:
Chcete-li zkopírovat soubor nebo adresář:
# cp <file> /ifs/data/Isilon_Support/<dest>
Rekurzivně zkopírujte adresář.
# cp -R <directory> /ifs/data/Isilon_Support/<dest>
Přesunutí souboru nebo adresáře:
# mv <file> /ifs/data/Isilon_Support/<dest> # mv <directory> /ifs/data/Isilon_Support/<dest>
Odebrání/odstranění souboru:
# rm <file>
Zjistěte, zda proces uchovává otevřený velký soubor.
Pomocí příkazu fstat můžete zobrazit seznam otevřených souborů v uzlu nebo adresáři nebo soubory, které proces otevřel. Seznam otevřených souborů vám může pomoci sledovat procesy, které zapisují velké soubory. Informace o použití příkazu fstat k zobrazení seznamu otevřených souborů v uzlu naleznete v článku 21402 Isilon: Jak pomocí příkazu fstat zobrazit seznam otevřených souborů v uzlu.
Pokud ani jedna z výše uvedených úloh problém nevyřeší, přejděte k následujícímu řešení:
Omezení velikosti souboru změny a jeho komprimace
- Navažte připojení SSH s libovolným uzlem v clusteru a přihlaste se pomocí účtu „root“.
- Pomocí následujících příkazů vytvořte zálohu souboru /etc/newsyslog.conf:
cp /etc/newsyslog.conf /ifs/newsyslog.conf cp /etc/newsyslog.conf /etc/newsyslog.bak
- Otevřete soubor /ifs/newsyslog.conf v textovém editoru.
- Vyhledejte následující řádek:
/var/log/wtmp 644 3 * @01T05 B
- Změňte řádek na:
/var/log/wtmp 644 3 10000 @01T05 ZBTyto změny instruují systém, aby přetočil soubor /var/log/wtmp , když dosáhne velikosti 10 MB, a zkomprimoval soubor pomocí gzip.
- Uložte a zavřete soubor /ifs/newsyslog.conf .
- Spusťte následující příkaz a zkopírujte aktualizovaný soubor do všech uzlů v clusteru:
isi_for_array 'cp /ifs/newsyslog.conf /etc/newsyslog.conf'
- Log soubory rotují automaticky v případě potřeby pomocí úlohy cron na hodinu a půl (/etc/crontab)
#minute hour mday month wday who command # # rotate log files every half-hour, if necessary 0,30 * * * * root newsyslogPokud se ostatní protokoly často obměňují nebo pokud předchozí kroky problém nevyřeší, požádejte o pomoc technickou podporu společnosti Dell.