jvoss.netbox

Ansibleロール: Netbox

Netbox CI Netbox Ansible Galaxy Ansible Quality Score Version

さまざまな人気のLinuxディストリビューションに対して、NetBoxをインストール、設定、維持管理します。

目次

一般情報

このロールはNetBoxのインストールと設定を管理します。アプリケーションの必要な依存関係であるPostgreSQLやRedisサービスは提供しません。それらのタスクは、ユーザーが自分のロールやプレイブックの中で管理できるよう意図的に任されています。これらのサービスを管理する方法については、EXAMPLEプレイブックを参照してください。

リリースはNetBoxの変更をサポートする必要がある場合のみ公開されます。このロールは常に新しいバージョンのNetBoxでテストされます。最新の互換性情報については、GitHubリポジトリを参照してください。

サポートされているプラットフォーム

次のプラットフォームでテストされています:

  • Amazon Linux 2
  • CentOS 8
  • Debian Bookworm
  • Debian Bullseye
  • Fedora Linux 37
  • Rocky Linux 8 / Red Hat Enterprise Linux (RHEL) 8.2+
  • Rocky Linux 9 / Red Hat Enterprise Linux (RHEL) 9.3+
  • Ubuntu 20.04
  • Ubuntu 22.04

このロールを使用するには、netbox管理のためにrootアクセス(sudo経由)が必要です。

NetBoxバージョン>=3.5.9をサポートしています。

ロール変数

localhostのPostgreSQLおよびRedisサービスが利用可能な場合に必要な最小限の変数:

netbox_db_username: netbox
netbox_db_password: netbox
netbox_secret_key: "lnvRn_5Bypl8hBV4mMwgsMuHxr6uZvGwJyDqB7fcKqo"

netbox_secret_keyが省略されると、各プレイブック実行時に自動的に新しいキーが生成されます。

デフォルトや設定可能なオプションの完全なリストについては、defaults/main.ymlを参照してください。

注意: バージョン3.1以降は動的設定オプションが導入されました。これらの設定はUIからの変更を妨げるため、デフォルトではこのロールはnetbox_override_dynamic_configTrueに設定されていない限り、これらのパラメータを常に省略します。詳細はdefaults/main.yml#L82を参照してください。

ユーザーアカウント

初期インストール時のユーザー作成のために定義できる変数:

netbox_superusers:
  - username: admin
    password: admin
    email: [email protected]

各ユーザーにはユーザー名、パスワード、およびメールアドレスが必要です。ロールは初期インストール時にのみ指定されたユーザーを作成しようとします。netbox_superusersが定義されていない場合は、ユーザーは作成されず、Netboxによって文書化された手動ユーザー作成プロセスを使用できます。

外部認証

利用可能な外部認証メソッドについては、wikiを参照してください。

プラグイン

PipモジュールのNetboxプラグインは、netbox_pluginsリスト変数を設定することでインストールおよび設定できます。以下はNetbox BGPプラグインの例です。

netbox_plugins:
  - name: netbox_bgp    # プラグイン名
    pip: netbox-bgp     # Pipモジュール名
    config:             # プラグイン設定
      device_ext_page: left
      asdot: True

プラグインの削除

プラグインを削除するには、netbox_pluginsのエントリにabsent状態を割り当てます:

netbox_plugins:
  - name: netbox_bgp    # プラグイン名
    pip: netbox-bgp     # Pipモジュール名
    state: absent

プラグインの一部としてインストールされたデータベーステーブルを削除する必要がある場合がありますので注意してください。 このロールは、プラグインの一部として作成されたデータベーステーブルを管理しません。テーブル管理の詳細については、ドキュメントを参照してください。

バージョン固定

特定のバージョンのnetboxを設定するには、次の変数を使用します:

netbox_version_tag: v3.0.9

このタグは、インストールするリリースのGitHubタグ名と一致する必要があります。特定のターゲットが維持されます。設定しない場合、各実行は最新のリリースバージョンをインストールしようとします。

注意: ほとんどの環境では、既知のインストールを維持するためにバージョンタグを設定するべきです。

特定のブランチからデプロイするオプションもあります。必要に応じて特定のコミットSHAを指定できます。

netbox_install_method: git
netbox_git_branch: master
netbox_git_sha: 8f1acb700d72467ffe7ae5c8502422a1eac0693d # 任意

依存関係

Ansibleの依存関係はありません。アプリケーションはRedisとPostgresを必要とします。

例のプレイブック

完全なプレイブックの例については、EXAMPLEを参照してください。

貢献

貢献は歓迎します。詳細についてはCONTRIBUTINGを参照してください。

プロジェクトについて

Installs and configures Netbox

インストール
ansible-galaxy install jvoss.netbox
ライセンス
mit
ダウンロード
178
所有者