Zabbix: Unterschied zwischen den Versionen

Aus Vosp.info
Wechseln zu:Navigation, Suche
(Hinzufügen weiterer Maschinen)
(Hinzufügen weiterer Maschinen)
Zeile 62: Zeile 62:
  
 
== Hinzufügen weiterer Maschinen ==
 
== Hinzufügen weiterer Maschinen ==
* Repositiry hinzufügen
+
* Repository hinzufügen
 
  apt-get install zabbix-agent
 
  apt-get install zabbix-agent
 
In der /etc/zabbix/zabbix_agentd.conf muss unter "Server" der oder die zabbix-server eingetragen werden.<br>
 
In der /etc/zabbix/zabbix_agentd.conf muss unter "Server" der oder die zabbix-server eingetragen werden.<br>

Version vom 26. Oktober 2013, 19:47 Uhr

Zabbix ist ein plattformübergreifendes Werkzeug zur Überwachung von Netzwerkinfrastruktur. Das können Serverdienste, Webseiten oder Router sein. Es gibt Agents für Windows und Linux.

Update

Update: Es gibt bei Zabbix jetzt es offizielles Repo, auch mit wheezy.
Das HowTo ist daran angepasst.

Zabbix-Repository

Zuerst das zabbix-repo hinzufügen.

vim /etc/apt/sources.list.d/zabbix.list

Darin folgende Zeile eintragen.

deb http://repo.zabbix.com/zabbix/2.0/debian wheezy main
/usr/bin/apt-key adv --keyserver keys.gnupg.net --recv-keys D13D58E479EA5ED4
apt-get update

Installation des Zabbix-Server

Konsole

Wichtig: Die Pakete müssen von zabbix bezogen werden. Die Debian-Pakete sind zu alt.
Es gibt eine mysql und eine postgresql Version.
Die postgresql-Version ist buggy und sollte momentan gemieden werden. (25.10.2013)

apt-get install zabbix-server-mysql zabbix-frontend-php zabbix-agent

Während der Installation wird das admin-Passwort für mysql vergeben.
Passwort eingeben und merken/aufschreiben.

Das Mysql-Passwort für Zabbix kann leer gelassen werden. Es wird dann ein zufälliges generiert.

vim /etc/php5/apache2/php.ini

Und nach zone suchen ...

;date.timezone = 

ersetzen durch

date.timezone = Europe/Berlin

Danach Apach2 neu starten.

apache2ctl restart

Für den Mailversand benötigen wir einen Mailserver.
Postfix ist eine willkürliche, aber gute Wahl.

apt-get install postfix


Webbrowser

Zabbix im Browser aufrufen mit <domain>/zabbix und den Installationsanweisungen folgen.
Frage: Warum muss noch das root-passwort der Datenbank eingegeben werden?

Erstes Login mit user admin und password zabbix.
Wichtig: Sofort ändern!

  • Oberer Reiter: Administration
  • Unterer Reiter: Users
  • In der Zeile Zabbix administrators in der zweiten Spalte Users anklicken.
  • In der ersten Spalte den User Admin auswählen.
  • In der vierten Zeile Change password anklicken und neues Passwort eingeben.
  • Nach unten scrollen und Save anklicken.

Informationen zum Zustand des Zabbix-Server stehen sofort bereit.

Hinzufügen weiterer Maschinen

  • Repository hinzufügen
apt-get install zabbix-agent

In der /etc/zabbix/zabbix_agentd.conf muss unter "Server" der oder die zabbix-server eingetragen werden.

Danach die zabbix-agent.conf anpassen.

vim /etc/zabbix/zabbix-agent.conf


#Server=127.0.0.1
Server=<Zabbix Server IP>,<noch ein Zabbix-Server>


In Frontend des Zabbix-Servers muss die Maschine hinzugefügt werden.

Zabbix überwacht mehrere Sites oder Knoten/HNs [1]

Jeder Host für sich

Jeder Host, ob virtuell oder bare iron, komuniziert mit dem oder den Zabbix-servern.

Mit Proxy

Ein zabbix-proxy ist ein Programm, das im Komunikationsweg zwischen agent und server liegt.
In der config der agents wird der Proxy als zabbix-server eingetragen.
Die Rechner einer Site oder die Gästes einer HN reporten dem zentralen Proxy, der dann für die Komunikation mit dem Server zuständig ist.
Ist der Proxy down, sind keine Daten mehr erhältlich. Bei einer HN ist das O.K. Ist die HN down, stehen ehedem größere Probleme an.
Bei einer Site muss geschaut werden, wer der Proxy ist. Es muss der Rechner sein, der vor allen anderen eingeschaltet und nach allen andern abgeschaltet wird. Oder halt immer läuft.

Betrieb

Festplattenplatz in openVZ anzeigen

Der freie oder genutzte Festplattenplatz eines Containers wird per default in Zabbix nicht angezeigt.
Der Grund ist, dass die zuständige Discovery-Rule mit einem Regex arbeitet, der das Dateisystem simfs ausfiltert.

Im Webfrontend

  • Reiter "Administration => General" auswählen.
  • Im Drop-Downmenu auf der rechten Seite "Regual expressions" auswählen.
  • "File systems for discovery" anklicken
  • Auf der rechten Seite mit "Edit" den regular expression bearbeiten und "simfs" hinzufügen
  • default ^(btrfs|ext2|ext3|ext4|jfs|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|ntfs|fat32)$
  • geändert ^(btrfs|ext2|ext3|ext4|jfs|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|ntfs|fat32|simfs)$
  • Den geänderten Ausdruck abspeichern.
  • Auf der linken Seite ein zweites mal auf "Save" klicken.

Es kann bis zu einer Stunde dauern, bis die Änderung wirksam wird. Die Discovery rule "File system for discovery" wird defaultmäßg nur einmal Stündlich ausgeführt. Das sollte auch nicht geändert werden.

Server duplizieren

  • Auf Host 1 läuft ein Zabbix-Server
mysqldump -p zabbix > zabbix.sql
  • Auf Host 2 ist der Zabbix-Server installiert, aber noch nicht konfiguriert.
mysql -u root -p < zabbix.conf

Da die Userverwaltung auch aus der zabbix-DB kommt, loggt mensch sich mit den Passwörtern der alten Installation ein.

Problem: konsitent halten

Mal drüber nachdenken.

  • Datenbank automatisch dumpen, Dump auf die andere Maschine kopieren und einspielen.

Damit werden Änderungen auf Maschine 1 automatisch auch auf Maschine 2 übernommen.
Schauen, welche Tabellen aus der Datenbank gesynct werden sollen, da die Maschine 2 auch in allen agents und proxys als Zabbix-Server eingerichtet sein muss, damit sie Sinn macht. Dadurch hat sie den gleichen Datenbestand wie Maschine 1, vorausgesetzt, die Konfiguration ist die selbe.

Best Practice

Zu viele Warnungen

Mache Trigger nerven einfach.
Z.B. Disk I/O is overloaded on.... hört sich anfangs schlimm an. Ist es aber nicht.
Zu viele Warnungen führen zu nachlassender Aufmerksamkeit, deshalb sollte das System so eingestellt werden, dass es nur wichtige Warnungen rausschickt. Das ist eine Gradwanderung zwischen zu viel Informationen und Wichtiges nicht bemerkt.

Mensch kann den Item abschalten, dann werden die Daten nicht mehr gesammelt.
Oder, besser, den Trigger selber. Dann werden z.B. keine Warnmails mehr rausgeschickt, aber die Daten lassen sich im Webfrontend trotzdem einsehen.

Unter Umständen ist es sinnvoller, den Trigger anzupassen.
Z.B., wenn eine root-Partition immer einen Füllstand um die 80 Prozent hat. Da kann Logrotate schon zu einer Mailflut führen, da der Default-Trigger bei 80% Warnungen rausschickt. Einfach den Default-Trigger Free disk space is less than 20% on volume / durch XYZ: Free disk space is less than 10% on volume / ersetzen.

Links

Repository

http://repo.zabbixzone.com/

Viele Infos

http://lab4.org/wiki/Hauptseite




  1. Definitionsproblem

Knoten, Hardwarenode, usw. sind verschiedene Begriffe für die selbe Sache: Ein Host, der Trägersystem für virtuelle Hosts ist. Nur nennt es jeder Anbieter anders.