Debian Wheezy's send_nsca und nsca 2.7.2
Unter Debian Wheezy gibt es erstmal auch ein Paket für den NSCA-Agent (früher gab es nur ein Paket, welches Agent und Dienst vereinte). Das Paket liegt in der Version 2.9.1 vor - in Kombination mit dem NSCA-Server in der Version 2.7.2 ergibt das allerdings leider unschöne Fehlermeldungen im Syslog:
1# cat /var/log/messages
2...
3nsca[30772]: Handling the connection...
4nsca[30772]: Dropping packet with invalid CRC32 - possibly due to client using wrong password or crypto algorithm?
Der Hintergrund ist, dass send_nsca in der neueren Version eine größere Paketgröße von 4096 Bytes (anstatt 512) hat - damit kann der Server nichts anfangen. Die einfachste Lösung ist es, send_nsca in einer älteren Version zu übersetzen. Idealerweise nimmt man genau die NSCA-Version, die auch auf dem Nagios-/Icinga-Server verwendet wird.
In meinem Fall war das NSCA 2.7.2. Die folgenden Zeilen laden einige Entwicklungswerkzeuge und NSCA herunter. Anschließend wird send_nsca übersetzt und auf die Festplatte kopiert. Zuletzt muss noch die send_nsca-Konfigurationsdatei angepasst werden:
1# apt-get install gcc make libmcrypt-dev
2# links 'http://sourceforge.net/projects/nagios/files/nsca-2.x/nsca-2.7.2/nsca-2.7.2.tar.gz/download'
3# tar xfz nsca-2.7.2.tar.gz
4# cd nsca-2.7.2
5# ./configure --prefix=/usr
6# make send_nsca
7# cp src/send_nsca /usr/sbin/send_nsca
8# vi /etc/send_nsca.cfg
Und siehe da - schon funktioniert das Ganze wieder:
1PASSIVE SERVICE CHECK: somehost;HW: CPU;0;OK - load average: 0.20, 0.18, 0.26
🙂