Zabbix Monitoring Installation auf Ubuntu – Schritt-für-Schritt | Enjyn Gruppe
Hallo Welt
→
→
Hallo Welt
Original Lingva Deutsch
Übersetzung wird vorbereitet...
Dieser Vorgang kann bis zu 60 Sekunden dauern.
Diese Seite wird erstmalig übersetzt und dann für alle Besucher gespeichert.
0%
DE Zurück zu Deutsch
Übersetzung durch Lingva Translate

330 Dokumentationen verfügbar

Wissensdatenbank

Zabbix Monitoring Installation Anleitung

Zuletzt aktualisiert: 14.07.2026 um 12:29 Uhr

Zabbix Monitoring Installation auf Ubuntu – Schritt-für-Schritt

Was ist Zabbix?

Zabbix ist eine Enterprise-Grade Monitoring-Lösung für Infrastruktur-Überwachung. Es kombiniert agentenloses Monitoring (SNMP, HTTP, ICMP) mit Agent-basiertem Monitoring für tiefere Einblicke in Systemmetriken, Logdateien und benutzerdefinierten Checks.

Architektur-Komponenten

  • Zabbix Server: Zentrale Komponente, verarbeitet Daten, triggert Alarme
  • Zabbix Proxy: Optional für dezentrale Überwachung großer Netzwerke
  • Zabbix Agent: Läuft auf zu überwachenden Hosts, sammelt Metriken
  • Zabbix Frontend: Web-Interface für Konfiguration und Dashboards
  • Datenbank: MySQL/PostgreSQL zur Speicherung von Metriken und Konfiguration
💡 Tipp: Zabbix benötigt mehr Ressourcen als Prometheus, bietet aber mehr Features wie Service Mapping und Complex Triggers out-of-the-box.

Installation auf Ubuntu 22.04

Schritt 1: Repository und Pakete hinzufügen

sudo apt update
sudo apt install -y wget gnupg2

# Zabbix-Repository-Paket für Ubuntu 22.04
wget https://repo.zabbix.com/zabbix-release/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1+ubuntu22.04_all.deb
sudo dpkg -i zabbix-release_7.0-1+ubuntu22.04_all.deb

sudo apt update

Schritt 2: Notwendige Komponenten installieren

sudo apt install -y \
  zabbix-server-mysql \
  zabbix-frontend-php \
  zabbix-apache-conf \
  zabbix-sql-scripts \
  zabbix-agent2 \
  mysql-server \
  php-mysql \
  php-gd \
  php-bcmath \
  php-net-socket \
  php-mbstring

Schritt 3: MySQL-Datenbank einrichten

sudo mysql -u root << 'EOF'
CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'zabbix_password_123';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
FLUSH PRIVILEGES;
EXIT;
EOF
⚠️ Wichtig: Das Standard-Passwort "zabbix_password_123" muss unbedingt in Produktionsumgebungen geändert werden!

Schritt 4: SQL-Schema importieren

sudo zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbix -p zabbix
# Passwort eingeben: zabbix_password_123

Schritt 5: Zabbix Server konfigurieren

Datei: /etc/zabbix/zabbix_server.conf

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix_password_123
DBPort=3306

ListenPort=10051
LogFile=/var/log/zabbix/zabbix_server.log
PidFile=/var/run/zabbix/zabbix_server.pid
DebugLevel=3
MaxHousekeeperDelete=5000
CacheSize=256M
HistoryCacheSize=32M
HistoryIndexCacheSize=8M
TrendCacheSize=16M
ValueCacheSize=32M

# Für Performance-Optimierung bei vielen Hosts
StartPollers=10
StartUnreachablePollers=2
StartTrappers=5
StartPingers=4

Schritt 6: PHP für Zabbix konfigurieren

Datei: /etc/php/8.1/fpm/conf.d/99-zabbix.ini oder /etc/php/8.1/apache2/conf.d/99-zabbix.ini

max_execution_time = 300
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M
date.timezone = "Europe/Berlin"

Schritt 7: Services starten und aktivieren

sudo systemctl start mysql
sudo systemctl start zabbix-server
sudo systemctl start zabbix-agent2
sudo systemctl start apache2

# Beim Booten starten
sudo systemctl enable mysql zabbix-server zabbix-agent2 apache2

Schritt 8: Web-Setup-Wizard

Öffnen Sie: http://localhost/zabbix

Der Wizard führt Sie durch:

  • Check der PHP-Einstellungen
  • Datenbank-Verbindung (localhost, zabbix, zabbix_password_123, zabbix)
  • Server-Details
  • Admin-Benutzer-Einrichtung (Standard: Admin/zabbix)
✅ Gut zu wissen: Nach erfolgreichem Setup wird die Datei /etc/zabbix/web/zabbix.conf.php automatisch erstellt. Diese nicht manuell bearbeiten.

Ersten Host mit Zabbix Agent hinzufügen

Agent auf dem zu überwachenden Host installieren

# Auf dem Client-Host (z.B. webserver.example.com)
sudo apt install -y zabbix-agent2

# Konfiguration: /etc/zabbix/zabbix_agent2.conf
Server=zabbix-server.example.com  # IP oder Hostname des Zabbix-Servers
ListenPort=10050
Hostname=webserver-01              # Muss im Zabbix-Frontend konfiguriert werden

sudo systemctl start zabbix-agent2
sudo systemctl enable zabbix-agent2

Host im Frontend hinzufügen

  1. Zabbix Web-UI öffnen → Data Collection → Hosts
  2. Click "Create Host"
  3. Host name: webserver-01
  4. Visible name: Web Server 01
  5. Host groups: Linux servers
  6. Agent interfaces: IP 192.168.1.100, Port 10050
  7. Templates: Und dann "Linux by Zabbix agent" Template auswählen
  8. Save

Einfacher Availability Trigger erstellen

Im Frontend:

  1. Monitoring → Hosts → webserver-01
  2. Tab "Triggers" → Create trigger
  3. Name: "Host webserver-01 is down"
  4. Severity: High
  5. Expression: {webserver-01:agent.ping.nodata(3m)}=1
  6. Diese Expression triggert wenn der Agent 3 Minuten keine Daten sendet
  7. Save

Verfügbarkeit überprüfen

# Im Zabbix Frontend oder per API
curl -X POST http://localhost/api_jsonrpc.php \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"trigger.get","params":{"filter":{"host":"webserver-01"}},"auth":"YOUR_AUTH_TOKEN","id":1}'

Features-Vergleich: Zabbix vs. Prometheus/Grafana

Feature Zabbix Prometheus Grafana
Monitoring & Alerting ✅ Built-in ✅ Built-in Externe Systeme
Visualisierung Eingebaut (basic) ⚠️ Keine Dashboards ✅ Hervorragend
Discovery ✅ LLD (Low Level Discovery) Service Discovery ⚠️ Keine
SNMP Support ✅ Native ⚠️ Exporter nötig ⚠️ Keine
Komplexe Trigger ✅ Very flexible AlertManager ⚠️ Keine
Datenspeicherung Database (SQL) Time-Series DB Keine
Lernkurve Mittel Steil Flach

Wann sollte Zabbix verwendet werden?

  • Traditionelle Infrastruktur (viele Legacy-Geräte, SNMP)
  • Schnelle All-in-One-Lösung mit Monitoring + Alerting
  • Agentenloses Monitoring für viele Hosts
  • Komplexe Abhängigkeiten und Service Dependencies

Wann ist Prometheus + Grafana besser?

  • Cloud-native / Kubernetes-Umgebung
  • Microservices mit Prometheus-Libraries
  • Schlanke Ressourcen-Nutzung erforderlich
  • Custom Dashboards mit maximaler Flexibilität

Häufige Probleme und Lösungen

Problem: Agent zeigt "Unknown" Status

# Agent-Konnektivität testen
zabbix_get -s 192.168.1.100 -p 10050 -k agent.ping

# Firewall-Regel prüfen
sudo ufw allow 10050/tcp

# Agent-Log prüfen
sudo tail -f /var/log/zabbix/zabbix_agent2.log

Problem: Datenbank zu groß

Nutzen Sie das Housekeeper-Feature in Zabbix Web-UI:

  • Administration → General → Housekeeping
  • History retention: 30 Tage (default)
  • Trends retention: 365 Tage
  • Events retention: 60 Tage

Verwandte Artikel

Texterstellung mit KI-Unterstützung

Enjix Beta

Enjyn AI Agent

Hallo 👋 Ich bin Enjix — wie kann ich dir helfen?
LLMs können Fehler machen. Ihre Nachrichten werden an Google Gemini weitergeleitet.
120