今まで、OpenDCIMやDevice42、RalphといったDCIMツールを触ってきたのだが、DegitalOceanから『netbox』というDCIMツールが出たようなので、ちょっと触ってみることにする。
ちゃんとOSにインストールするなら、こちらの公式ドキュメントを参考に行うといいだろうが、ちょっと面倒くさそうだ。
Dockerイメージもあるので、今回はお試しということもあってこちらを利用する(なので、前提として最新版(少なくとも、docker-composeのVersion2の記述方法に対応したバージョン)のDockerとdocker-composeがインストール済みとなってる必要がある)。また、Dockerの設定ファイルを見たところ、今時点では16.04には対応してなさそうなので、14.04を用いる。
Dockerおよびdocker-composeをインストールしたら、以下のコマンドで「netbox」のDockerイメージを起動させる。
git clone -b master https://github.com/digitalocean/netbox.git
cd netbox
sudo docker-compose up -d
Dockerでの起動が終了したら、「http://IPアドレス」でアクセスできる。
この状態だとログイン前のため、何も編集ができない(閲覧モードになる)。右上の「Log in」からログインできる。
ログイン用のデフォルトID/PWは「admin/admin」となっている。
ログイン後の画面がこちら。
「netbox」は、以下のような構成になっているようだ。
- Organization
- Sites … 地理的な場所(DCのある場所)
- Tenants … そのSiteに紐づく客や部門など
- DCIM
- Racks … ラックの情報(Sitesがないと作れない)
- Devices … ラックに搭載するデバイスの情報
- IPAM
- VRFs … VRFの情報
- Aggregates … トップレベルIPの割り当て情報
- Prefixes … IPv4/IPv6ネットワーク割り当て情報
- IP Addresses … 各IPアドレスの管理情報
- VLANs … 各VLANの管理情報
- Circuits
- Providers … インターネットプロバイダ情報
- Circuits … インターネット接続情報?(インターネット速度など)
- Secrets
- Secrets … パスワードなどの機密情報(今時点でSSL経由の通信ないみたいだけど。まぁリバースプロキシをコンテナで動かさせたりすればいいだけだから…)
各機能(特にRackまわり)、なんとなく触ってみたので、スクリーンショットを貼っておく。
ラック。ラックに搭載する機器はデバイスタイプ(自分で設定する。サーバとかスイッチとか)ごとに色を変えられるので、閲覧性は悪くない。
各デバイスにはネットワークポートを設定でき、それぞれ対向先の機器についても定義できる。
(この辺はまだRalphにはついてないんだよなぁ…今年の10月から開発するって言ってたけど、どうなんだろう…)
各ネットワークポートの作成には正規表現を使えるので、スイッチの作成では結構楽。
シークレット機能が少し面白い。
登録時に鍵で暗号化しておき、自身のProfileで設定した鍵と一致した場合は中身を見れるようだ。
こんな機能があるのにSSL経由の通信じゃないのは残念だが、また改善されていくだろう。
DegitalOceanの作成したツールということもあり、結構期待してもよさそう。
まだDCIMを導入してないような環境であれば一考の価値はありそうだ。