dj-wasabi.zabbix-proxy

Inhaltsverzeichnis

Build-Status

Übersicht

Diese Rolle wurde migriert zu: https://github.com/ansible-collections/community.zabbix/ In diesem Repository wird eine schreibgeschützte Version verfügbar sein für diejenigen, die Collections (noch) nicht verwenden können. Änderungen/Updates werden nur auf die Collection angewendet und nicht in diesem Repository.

Updates

1.0.0

Mit diesem Release 1.0.0 wurde Folgendes geändert:

  • Alle Eigenschaften beginnen jetzt mit zabbix_. Zum Beispiel, die Eigenschaft proxy_dbhost ist jetzt zabbix_proxy_dbhost.

Betriebssysteme

Diese Rolle funktioniert auf den folgenden Betriebssystemen:

  • Red Hat
  • Debian
  • Ubuntu

Sie benötigen also eines dieser Betriebssysteme.. :-) Bitte senden Sie Pull Requests oder Vorschläge, wenn Sie diese Rolle für andere Betriebssysteme verwenden möchten.

Zabbix-Versionen

Siehe die folgende Liste der unterstützten Betriebssysteme mit den Zabbix-Versionen.

Zabbix 4.4

  • CentOS 7.x, 8.x
  • Amazon 7.x
  • RedHat 7.x, 8.x
  • OracleLinux 7.x, 8.x
  • Scientific Linux 7.x, 8.x
  • Ubuntu 14.04, 16.04, 18.04
  • Debian 8, 9

Zabbix 4.2

  • CentOS 7.x
  • Amazon 7.x
  • RedHat 7.x
  • OracleLinux 7.x
  • Scientific Linux 7.x
  • Ubuntu 14.04, 16.04, 18.04
  • Debian 8, 9

Zabbix 4.0

  • CentOS 7.x
  • Amazon 7.x
  • RedHat 7.x
  • OracleLinux 7.x
  • Scientific Linux 7.x
  • Ubuntu 14.04, 16.04, 18.04
  • Debian 8, 9

Zabbix 3.4

  • CentOS 7.x
  • Amazon 7.x
  • RedHat 7.x
  • OracleLinux 7.x
  • Scientific Linux 7.x
  • Ubuntu 14.04, 16.04
  • Debian 7, 8, 9

Zabbix 3.2

  • CentOS 7.x
  • Amazon 7.x
  • RedHat 7.x
  • OracleLinux 7.x
  • Scientific Linux 7.x
  • Ubuntu 14.04, 16.04
  • Debian 7, 8

Zabbix 3.0

  • CentOS 5.x, 6.x, 7.x
  • Amazon 5.x, 6.x, 7.x
  • RedHat 5.x, 6.x, 7.x
  • OracleLinux 5.x, 6.x, 7.x
  • Scientific Linux 5.x, 6.x, 7.x
  • Ubuntu 14.04
  • Debian 7, 8

Zabbix 2.4

  • CentOS 6.x, 7.x
  • Amazon 6.x, 7.x
  • RedHat 6.x, 7.x
  • OracleLinux 6.x, 7.x
  • Scientific Linux 6.x, 7.x
  • Ubuntu 12.04, 14.04
  • Debian 7

Zabbix 2.2

  • CentOS 5.x, 6.x
  • RedHat 5.x, 6.x
  • OracleLinux 5.x, 6.x
  • Scientific Linux 5.x, 6.x
  • Ubuntu 12.04
  • Debian 7

Rollenvariablen

Hauptvariablen

Es gibt einige Variablen in der default/main.yml, die geändert oder überschrieben werden können (oder müssen):

  • zabbix_server_host: Die IP-Adresse oder der DNS-Name für den Zabbix-Server.

  • zabbix_server_port: Der Port, auf dem der Zabbix-Server läuft. Standard: 10051

  • zabbix_version: Dies ist die Version von Zabbix. Standardmäßig ist es 4.2, kann aber auf 4.0/3.4/3.2/3.0/2.4/2.2 überschrieben werden.

  • zabbix_proxy_{rhel,debian,ubuntu}_version: Dies ist die Version des Zabbix-Proxy. Zum Beispiel 4.4.4/4.2.5/4.2.8

  • zabbix_repo: Wahr / Falsch. Wenn Sie bereits ein Repository mit den Zabbix-Komponenten haben, können Sie es auf Falsch setzen.

  • *zabbix_proxy_package_state: Standard: present. Kann auf „latest“ geändert werden, um Pakete bei Bedarf zu aktualisieren.

  • zabbix_proxy_install_database_client: Wahr / Falsch. Falsch installiert den Datenbank-Client nicht. Standard: Wahr.

  • zabbix_agent_become_on_localhost: Auf Falsch setzen, wenn Sie keine Berechtigungen auf localhost erhöhen müssen, um Pakete lokal mit pip zu installieren. Standard: Wahr

  • zabbix_proxy_manage_service: Wahr / Falsch. Wenn Sie mehrere Zabbix-Proxy-Instanzen in einem hochverfügbaren Cluster-Setup (z. B. Pacemaker) ausführen, möchten Sie nicht, dass Ansible den Zabbix-Proxy-Dienst verwaltet, da Pacemaker die Kontrolle über den Zabbix-Proxy-Dienst hat.

  • zabbix_install_pip_packages: Auf Falsch setzen, wenn Sie die erforderlichen Pip-Pakete nicht installieren möchten. Nützlich, wenn Sie Ihre Umgebung vollständig kontrollieren. Standard: Wahr

Es gibt einige spezifische Variablen für den Zabbix-Proxy, die für die Konfigurationsdatei des Zabbix-Proxys verwendet werden. Diese finden Sie in der default/main.yml-Datei. Es gibt 2, die etwas Erklärung benötigen:

  #zabbix_proxy_database: mysql
  #zabbix_proxy_database_long: mysql
  #zabbix_proxy_database: sqlite3
  #zabbix_proxy_database_long: sqlite3
  zabbix_proxy_database: pgsql
  zabbix_proxy_database_long: postgresql

Es gibt 3 unterstützte Datenbanktypen: mysql/postgresql und sqlite. Sie müssen die Datenbank, die Sie verwenden möchten, auskommentieren oder einkommentieren. Im obigen Beispiel wird die PostgreSQL-Datenbank verwendet. Wenn Sie MySQL verwenden möchten, kommentieren Sie die 2 Zeilen von MySQL ein und die 2 Zeilen für PostgreSQL aus.

Wenn Sie MySQL verwenden, sollten Sie den MySQL-Benutzernamen, das Passwort und den Host definieren, um die Zabbix-Datenbank vorzubereiten, andernfalls werden sie als ihre Standardwerte betrachtet (und damit wird der Verbindung zur Datenbank als Verbindung zu localhost ohne Passwort betrachtet). Die Schlüssel sind: zabbix_proxy_mysql_login_host zabbix_proxy_mysql_login_user zabbix_proxy_mysql_login_password

TLS-spezifische Konfiguration

Diese Variablen sind spezifisch für Zabbix 3.0 und höher:

  • *zabbix_proxy_tlsconnect: Wie sich der Proxy mit Server oder Proxy verbinden soll. Wird für aktive Überprüfungen verwendet.

    Mögliche Werte:

    • keine Verschlüsselung
    • PSK
    • Zertifikat
  • *zabbix_proxy_tlsaccept: Welche eingehenden Verbindungen akzeptiert werden sollen.

    Mögliche Werte:

    • keine Verschlüsselung
    • PSK
    • Zertifikat
  • *zabbix_proxy_tlscafile: Vollständiger Pfad zu einer Datei, die die Zertifikate der übergeordneten CA(s) für die Überprüfung des Peer-Zertifikats enthält.

  • *zabbix_proxy_tlscrlfile: Vollständiger Pfad zu einer Datei, die widerrufene Zertifikate enthält.

  • *zabbix_proxy_tlsservercertissuer: Zulässiger Aussteller für Serverzertifikate.

  • *zabbix_proxy_tlsservercertsubject: Zulässiger Betreff für Serverzertifikate.

  • *zabbix_proxy_tlscertfile: Vollständiger Pfad zu einer Datei, die das Agentenzertifikat oder die Zertifikatskette enthält.

  • *zabbix_proxy_tlskeyfile: Vollständiger Pfad zu einer Datei, die den privaten Schlüssel des Agenten enthält.

  • *zabbix_proxy_tlspskidentity: Eindeutiger, groß-/kleinschreibungssensitiver String zur Identifizierung des gemeinsam genutzten Schlüssels.

Zabbix-API-Variablen

Diese Variablen müssen überschrieben werden, wenn Sie die Zabbix-API verwenden möchten, um Hosts automatisch zu erstellen und/oder zu aktualisieren.

Die Verschlüsselungskonfiguration für Hosts wird so eingestellt, dass sie mit der Agentenkonfiguration übereinstimmt.

Wenn zabbix_api_create_proxy auf Wahr gesetzt ist, wird das zabbix-api Python-Modul auf dem Host installiert, der das Ansible-Playbook ausführt.

  • zabbix_url: Die URL, unter der die Zabbix-Webseite verfügbar ist. Beispiel: http://zabbix.example.com

  • zabbix_api_http_user: Der HTTP-Benutzer, um mit Basic Auth auf die Zabbix-URL zuzugreifen

  • zabbix_api_http_password: Das HTTP-Passwort, um mit Basic Auth auf die Zabbix-URL zuzugreifen

  • zabbix_api_create_proxy: Wenn Sie die Zabbix-API aktivieren möchten, um den Proxy zu erstellen/löschen. Dies muss auf Wahr gesetzt werden, wenn Sie zabbix_create_proxy verwenden möchten. Standard: Falsch

  • zabbix_api_user: Benutzername des Benutzers mit API-Zugriff.

  • zabbix_api_pass: Passwort für den Benutzer mit API-Zugriff.

  • zabbix_create_proxy: vorhanden (Standard), wenn der Proxy erstellt werden soll oder abwesend, wenn Sie ihn löschen möchten. Dies funktioniert nur, wenn zabbix_api_create_proxy auf Wahr gesetzt ist.

  • zabbix_proxy_status: aktiv (Standard), wenn der Proxy aktiv oder passiv sein soll.

Abhängigkeiten

Sie müssen die richtige Datenbankrolle selbst finden. Ich möchte nur Rollen verwenden, die die 3 Hauptbetriebssysteme unterstützen, und momentan kann ich keine finden. Wenn es eine Rolle gibt, die diese 3 Betriebssysteme unterstützt, lassen Sie es mich bitte wissen, und ich werde sie als Abhängigkeit verwenden.

Beispiel-Playbook

Es ist immer hilfreich, ein Beispiel dafür zu geben, wie man Ihre Rolle verwendet (zum Beispiel mit Variablen, die als Parameter übergeben werden):

- hosts: zabbix-proxy
  sudo: ja
  roles:
     - { role: dj-wasabi.zabbix-proxy, zabbix_server_host: 192.168.1.1, database_type: pgsql, database_type_long: postgresql }

Lizenz

GPLv3

Autoreninformationen

Dies ist mein erster Versuch, eine Ansible-Rolle zu erstellen. Bitte senden Sie Vorschläge oder Pull Requests, um diese Rolle zu verbessern.

Github: https://github.com/dj-wasabi/ansible-zabbix-proxy

E-Mail: ikben [ at ] werner-dijkerman . nl

Über das Projekt

Installing and maintaining zabbix-proxy for RedHat/Debian/Ubuntu.

Installieren
ansible-galaxy install dj-wasabi.zabbix-proxy
Lizenz
mit
Downloads
70.9k
Besitzer
DevOps Engineer, Technical reviewer Packt Pub / Manning / BPB Online / O'Reilly Media