Shumoku

データソース

Zabbix、Prometheus、Grafana、NetBox の接続

データソースは Shumoku Server にライブメトリクスやトポロジーデータを提供します。サーバーはプラグインアーキテクチャを採用しており、各連携はプラグインとして有効化・無効化できます。

データソースの追加

  1. サイドバーの Data Sources をクリック
  2. Add Data Source をクリック
  3. プラグインタイプを選択(Zabbix、Prometheus、NetBox など)
  4. 接続情報を入力
  5. Test Connection で接続を確認
  6. 保存

Zabbix

JSON-RPC API でトラフィックメトリクス・ホスト状態・アラートを取得します。

フィールド説明
URLZabbix サーバーの URL(例: https://zabbix.example.com
API Token認証用の Zabbix API トークン

接続すると、Zabbix のホストとアイテムがトポロジー設定のノードマッピングで利用可能になります。

Prometheus

SNMP / Node Exporter メトリクスでリンク使用率を表示します。

フィールド説明
URLPrometheus サーバーの URL(例: http://prometheus:9090

Grafana

Webhook でアラートを受信しトポロジー上に表示します。

フィールド説明
Webhook Secret受信 Webhook の認証用シークレットトークン

Grafana のアラート通知先を以下に設定してください(正確な URL はデータソース設定画面に表示されます):

POST https://your-shumoku-server/api/webhooks/grafana/<datasource-id>?secret=<secret>

シークレットはクエリパラメータの代わりに X-Webhook-Secret ヘッダーで送ることもできます。

NetBox

DCIM・IPAM データからトポロジーを自動検出します。デバイス間のケーブルに加え、 回線(Circuit) も取り込みます。デバイスのインターフェースが回線終端 (Circuit Termination)にケーブル接続されている場合、その回線を辿って接続を復元します。

  • 回線の両端が自社デバイスに着地する場合(拠点間ダークファイバー等)→ デバイス間リンクとして描画(ラベルにプロバイダ名・回線 ID、速度は回線のポート速度)。
  • 片端のみ自社デバイスの場合(対外プロバイダへのアップリンク等)→ プロバイダを表す境界ノードを 1 つ生成し、そこへ接続。
  • active でない回線(planned 等)は破線で描画します。
  • 回線を使っていない NetBox インスタンスや、トークンに circuits 権限が無い場合は、回線を無視してデバイス/ケーブルのみのトポロジーになります。
フィールド説明
URLNetBox サーバーの URL(例: https://netbox.example.com
API TokenNetBox API トークン

同期モード

モード説明
Manual手動でトポロジーデータを更新
On-Viewトポロジーを開いた時に自動更新
WebhookNetBox Webhook で自動更新

Webhook モードでは、NetBox の通知先を以下に設定してください(正確な URL はトポロジーソース設定画面に表示されます):

POST https://your-shumoku-server/api/webhooks/topology/<topology-source-id>?secret=<secret>

シークレットはクエリパラメータの代わりに X-Webhook-Secret ヘッダーで送ることもできます。

Aruba Instant On

Aruba Instant On クラウドポータルからアクセスポイント・スイッチ・デバイス別メトリクス・サイトアラートを取得します。非公式のポータル API を使用します。

フィールド説明
Usernameポータルアカウントのメールアドレス(MFA が無効なアカウントが必要)
Passwordポータルのパスワード
Site ID任意 — 1 サイトに限定。空欄の場合はアカウントが参照できる全サイトをポーリング

Arista CV-CUE

Arista CV-CUE(CloudVision Cognitive Unified Edge)の Wi-Fi Open API から、管理下のアクセスポイント・アップリンクスイッチ・デバイス別ステータス・イベント(アラート)を取得します。LLDP のアップリンク情報から AP↔スイッチのトポロジも自動生成し、NetBox 等の有線トポロジと identity でマージできます。API キー(Key ID / Key Value)でセッション認証します。

フィールド説明
API base URLCV-CUE Open API のベース(末尾 /wifi/api)。テナント/リージョンごと(例: https://awm17001-c4.srv.wifi.arista.com/wifi/api
API key IDCV-CUE の「Manage API Keys」で発行した Key ID(例: KEY-XXXXXXXX-NN
API key valueKey ID に対応するシークレット
Customer ID (CID)任意 — キーが複数カスタマーにアクセスできる場合のみ
Location ID任意 — クエリを特定のロケーション配下に限定(0 がルート)

Huawei iMaster NCE-Campus

Huawei iMaster NCE-Campus コントローラの北向き RESTful API(NBI、既定ポート 18002)から、管理下のデバイス(AP・スイッチ・AR ルータ・ファイアウォール)・デバイス間トポロジ(コントローラのトポロジ API を優先し、LLDP ネイバーにフォールバック)・デバイス別パフォーマンス(CPU / メモリ / インターフェース使用率)・リンク状態・現在アラームを取得します。デバイスはサイト単位のサブグラフにグループ化され、MAC / 管理 IP の identity で NetBox 等の他ソースとマージできます。

トークンは発行時のクライアント IP に束縛されるため、NAT やプロキシ経由でコントローラへアクセスする構成では送信元 IP が固定される必要があります。

フィールド説明
NBI base URLコントローラの NBI ベース URL(例: https://nce.example.com:18002
UsernameNBI User Group ロールを付与したサードパーティアカウント
Passwordアカウントのパスワード
Site ID任意 — 1 サイト(UUID)に限定。空欄の場合はアカウントが参照できる全サイトをポーリング

サードパーティアカウントは NCE-Campus の System > User Management で Type を Third-party にして作成し、NBI User Group ロールを割り当ててください。

Network Scan

上流のインベントリなしでトポロジーを能動的に発見します。SNMP と LLDP でネットワークをシードクロールし、デバイスの特定・ポートの列挙・ネイバーリンクの収集を行います。

フィールド説明
TargetsIPv4 アドレス、ホスト名、または CIDR ブロック(例: 10.0.0.0/24
CommunitySNMPv2c コミュニティ(デフォルト public
Timeoutデバイスごとのタイムアウト(ミリ秒)

プラグイン

プラグインシステムで追加のデータソースを導入できます。サイドバーの Plugins からインストール済みプラグインを管理できます。

プラグインの追加方法:

  • ビルトインプラグイン(Manual、Zabbix、Prometheus、Grafana、NetBox、Aruba Instant On、Arista CV-CUE、Huawei iMaster NCE-Campus、Network Scan)
  • GitHub URL
  • ローカルファイルパス
  • ZIP ファイルアップロード

目次