netbox

CI Ansible Galaxy

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 по универсальному времени (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 году Гийомом Мазойером.

Установить
ansible-galaxy install respawner/ansible-role-netbox
Лицензия
gpl-3.0
Загрузки
355
Владелец