respawner.netbox
Rola Ansible: NetBox
Rola Ansible, która instaluje na Debianie/Ubuntu.
Ta rola instaluje wszystkie zależności wymagane przez NetBox, w tym bazę danych PostgreSQL. Może być używana do skonfigurowania urządzenia NetBox, włączając wszystko na tej samej maszynie.
Ustawienia backendu i frontend mogą być wyłączone, jeśli już masz własne rozwiązanie do ich obsługi.
Zależności
Brak.
Zmienne ról
Dostępne zmienne są wymienione poniżej, wraz z wartościami domyślnymi:
Konfiguracja dla bazy danych PostgreSQL:
netbox_database: netbox
netbox_database_user: netbox
netbox_database_password: netbox
netbox_database_host: localhost # To wymusi skonfigurowanie PostgreSQL
Skąd pobrać NetBox i która wersja:
netbox_version: latest
netbox_git_url: https://github.com/netbox-community/netbox.git
Domyślnie zawsze pobiera najnowszą stabilną wersję. Można wymusić konkretną wersję, używając np. v3.5.1
.
Gdzie zainstalować NetBox:
netbox_install_directory: /opt/netbox
Nazwa użytkownika, hasło i e-mail dla superużytkownika:
netbox_superuser_username: admin
netbox_superuser_password: admin
netbox_superuser_email: [email protected]
Można używać LDAP jako mechanizmu autoryzacji. Musi być włączony, a cała konfiguracja LDAP musi być podana w poniższych zmiennych (zobacz dokumentację NetBox tutaj):
netbox_setup_ldap_auth: false
netbox_ldap_config: ""
Inne pakiety Pythona można instalować za pomocą local_requirements.txt
, co jest przydatne do instalacji pakietów takich jak NAPALM lub wtyczek:
netbox_local_requirements:
- napalm
…
Konfiguracja dla NetBox musi być podana jako pary klucz: wartość
, jak w poniższym przykładzie, proszę zauważyć, ż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 konserwacyjne jest uruchamiane za pomocą timera systemd zaplanowanego na 4:30 AM UTC codziennie. Możesz użyć on_unit_active_sec: 12h
zamiast on_calendar
, aby uruchomić polecenie konserwacyjne 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 backendowego 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 frontendowego serwera www:
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 Playbook
- hosts: netboxes
roles:
- { role: gmazoyer.netbox }
Licencja
Ta rola Ansible jest udostępniana na podstawie licencji GNU GPLv3. Proszę zapoznać się z plikiem LICENSE
, aby uzyskać więcej informacji.
Części tej roli zawierają kod licencjonowany na zasadach MIT (zobacz 7c400dd
) i są zaznaczone w nagłówku. Zobacz LICENSE-MIT
, aby uzyskać więcej informacji.
Informacje o autorze
Ta rola została stworzona w 2017 roku przez Guillaume Mazoyer.
A role to install and update NetBox.
ansible-galaxy install respawner.netbox