Unsere Nagios-Plugins für NetApp können die Auslastung der CPU entweder einzeln oder auch für das gesamte System – als Durchschnitt über alle Prozessoren gerechnet – auslesen und dem Monitoringsystem (Nagios, Icinga, op5, …) mitteilen.

Zur Überwachung einzelner Prozessoren kommt der Check PerfCpu zur Anwendung:

$ ./check_netapp_pro.pl PerfCpu -H sim812cm-n1 -z processor_busy
NETAPP_PRO PERFCPU OK - 4 processors checked.
processor0 (cluster1-01:kernel:processor0): 3.2% processor_busy
processor1 (cluster1-01:kernel:processor1): 2.9% processor_busy
processor0 (cluster1-02:kernel:processor0): 1.7% processor_busy
processor1 (cluster1-02:kernel:processor1): 1.2% processor_busy
 | processor0=3%;80;95;0;100 processor1=3%;80;95;0;100 processor0=2%;80;95;0;100 processor1=1%;80;95;0;100

Um den Durchschnitt über alle Prozessoren zu überwachen bzw. für die Trendanalyse aufzeichnen, verwendet man den Check PerSys mit dem Zähler avg_processor_busy:

$ ./check_netapp_pro.pl PerfSys -H sim812cm-n1 -z avg_processor_busy
NETAPP_PRO PERFSYS OK - 2 systems checked.
system (cluster1-01:kernel:system): 2.2% avg_processor_busy
system (cluster1-02:kernel:system): 1.3% avg_processor_busy
 | system=2%;80;90;0;100 system=1%;80;90;0;100

http://www.netapp-monitoring.info/en/help/PerfCpu.html

http://www.netapp-monitoring.info/en/help/PerfSys.html

Und wenn der Counter fehlt?

Bei NetApp Systemen die den Counter avg_processor_busy nicht unterstützen, kann man in der 2.x Version von check_netapp den Schalter --avg setzen. Dann wird nach dem Durchschnitt aller CPUs alarmiert.

Die Hilfe beschreibt diesen Schalter so:

Switch to average comparison instead of per instance-comparison. Setting this switch will compare the thresholds against the arithmetic average of all CPUs but still record the perfdata for each of the CPUs independently.