dj-wasabi.zabbix-proxy

Spis treści

Przegląd

Ta rola została przeniesiona do: https://github.com/ansible-collections/community.zabbix/ W tym repozytorium będzie dostępna wersja tylko do odczytu dla tych, którzy nie mogą jeszcze korzystać z kolekcji. Zmiany/aktualizacje będą stosowane tylko w kolekcji, a nie w tym repozytorium.

Aktualizacje

1.0.0

W wydaniu 1.0.0 nastąpiły następujące zmiany:

  • Wszystkie właściwości zaczynają się teraz od zabbix_. Na przykład, właściwość o nazwie proxy_dbhost nazywa się teraz zabbix_proxy_dbhost.

Systemy operacyjne

Ta rola działa na następujących systemach operacyjnych:

  • Red Hat
  • Debian
  • Ubuntu

Więc potrzebujesz jednego z tych systemów... :-) Proszę przesyłać prośby o włączenie lub sugestie, jeśli chcesz użyć tej roli dla innych systemów operacyjnych.

Wersje Zabbix

Zobacz poniższą listę obsługiwanych systemów operacyjnych z wersjami Zabbix.

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

Zmienne roli

Główne zmienne

Istnieje kilka zmiennych w pliku default/main.yml, które można (lub należy) zmienić/zmodyfikować:

  • zabbix_server_host: Adres IP lub nazwa DNS serwera Zabbix.

  • zabbix_server_port: Port, na którym działa serwer Zabbix. Domyślnie: 10051

  • zabbix_version: Wersja Zabbix. Domyślnie to 4.2, ale można ją zmienić na 4.0/3.4/3.2/3.0/2.4/2.2.

  • zabbix_proxy_{rhel,debian,ubuntu}_version: Wersja proxy Zabbix. Na przykład 4.4.4/4.2.5/4.2.8

  • zabbix_repo: Prawda / Fałsz. Jeśli już masz repozytorium z komponentami Zabbix, możesz ustawić to na Fałsz.

  • *zabbix_proxy_package_state: Domyślnie: obecny. Można zmienić na "największy", aby zaktualizować pakiety w razie potrzeby.

  • zabbix_proxy_install_database_client: Prawda / Fałsz. Fałsz nie instaluje klienta bazy danych. Domyślnie: Prawda.

  • zabbix_agent_become_on_localhost: Ustaw na Fałsz, jeśli nie potrzebujesz podnosić uprawnień na localhost do lokalnej instalacji pakietów z użyciem pip. Domyślnie: Prawda.

  • zabbix_proxy_manage_service: Prawda / Fałsz. Gdy uruchamiasz wiele proxy Zabbix w konfiguracji o wysokiej dostępności (np. pacemaker), nie chcesz, aby Ansible zarządzał usługą proxy Zabbix, ponieważ Pacemaker kontroluje tę usługę.

  • zabbix_install_pip_packages: Ustaw na Fałsz, jeśli nie chcesz instalować wymaganych pakietów pip. Przydatne, gdy całkowicie kontrolujesz swoje środowisko. Domyślnie: Prawda.

Są także zmienne specyficzne dla proxy Zabbix, które będą używane w pliku konfiguracyjnym proxy Zabbix. Można je znaleźć w pliku default/main.yml. Oto 2, które wymagają wyjaśnienia:

  #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

Obsługiwane są 3 typy baz danych: mysql/postgresql i sqlite. Należy skomentować lub odkomentować bazę danych, którą chcesz użyć. W przykładzie powyżej używana jest baza danych postgresql. Jeśli chcesz użyć mysql, odkomentuj 2 linie dotyczące mysql i skomentuj 2 linie dla postgresql.

Jeśli używasz mysql, powinieneś zdefiniować nazwę użytkownika mysql, hasło i host, aby przygotować bazę danych Zabbix, w przeciwnym razie będą one uważane za domyślne wartości (a połączenie z bazą danych będzie traktowane jako połączenie do localhost bez hasła). Klucze to: zabbix_proxy_mysql_login_host zabbix_proxy_mysql_login_user zabbix_proxy_mysql_login_password

Specyficzne konfiguracje TLS

Te zmienne są specyficzne dla Zabbix 3.0 i wyższych:

  • *zabbix_proxy_tlsconnect: Jak proxy powinno łączyć się z serwerem lub innym proxy. Używane do aktywnych kontroli.

    Możliwe wartości:

    • no_encryption
    • PSK
    • certificate
  • *zabbix_proxy_tlsaccept: Jakie przychodzące połączenia zaakceptować.

    Możliwe wartości:

    • no_encryption
    • PSK
    • certificate
  • *zabbix_proxy_tlscafile: Pełna ścieżka do pliku zawierającego główne certyfikaty CA do weryfikacji certyfikatów peer.

  • *zabbix_proxy_tlscrlfile: Pełna ścieżka do pliku zawierającego unieważnione certyfikaty.

  • *zabbix_proxy_tlsservercertissuer: Dozwolony wydawca certyfikatu serwera.

  • *zabbix_proxy_tlsservercertsubject: Dozwolony temat certyfikatu serwera.

  • *zabbix_proxy_tlscertfile: Pełna ścieżka do pliku zawierającego certyfikat agenta lub łańcuch certyfikatów.

  • *zabbix_proxy_tlskeyfile: Pełna ścieżka do pliku zawierającego prywatny klucz agenta.

  • *zabbix_proxy_tlspskidentity: Unikalny, wrażliwy na wielkość liter ciąg używany do identyfikacji klucza wstępnie udostępnionego.

Zmienne API Zabbix

Te zmienne muszą być zmienione, gdy chcesz korzystać z API Zabbix do automatycznego tworzenia i aktualizacji hostów.

Konfiguracja szyfrowania hosta zostanie ustawiona tak, aby odpowiadała konfiguracji agenta.

Gdy zabbix_api_create_proxy jest ustawione na Prawda, zainstaluje na hoście wykonującym playbook Ansible moduł zabbix-api w Pythonie.

  • zabbix_url: URL, pod którym dostępna jest strona Zabbix. Na przykład: http://zabbix.example.com

  • zabbix_api_http_user: Użytkownik HTTP do uzyskania dostępu do URL Zabbix za pomocą Basic Auth

  • zabbix_api_http_password: Hasło HTTP do uzyskania dostępu do URL Zabbix za pomocą Basic Auth

  • zabbix_api_create_proxy: Gdy chcesz włączyć API Zabbix do tworzenia/usuwania proxy. Należy to ustawić na Prawda, jeśli chcesz korzystać z zabbix_create_proxy. Domyślnie: Fałsz

  • zabbix_api_user: Nazwa użytkownika, który ma dostęp do API.

  • zabbix_api_pass: Hasło dla użytkownika, który ma dostęp do API.

  • zabbix_create_proxy: obecny (domyślnie) jeśli proxy ma być utworzone lub nieobecny, jeśli chcesz je usunąć. Działa to tylko wtedy, gdy zabbix_api_create_proxy jest ustawione na Prawda.

  • zabbix_proxy_status: aktywny (domyślnie), jeśli proxy ma być aktywne, lub pasywny.

Zależności

Musisz samodzielnie znaleźć odpowiednią rolę bazy danych. Chcę używać tylko ról, które wspierają 3 główne systemy operacyjne i jak na razie nie mogę takiej znaleźć. Jeśli jest rola, która obsługuje te 3 systemy operacyjne, daj mi znać, a wykorzystam ją jako zależność.

Przykładowy playbook

Zawsze miło jest dołączyć przykład użycia twojej roli (na przykład z przekazywaniem zmiennych jako parametrów):

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

Licencja

GPLv3

Informacje o autorze

To moja pierwsza próba stworzenia roli ansible, więc proszę o przesyłanie sugestii lub pull requestów, aby poprawić tę rolę.

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

mail: ikben [ at ] werner-dijkerman . nl

O projekcie

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

Zainstaluj
ansible-galaxy install dj-wasabi.zabbix-proxy
Licencja
mit
Pobrania
70.9k
Właściciel
DevOps Engineer, Technical reviewer Packt Pub / Manning / BPB Online / O'Reilly Media