gmazoyer.netbox

CI Ansible Galaxy

Ansible Rolle: NetBox

Eine Ansible Rolle, die auf Debian/Ubuntu installiert.

Diese Rolle installiert alle Abhängigkeiten, die von NetBox benötigt werden, einschließlich der PostgreSQL-Datenbank. Sie kann verwendet werden, um ein NetBox-Gerät einzurichten, das alles auf demselben Rechner hat.

Web-Backend- und Frontend-Setups können deaktiviert werden, wenn Sie bereits Ihre eigene Methode zur Handhabung haben.

Abhängigkeiten

Keine.

Rollen-Variablen

Verfügbare Variablen sind unten aufgeführt, zusammen mit den Standardwerten:

Einrichtung für die PostgreSQL-Datenbank:

netbox_database: netbox
netbox_database_user: netbox
netbox_database_password: netbox
netbox_database_host: localhost # Dies wird die Einrichtung von PostgreSQL erzwingen

Wo NetBox heruntergeladen werden kann und welche Version:

netbox_version: latest
netbox_git_url: https://github.com/netbox-community/netbox.git

Standardmäßig wird immer die neueste stabile Version heruntergeladen. Eine bestimmte Version kann durch die Verwendung von v3.5.1 beispielsweise erzwungen werden.

Wo NetBox installiert werden soll:

netbox_install_directory: /opt/netbox

Der Benutzername, das Passwort und die E-Mail für den Superbenutzer.

netbox_superuser_username: admin
netbox_superuser_password: admin
netbox_superuser_email: [email protected]

LDAP kann als Authentifizierungsmechanismus verwendet werden. Es muss aktiviert werden, und die gesamte LDAP-Konfiguration muss in den folgenden Variablen bereitgestellt werden (siehe die NetBox Dokumentation):

netbox_setup_ldap_auth: false
netbox_ldap_config: ""

Andere Python-Pakete können mit local_requirements.txt installiert werden, dies ist nützlich, um Pakete wie NAPALM oder Plugins zu installieren:

netbox_local_requirements:
  - napalm

Die Konfiguration für NetBox muss als key: value Paare angegeben werden, wie folgt, bitte beachten Sie, dass der geheime Schlüssel nicht angegeben werden muss, da er automatisch generiert wird:

netbox_config:
  ALLOWED_HOSTS:
    - localhost
    - 127.0.0.1
  TIME_ZONE: "Europe/Paris"

Der Wartungsbefehl wird mit einem systemd-Timer ausgeführt, der täglich um 4:30 Uhr UTC konfiguriert ist. Sie können on_unit_active_sec: 12h anstelle von on_calendar verwenden, um den Wartungsbefehl alle 12 Stunden (zum Beispiel) auszuführen.

netbox_systemd_timers:
  netbox-housekeeping:
    enabled: true
    command: "{{ netbox_virtualenv_path }}/bin/python {{ netbox_install_directory }}/netbox/manage.py housekeeping"
    on_calendar: "*-*-* 4:30:00 UTC"

Konfiguration für den Backend-Webserver und systemd:

netbox_setup_systemd: false
netbox_gunicorn_address: 127.0.0.1
netbox_gunicorn_port: 8001
netbox_gunicorn_workers_number: 5

Ob der Frontend-Webserver konfiguriert werden soll oder nicht:

netbox_setup_web_frontend: false

SSL/TLS-Konfiguration für den Frontend-Webserver:

netbox_web_tls: false
netbox_web_tls_port: 443
# netbox_web_tls_crt: /etc/pki/server.crt
# netbox_web_tls_key: /etc/pki/server.key
# netbox_web_tls_chain:
netbox_web_tls_redirect: false

Beispiel-Playbook

- hosts: netboxes
  roles:
    - { role: gmazoyer.netbox }

Lizenz

Diese Ansible Rolle wird unter den Bedingungen der GNU GPLv3 veröffentlicht. Bitte lesen Sie die LICENSE-Datei für weitere Informationen.

Teile dieser Rolle enthalten MIT-lizenzierte Codes (siehe 7c400dd) und sind im Header gekennzeichnet. Weitere Informationen finden Sie in LICENSE-MIT.

Autor Information

Diese Rolle wurde 2017 von Guillaume Mazoyer erstellt.

Installieren
ansible-galaxy install gmazoyer.netbox
Lizenz
gpl-3.0
Downloads
825
Besitzer
Network/Automation Engineer (AS201281, former AS35280, AS29467, AS2602). Former 3 times GSoC student. IPv6 lover, FLOSS enthusiast and Gamer.