netbox
Ansible Роль: NetBox
Ansible роль, которая устанавливается на Debian/Ubuntu.
Эта роль устанавливает все зависимости, необходимые для NetBox, включая базу данных PostgreSQL. Это позволяет настраивать оборудование NetBox, включая всё на одной машине.
Настройки веб-бэкенда и фронтенда могут быть отключены, если у вас уже есть собственный способ их обработки.
Зависимости
Нет.
Переменные роли
Доступные переменные перечислены ниже, вместе с их значениями по умолчанию:
Настройки для базы данных PostgreSQL:
netbox_database: netbox
netbox_database_user: netbox
netbox_database_password: netbox
netbox_database_host: localhost # Это заставит настроить PostgreSQL
Где взять NetBox и какая версия:
netbox_version: latest
netbox_git_url: https://github.com/netbox-community/netbox.git
По умолчанию всегда будет загружаться последняя стабильная версия. Конкретную версию можно задать, например, v3.5.1
.
Где установить NetBox:
netbox_install_directory: /opt/netbox
Имя пользователя, пароль и электронная почта для суперпользователя.
netbox_superuser_username: admin
netbox_superuser_password: admin
netbox_superuser_email: [email protected]
LDAP может использоваться в качестве механизма аутентификации. Он должен быть включен, и всю конфигурацию LDAP нужно предоставить в следующих переменных (см. документацию NetBox):
netbox_setup_ldap_auth: false
netbox_ldap_config: ""
Другие пакеты Python могут быть установлены с помощью local_requirements.txt
, это полезно для установки таких пакетов, как NAPALM или плагины:
netbox_local_requirements:
- napalm
…
Конфигурация для NetBox должна быть представлена в виде пар ключ: значение
, например:
netbox_config:
ALLOWED_HOSTS:
- localhost
- 127.0.0.1
TIME_ZONE: "Europe/Paris"
…
Команда обслуживания выполняется с помощью таймера systemd, настроенного на 4:30 AM UTC каждый день. Вы можете использовать on_unit_active_sec: 12h
вместо on_calendar
, чтобы запускать команду обслуживания каждые 12 часов (например).
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"
Конфигурация для бекенда веб-сервера и systemd:
netbox_setup_systemd: false
netbox_gunicorn_address: 127.0.0.1
netbox_gunicorn_port: 8001
netbox_gunicorn_workers_number: 5
Настроить ли фронтенд веб-сервера:
netbox_setup_web_frontend: false
Настройки SSL/TLS для фронтенда веб-сервера:
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
Пример Playbook
- hosts: netboxes
roles:
- { role: gmazoyer.netbox }
Лицензия
Эта Ansible роль выпущена под условиями GNU GPLv3. Пожалуйста, прочитайте файл LICENSE
для получения более подробной информации.
Части этой роли включают код, лицензированный MIT (см. 7c400dd
), и обозначены в заголовке. См. LICENSE-MIT
для получения более подробной информации.
Информация об авторе
Эта роль была создана в 2017 году Гийомом Мазоем.
A role to install and update NetBox.
ansible-galaxy install gmazoyer/ansible-role-netbox