gmazoyer.netbox

Rola Ansible: NetBox

Rola Ansible, która instaluje się na Debianie/Ubuntu.

Ta rola instaluje wszystkie zależności wymagane przez NetBox, w tym bazę danych PostgreSQL. Można jej użyć do skonfigurowania urządzenia NetBox, które zawiera wszystko na tej samej maszynie.

Ustawienia backendu i frontendu mogą być wyłączone, jeśli masz już własny sposób ich obsługi.

Zależności

Brak.

Zmienne roli

Dostępne zmienne są wymienione poniżej razem z domyślnymi wartościami:

Konfiguracja bazy danych PostgreSQL:

netbox_database: netbox
netbox_database_user: netbox
netbox_database_password: netbox
netbox_database_host: localhost # To wymusi konfigurację PostgreSQL

Skąd wziąć NetBox i która wersja:

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

Domyślnie zawsze pobierana jest najnowsza stabilna wersja. Można wymusić konkretną wersję, na przykład v3.5.1.

Gdzie zainstalować NetBox:

netbox_install_directory: /opt/netbox

Nazwa użytkownika, hasło i e-mail dla super użytkownika:

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

LDAP może być używane jako mechanizm uwierzytelniania. Musi być włączone, a cała konfiguracja LDAP musi być podana w następujących zmiennych (zobacz dokumentację NetBox):

netbox_setup_ldap_auth: false
netbox_ldap_config: ""

Inne pakiety Pythona mogą być instalowane za pomocą local_requirements.txt, co jest przydatne do instalacji pakietów, takich jak NAPALM lub wtyczki:

netbox_local_requirements:
  - napalm

Konfiguracja dla NetBox musi być podana jako pary klucz: wartość, takie jak poniższe, należy pamiętać, że klucz tajny nie musi być podawany, ponieważ zostanie wygenerowany automatycznie:

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

Polecenie konserwacji jest uruchamiane za pomocą timera systemd skonfigurowanego na 4:30 UTC każdego dnia. Można użyć on_unit_active_sec: 12h zamiast on_calendar, aby uruchamiać polecenie konserwacji co 12 godzin (na przykład).

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"

Konfiguracja dla backendu serwera www i systemd:

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

Czy skonfigurować serwer www frontendowy:

netbox_setup_web_frontend: false

Konfiguracja SSL/TLS dla serwera www frontendowego:

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

Przykładowy plik Playbook

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

Licencja

Ta rola Ansible jest wydana na podstawie zasad GNU GPLv3. Proszę zapoznać się z plikiem LICENSE po więcej informacji.

Części tej roli zawierają kod na licencji MIT (zobacz 7c400dd) i są oznaczone w nagłówku. Zobacz LICENSE-MIT po więcej informacji.

Informacje o autorze

Ta rola została stworzona w 2017 roku przez Guillaume Mazoyer.

Zainstaluj
ansible-galaxy install gmazoyer.netbox
Licencja
gpl-3.0
Pobrania
825
Właściciel
Network/Automation Engineer (AS201281, former AS35280, AS29467, AS2602). Former 3 times GSoC student. IPv6 lover, FLOSS enthusiast and Gamer.