respawner.netbox
Ansibleロール: NetBox
Debian/UbuntuにインストールするAnsibleロールです。
このロールは、PostgreSQLデータベースを含むNetBoxに必要なすべての依存関係をインストールします。したがって、全てを同じマシンで設定する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の設定は以下のようにkey: value
ペアで提供する必要があります。なお、秘密鍵は自動生成されるため提供する必要はありません:
netbox_config:
ALLOWED_HOSTS:
- localhost
- 127.0.0.1
TIME_ZONE: "Europe/Paris"
…
ハウスキーピングコマンドは、毎日UTCの午前4時30分に設定された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
例プレビュースクリプト
- hosts: netboxes
roles:
- { role: gmazoyer.netbox }
ライセンス
このAnsibleロールはGNU GPLv3の条項の下でリリースされています。詳細についてはLICENSE
ファイルをお読みください。
このロールの一部にはMITライセンスのコードが含まれており(7c400dd
を参照)、ヘッダーに示されています。詳細についてはLICENSE-MIT
をご覧ください。
作成者情報
このロールは2017年にGuillaume Mazoyerによって作成されました。