hard-disk-775847

Erkennen Sie die Zuverlässigkeit Ihrer Festplatte (Icinga/Nagios Skript)

Vor einer Weile hatten wir uns entschieden, sukzessive die von uns geschriebenen Nagios/Icinga Überwachungskripte zu veröffentlichen. Heute möchten wir mit der Veröffentlichung eines weiteren Skriptes fortfahren.

Das Nagios/Icinga-Plugin check_smart liest die von smartctl zurückgelieferten Informationen des „Self-Monitoring, Analysis and Reporting Technology“ (SMART) Systems aus, das in die meisten ATA/SATA, SCSI/SAS bzw. Solid-State-Drives eingebaut ist.

SMART ermöglicht es, die Zuverlässigkeit einer Festplatte zu überwachen und eventuell nahende Ausfälle durch verschiedene Tests frühzeitig zu erkennen. Auf unserer Seite erklären wir Ihnen, wieso Festplattenüberwachung wichtig ist.

Das Skript check_smart erfüllt dabei folgende Aufgaben:

  • Überprüfung, ob der Self-Assesment Test einer Festplatte erfolgreich war (SMART overall-health self-assessment test result: PASSED)
  • Rückgabe aller vefügbaren Vendor-spezifischen SMART-Performance Daten als Nagios PERFDATA String

Dafür parst es den Output von:

$ smartctl -A -H HARD_DRIVE

für alle Festplatten, die sich in der [Monitored] Sektion einer Konfigurationsdatei unter CONF_FILE_LOCATION befinden. Dieses wird standardmäßig unter "/etc/nagios/check_smart.conf" gesucht.

Sämtliche Festplatten der Form /dev/sd[a-z] bzw. /dev/sg[0-9] müssen in der Konfigurationsdatei entweder explizit überwacht oder ignoriert werden. Im letzteren Fall erfolgt keine Ausgabe der entsprechenden SMART-Werte bzw. keine anderweitige Überprüfung der Platte.

[Monitored]
sda
sdb

[Ignored]
sdc
sg0

Schlägt kein Selbsttest einer spezifizierten Platte fehl und ist die Konfiguration valide, so ist der TEXT_OUTPUT/EXIT_CODE des Skripts OK/0 andernfalls ERROR: ERROR_MSG/2.

Werte, die je nach Verfügbarkeit ausgelesen werden, sind

  • Reallocated Sector Count
  • Raw Read Error Rate
  • Wear Leveling Count
  • Used Rsvd Blk Cnt Tot
  • Uncorrectable Error Count
  • Command Timeout
  • Airflow Temperature Celsius
  • Temperature Celsius
  • Current Pending Sector
  • Offline Uncorrectable
  • UDMA CRC Error Count
  • Host Writes 32MiB
  • Available Reservd Space
  • Total LBAs Written
  • Total LBAs Read
  • Host Reads 32MiB
  • NAND Writes 1GiB

Diese werden als Teil des PERF_STR zurückgegeben, unabhängig davon, ob ein Selbsttest einer Platte versagt oder nicht.

Eine Beispielausgabe für zwei Festplatten /dev/sda bzw. /dev/sdb ist nachfolgend zu sehen.

$ check_smart

OK | sda_RRER=2031652 sda_Realloc_Sector=0 sda_Temp=25 sda_Cur_Pend_Sector=0 sda_Offline_UnC=0 sda_UDMA_CRC_Error=0 sda_RRER_n=90 sda_Realloc_Sector_n=100 sda_Temp_n=240 sda_Cur_Pend_Sector_n=100 sda_Offline_UnC_n=100 sda_UDMA_CRC_Error_n=200 sdb_RRER=16253438 sdb_Realloc_Sector=2 sdb_Temp=29 sdb_Cur_Pend_Sector=1 sdb_Offline_UnC=0 sdb_UDMA_CRC_Error=0 sdb_RRER_n=80 sdb_Realloc_Sector_n=100 sdb_Temp_n=206 sdb_Cur_Pend_Sector_n=100 sdb_Offline_UnC_n=100 sdb_UDMA_CRC_Error_n=200

 

Das Skript kann hier heruntergeladen werden.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.