Coole Idee. SMS Versand mit Jabber zu verbinden und nur SMS raus zu hauen, wenn man offline ist. Obwohl die Bauanleitung für Nagios und nicht SMS Server Tools ist, kann man sie doch super einfach umbauen.
Coole Idee. SMS Versand mit Jabber zu verbinden und nur SMS raus zu hauen, wenn man offline ist. Obwohl die Bauanleitung für Nagios und nicht SMS Server Tools ist, kann man sie doch super einfach umbauen.
Warum finde ich solche Infos immer erst per Zufall:
Mittlerweile kommt mir Nagios so amateurhaft vor. Alle Features, die OpenNMS mitbringt müssen manuell nachgerüstet werden…
Nachdem ich varnish immer noch nicht versucht habe nehme ich mir das jetzt mal schriftlich vor. Ich glaub fest daran, dass so HTTP accelerator ordentlich was nutzt. Und eben der darauf spezialisierte Varnish Proxy erscheint mir viel besser zu sein als der gute alte Squid.
Das Problem, was ich mit Varnish noch habe ist, dass ich mir überlege wo ich das Teil im Netz aufhängen werden. Wahrscheinlich erst einmal nur auf meiner privaten Kiste vor dem Apache. Aber was tun bei komplexen Setups? Ich hab noch zuviele Frage über die ich mir im klaren werden muss:
Jemand schon Erfahrung damit?
Fangen wir erst einmal langsam im Heimgebrauch damit an …
Nachdem ich die Dinge immer er-google-n muss schreibe ich mir sie mal hier direkt auf:
acl aclHAPROXY hdr_dom(host) -i haproxy.it4sport.de use_backend HAPROXY if aclHAPROXY
acl aclDEV url_beg /devel/
use_backend DEV if aclDEVIm entsprechenden Backend muss man sich dann um den Pfad kümmern und den Request anpassen:
reqrep ^([^\ ]*)\ /devel/(.*) \1\ /\2
reqadd X-HAPROXY-BACKEND:\ devel
Damit weiß die Anwendung etwa über welches Backend die Seite aufgerufen wurde.
An alle die planen eines der folgenden Geräte zu kaufen oder es bereits besitzen: SONY PRS 300/500/505/600/700/900, Barnes & Noble Nook, Cybook Gen 3/Opus, Amazon Kindle 1/2/DX, Entourage Edge, Longshine ShineBook, Ectaco Jetbook, BeBook/BeBook Mini, Irex Illiad/DR1000, Foxit eSlick, PocketBook 360, Italica, eClicto, Iriver Story, Airis dBook, Hanvon N515, Binatone Readme, Teclast K3, SpringDesign Alex, diverse Android phones und das iPhone.
Calibre ist nicht nur ein super Ersatz für die teilweise fehlerhafte Orginalsoftware der Hersteller, sondern auch ein prima Weg tagesaktuell Webseiten von Tageszeitungen in eBook Form zu pressen und mitzunehmen. Ausserdem läuft es nicht nur unter Windows
Wer als Windows User sich schon immer für Nagios interessiert hat nur nicht ein Unix/Linux Programm einsetzen wollte, der sollte sich unbedingt mal den HostMonitor ansehen. Das Teil ist Nagios mehr als eben würdig. Der HostMonitor …
Falls jemand eine günstige Lösung für die Überwachung von Luftfeuchte und Temperatur sucht, der sollte sich mal DLP-TH1b von FTDIChip ansehen. Das Teil wird per USB angeschlossen. Soll’s im Netzwerk hängen, dann würde ich einfach ein Alix-Board nehmen und x-Sensoren dran hängen. Günstiger geht’s nicht…
NTP zu überwachen ist relativ komplex. Dabei ist die Überwachung der Zeitdifferenz zu einer NTP Quelle relativ einfach. Was das ganze komplex macht ist NTP selbst. D.h. die beste NTP Überwachung nützt nichts, wenn man NTP nicht verstanden hat und NTP auf den jeweiligen Servern nicht richtig konfiguriert hat. Hier geht’s aber nur um die Basisüberwachung von NTP per OpenNMS.
Bei der NTP-Überwachung nehme ich ntpq. Dabei nutze ich, dass das Tool den aktuell besten peer mit einem Stern “*” markiert. Das ganze packe ich in ein kleines Skript /usr/local/bin/ntp-time.sh :
#!/bin/sh ntpq -pn localhost | /usr/bin/awk 'BEGIN { delay=1000; offset=1000; jitter=1000; stratum=16 } $1 ~ /\*/ { delay=$8; offset=$9; jitter=$10; stratum=$3 } END { print int(delay)"\n"int(offset)"\n"int(jitter)"\n"stratum }'
Dieses Skript wiederum integriere ich in den snmp daemon (snmpd.conf):
extend ntp-time /usr/local/bin/ntp-tim.sh
Kurzer lokaler Test nach dem “/etc/init.d/snmpd reload” ob es funktioniert:
snmpwalk -v2c -cpublic localhost -On .1.3.6.1.4.1.8072.1.3.2.4.1.2.8.110.116.112.45.116.105.109.101 .1.3.6.1.4.1.8072.1.3.2.4.1.2.8.110.116.112.45.116.105.109.101.1 = STRING: 14 .1.3.6.1.4.1.8072.1.3.2.4.1.2.8.110.116.112.45.116.105.109.101.2 = STRING: 0 .1.3.6.1.4.1.8072.1.3.2.4.1.2.8.110.116.112.45.116.105.109.101.3 = STRING: 0 .1.3.6.1.4.1.8072.1.3.2.4.1.2.8.110.116.112.45.116.105.109.101.4 = STRING: 2
Funktioniert das, dann kann es in OpenNMS eingebaut werden:
datacollection-config.xml
<group name="NTP" ifType="ignore"> <mibObj oid=".1.3.6.1.4.1.8072.1.3.2.4.1.2.8.110.116.112.45.116.105.109.101" instance="1" alias="NTPdelay" type="integer" /> <mibObj oid=".1.3.6.1.4.1.8072.1.3.2.4.1.2.8.110.116.112.45.116.105.109.101" instance="2" alias="NTPoffset" type="integer" /> <mibObj oid=".1.3.6.1.4.1.8072.1.3.2.4.1.2.8.110.116.112.45.116.105.109.101" instance="3" alias="NTPjitter" type="integer" /> <mibObj oid=".1.3.6.1.4.1.8072.1.3.2.4.1.2.8.110.116.112.45.116.105.109.101" instance="4" alias="NTPstratum" type="integer" /> </group>
snmp-graph.properties
reports=ntp.overview, ntp.stratum \ report.ntp.overview.name=NTP Overview report.ntp.overview.columns=NTPdelay, NTPoffset, NTPjitter report.ntp.overview.type=nodeSnmp report.ntp.overview.command=--title="NTP Overview" --units-exponent=0 \ --vertical-label="miliseconds" \ DEF:delay={rrd1}:NTPdelay:AVERAGE \ DEF:mindelay={rrd1}:NTPdelay:MIN \ DEF:maxdelay={rrd1}:NTPdelay:MAX \ DEF:offset={rrd2}:NTPoffset:AVERAGE \ DEF:minoffset={rrd2}:NTPoffset:MIN \ DEF:maxoffset={rrd2}:NTPoffset:MAX \ DEF:jitter={rrd3}:NTPjitter:AVERAGE \ DEF:minjitter={rrd3}:NTPjitter:MIN \ DEF:maxjitter={rrd3}:NTPjitter:MAX \ LINE2:delay#0000ff:"Delay " \ GPRINT:delay:AVERAGE:"Avg \\: %10.2lf" \ GPRINT:delay:MIN:"Min \\: %10.2lf" \ GPRINT:delay:MAX:"Max \\: %10.2lf\\n" \ LINE2:offset#00ff00:"Offset" \ GPRINT:offset:AVERAGE:"Avg \\: %10.2lf" \ GPRINT:offset:MIN:"Min \\: %10.2lf" \ GPRINT:offset:MAX:"Max \\: %10.2lf\\n" \ LINE2:jitter#ff0000:"Jitter" \ GPRINT:jitter:AVERAGE:"Avg \\: %10.2lf" \ GPRINT:jitter:MIN:"Min \\: %10.2lf" \ GPRINT:jitter:MAX:"Max \\: %10.2lf\\n" report.ntp.stratum.name=NTP Stratum report.ntp.stratum.columns=NTPstratum report.ntp.stratum.type=nodeSnmp report.ntp.stratum.command=--title="NTP Stratum" --units-exponent=0 \ --vertical-label="stratum" \ DEF:stratum={rrd1}:NTPstratum:AVERAGE \ DEF:minstratum={rrd1}:NTPstratum:MIN \ DEF:maxstratum={rrd1}:NTPstratum:MAX \ LINE2:stratum#0000ff:"Stratum" \ GPRINT:stratum:AVERAGE:"Avg \\: %10.2lf" \ GPRINT:stratum:MIN:"Min \\: %10.2lf" \ GPRINT:stratum:MAX:"Max \\: %10.2lf\\n"
Fertig!
Ein paar Bemerkungen dazu:
snmptranslate NET-SNMP-EXTEND-MIB::nsExtendOutLine."ntp-time"Wenn man wie ich OpenNMS immer die neueste OpeNMS Version benutzt, dann muss man damit leben, dass ständig neue Configfiles von OpenNMS kommen. Ich lass OpenNMS auf CentOS laufen. Damit kommen die neuen Files als .xml.rpmnew an. Nachdem ich nun auch viel an den Configfiles an meine Bedürfnisse anpasse ist das Update immer ein Merge der beiden Files. Ich habe dafür eine ganz einfache Methode, die ich mir hier mal aufschreiben, dann muss ich nicht immer den Befehl suchen
:
/opt/opennms/bin/xml.reader.pl -w jmx-datacollection-config.xml.rpmnew /opt/opennms/bin/xml.reader.pl -w jmx-datacollection-config.xml
sdiff -o jmx-datacollection-config.xml.new jmx-datacollection-config.xml.rpmnew jmx-datacollection-config.xmlUm nichts nach außen dringen zu lassen sollte man die folgende Direktiven in seine Apache Konfig einbauen:
TraceEnable Off FileETag None
TraceEnable kann man auf einem Livesystem ausschalten, denn dort führt man sowieso kein Debuggen oder ähnliches aus. FileETag abschalten führt zwar zu etwas mehr Last, aber bevor man sich mit dem Aufwand dafür herum schlägt oder mehr Server hinter einem Loadbalancer im Einsatz hat, lohnt es sich die Direktive zu deaktivieren. Das sagt sogar Yahoo.