gmazoyer.netbox

CI
Ansible Galaxy

Ansible Role: NetBox

Debian/Ubuntu にインストールするための Ansible ロールです。

このロールは、PostgreSQL データベースを含む NetBox に必要なすべての依存関係をインストールします。これにより、すべてを同じマシンに配置した NetBox アプライアンスを設定できます。

Web のバックエンドとフロントエンドのセットアップは、すでに独自の方法を持っている場合は無効にできます。

依存関係

なし。

ロールの変数

利用可能な変数は、以下にリストされており、デフォルト値も示しています。

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 の設定は、以下のように key: value ペアで指定する必要があります。なお、秘密鍵は自動生成されるため、指定する必要はありません:

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

ハウスキーピングコマンドは、毎日午前4時30分(UTC)に設定された systemd タイマーを使用して実行されます。例えば、on_calendar の代わりに on_unit_active_sec: 12h を使用することで、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 年に Guillaume Mazoyer によって作成されました。

プロジェクトについて

A role to install and update NetBox.

インストール
ansible-galaxy install gmazoyer.netbox
ライセンス
gpl-3.0
ダウンロード
825
所有者
Network/Automation Engineer (AS201281, former AS35280, AS29467, AS2602). Former 3 times GSoC student. IPv6 lover, FLOSS enthusiast and Gamer.