Zabbix: Unterschied zwischen den Versionen

Aus Glaskugel
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(12 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Category:unsere eigenen Systeme nutzen/pflegen/warten]]
===Pfad zu eigenen Scripten===
===Pfad zu eigenen Scripten===
:/usr/lib/zabbix/externalscripts/
:/usr/lib/zabbix/externalscripts/
Zeile 5: Zeile 6:
:<code>chmod +x /usr/lib/zabbix/externalscripts/check_dnsbl.sh</code>
:<code>chmod +x /usr/lib/zabbix/externalscripts/check_dnsbl.sh</code>


===Das Zabbix Installationsverzeichnis via pdsh auf einen Server kopieren===
===Das Zabbix Installationsverzeichnis via pdsh auf EINEN Server kopieren===
:;Als User root auf der pdsh für z.B. Managed Server anmelden
:;Als User root auf der pdsh für z.B. Managed Server anmelden
::Nicht vergessen: '''Anmeldung via PublicKey'''
::Nicht vergessen: '''Anmeldung via PublicKey'''


:;Folgender Befehl kopiert das Zabbix Verzeichnis auf einen Zielcontainer:
:;Folgender Befehl kopiert das Zabbix Verzeichnis auf einen Zielcontainer:
::<code>rsync -arvuP -e ssh /root/zabbix_bereitstellung/ root@'''####.onlineshophosting.de''':/root/zabbix_bereitstellung</code>
::<code>rsync -arvuP -e ssh /root/shabbix_dus/ root@'''####.onlineshophosting.de''':/root/shabbix_dus</code>
 
===Das Zabbix Installationsverzeichnis via pdsh auf ALLE Server kopieren===
:;Schritt 1
::Das Zabbix Installationsverzeichnis auf den Server hosting.estugo.de in folgendes Verzeichnis legen: /var/www/vhosts/web2.hosting.hostkraft.de/html/estugo/files/scripts/
::Dort den ordner in ein .zip Verzeichnis packen
:::Tendenziell wäre die Datei nun also über das WorldWideWeb erreichbar unter https://www.estugo.de/files/scripts/shabbix.zip
:::Das Verzeichnis ist natürlich Passwort geschützt
 
:;Schritt 2
::Das gezippte Verzeichnis (vielmehr die File) kann nun via PDSh auf beliebig viele Server in das Verzeichnis /root geladen werden mit folgendem Befehl
::<code>pdsh -w ^/etc/pdsh/hosts "wget --user=Shopbenutzer12 --password='9k2aS2s' -P /root/ <nowiki>https://www.estugo.de/files/scripts/shabbix.zip</nowiki>"</code>
:::Wer genau hinschaut, erkennt die Passworteingabe
 
:;Schritt 3
::Entpacken der .zip File via
::<code>pdsh -w ^/etc/pdsh/hosts "unzip /root/shabbix.zip"</code>


===Den Zabbix-Agent auf einem Host installieren===
===Den Zabbix-Agent auf einem Host installieren===
:;Leider funktioniert die Installation nicht via Login über die pdsh, sondern Du musst Dich auf dem Zielserver einloggen
:;Leider funktioniert die Installation nicht via Login über die pdsh, sondern Du musst Dich auf dem Zielserver einloggen
::- Verbinde Dich via SSH mit dem Zielhost und melde Dich als User root an
::- Verbinde Dich via Putty mit dem Zielhost und melde Dich als User root an
::- Wechsele in das Zabbix-Verzeichnis
::- Wechsele in das Zabbix-Verzeichnis && führe das Installationsscript aus
:::<code>cd /root/zabbix_bereitstellung</code>
:::<code>cd /root/shabbix_dus && bash AddNodeToZabbix.sh</code>
::- Führe das Installationsscript aus:
:;Den Server findest Du nun in Zabbix unter<nowiki>:</nowiki> Inventory -> Hosts
:::<code>bash AddNodeToZabbix.sh</code>
 
:;Der Server taucht nun in Zabbix auf unter Inventory -> Hosts
===Den zabbix-agent Check für MySQL verwenden===
:;Für das MySQL-Template muss in der Datenbank ein User angelegt werden, sowie die Zugangdaten für den Zabbix-User hinterlegt werden.<br>
:Dieses ist mit 3 einfachen Schritten erledigt.<br>
:;Schritt 1
::Homedir anlegen
::<code>install -o zabbix -g zabbix -m 0750 -d ~zabbix</code>
:;Schritt 2
::Zugangdaten zur Datenbank für zabbix hinterlegen
::<code>echo -e "[client]\nuser=zabbix\npassword=GANZGEHEIM" >~zabbix/.my.cnf</code>
:;Schritt 3
::User in der Datenbank anlegen
::<code>plesk db "grant usage on *.* to 'zabbix'@'localhost' identified by 'GANZGEHEIM';"</code>
 
:;Diese drei Schritte (inkl. Passwort) habe ich in ein kleines Script gepackt, welches Du auf unserem hauseigenen Repo wie folgt beziehen kannst:
::<code>wget --user=Shopbenutzer12 --password='9k2aS2s' -P /root/ <nowiki>https://www.estugo.de/files/scripts/zabbixsql.zip</nowiki></code>
::- Entpacke die zip File nun auf dem Zielsystem (Du bekommst nun die Datei ''zabbixmysqlconfig.sh''
::- Mache das Script mit <code>chmod +x /root/zabbixmysqlconfig.sh</code> ausführbar
 
:;Leider ist die Datei ''userparameter_mysql.conf'', die mit zabbix ausgeliefert wird, nicht korrekt. Du musst Sie anpassen, indem Du ein "-s" an der richtigen Stelle setzt
::<code>mcedit /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf</code>
::''UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin '''-s''' ping | grep -c alive''
 
:;Möchtest Du die Datei auf mehreren Servern ausrollen, kannst Du Sie, in der bereits korrekten Form, auch über unser "hauseigenen Repo" wie folgt beziehen:
::- Es ist bereits der richtige Pfad auf dem Ziel in diesem Code angegeben
::<code>wget --user=Shopbenutzer12 --password='9k2aS2s' -P /etc/zabbix/zabbix_agentd.d/ <nowiki>https://www.estugo.de/files/scripts/userparameter_mysql.conf</nowiki></code>
::- Bedenke, dass Du die Datei natürlich '''zuvor''' vom Ziel entfernen musst
::<code>rm -f /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf</code>

Aktuelle Version vom 17. Januar 2020, 12:51 Uhr

Pfad zu eigenen Scripten

/usr/lib/zabbix/externalscripts/
Nicht vergessen, hinterher das Script ausführbar machen (Hier im Beispiel das Script check_dnsbl.sh)
chmod +x /usr/lib/zabbix/externalscripts/check_dnsbl.sh

Das Zabbix Installationsverzeichnis via pdsh auf EINEN Server kopieren

Als User root auf der pdsh für z.B. Managed Server anmelden
Nicht vergessen: Anmeldung via PublicKey
Folgender Befehl kopiert das Zabbix Verzeichnis auf einen Zielcontainer
rsync -arvuP -e ssh /root/shabbix_dus/ root@####.onlineshophosting.de:/root/shabbix_dus

Das Zabbix Installationsverzeichnis via pdsh auf ALLE Server kopieren

Schritt 1
Das Zabbix Installationsverzeichnis auf den Server hosting.estugo.de in folgendes Verzeichnis legen: /var/www/vhosts/web2.hosting.hostkraft.de/html/estugo/files/scripts/
Dort den ordner in ein .zip Verzeichnis packen
Tendenziell wäre die Datei nun also über das WorldWideWeb erreichbar unter https://www.estugo.de/files/scripts/shabbix.zip
Das Verzeichnis ist natürlich Passwort geschützt
Schritt 2
Das gezippte Verzeichnis (vielmehr die File) kann nun via PDSh auf beliebig viele Server in das Verzeichnis /root geladen werden mit folgendem Befehl
pdsh -w ^/etc/pdsh/hosts "wget --user=Shopbenutzer12 --password='9k2aS2s' -P /root/ https://www.estugo.de/files/scripts/shabbix.zip"
Wer genau hinschaut, erkennt die Passworteingabe
Schritt 3
Entpacken der .zip File via
pdsh -w ^/etc/pdsh/hosts "unzip /root/shabbix.zip"

Den Zabbix-Agent auf einem Host installieren

Leider funktioniert die Installation nicht via Login über die pdsh, sondern Du musst Dich auf dem Zielserver einloggen
- Verbinde Dich via Putty mit dem Zielhost und melde Dich als User root an
- Wechsele in das Zabbix-Verzeichnis && führe das Installationsscript aus
cd /root/shabbix_dus && bash AddNodeToZabbix.sh
Den Server findest Du nun in Zabbix unter: Inventory -> Hosts

Den zabbix-agent Check für MySQL verwenden

Für das MySQL-Template muss in der Datenbank ein User angelegt werden, sowie die Zugangdaten für den Zabbix-User hinterlegt werden.
Dieses ist mit 3 einfachen Schritten erledigt.
Schritt 1
Homedir anlegen
install -o zabbix -g zabbix -m 0750 -d ~zabbix
Schritt 2
Zugangdaten zur Datenbank für zabbix hinterlegen
echo -e "[client]\nuser=zabbix\npassword=GANZGEHEIM" >~zabbix/.my.cnf
Schritt 3
User in der Datenbank anlegen
plesk db "grant usage on *.* to 'zabbix'@'localhost' identified by 'GANZGEHEIM';"
Diese drei Schritte (inkl. Passwort) habe ich in ein kleines Script gepackt, welches Du auf unserem hauseigenen Repo wie folgt beziehen kannst
wget --user=Shopbenutzer12 --password='9k2aS2s' -P /root/ https://www.estugo.de/files/scripts/zabbixsql.zip
- Entpacke die zip File nun auf dem Zielsystem (Du bekommst nun die Datei zabbixmysqlconfig.sh
- Mache das Script mit chmod +x /root/zabbixmysqlconfig.sh ausführbar
Leider ist die Datei userparameter_mysql.conf, die mit zabbix ausgeliefert wird, nicht korrekt. Du musst Sie anpassen, indem Du ein "-s" an der richtigen Stelle setzt
mcedit /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin -s ping | grep -c alive
Möchtest Du die Datei auf mehreren Servern ausrollen, kannst Du Sie, in der bereits korrekten Form, auch über unser "hauseigenen Repo" wie folgt beziehen
- Es ist bereits der richtige Pfad auf dem Ziel in diesem Code angegeben
wget --user=Shopbenutzer12 --password='9k2aS2s' -P /etc/zabbix/zabbix_agentd.d/ https://www.estugo.de/files/scripts/userparameter_mysql.conf
- Bedenke, dass Du die Datei natürlich zuvor vom Ziel entfernen musst
rm -f /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf