はじめに
ネットワーク機器のコンフィグを一元管理する場合、中央に配置したUnimus Serverから、すべての管理対象機器へ直接SSH接続できる構成が最もシンプルです。
しかし、実際の企業ネットワークでは、次のような理由から、Unimus Serverが各拠点のネットワーク機器へ直接接続できないことがあります。
- 拠点ごとにネットワークが分離されている
- 管理ネットワークへの通信が制限されている
- 中央サーバーから各拠点へのSSH通信を許可できない
- 拠点内から外部への通信だけが許可されている
- 中央サーバーに拠点ごとのルートを持たせたくない
- ネットワーク機器への管理通信を拠点内で完結させたい
このような環境で利用できるのが、UnimusのRemote Coreです。
Remote Coreは、一般的なネットワーク監視・管理製品におけるリモートポーラーやリモートプロキシに近い役割を持つコンポーネントです。
今回は、中央のUnimus Serverから直接到達できない検証用ネットワークを構築し、Remote Coreを経由してVyOSルーターのDiscoveryとコンフィグバックアップを実行しました。
検証中には、Unimus ServerとRemote Coreのバージョン不一致によって、Remote CoreがOnlineにならない問題も発生しました。
本記事では、Remote Coreの基本的な仕組みから、検証構成、設定手順、トラブルシュート、アップデート時の注意点まで、実際の検証結果をもとに紹介します。
Unimus Remote Coreとは
Unimusは、大きく次の2つのコンポーネントで構成されています。
- Unimus Server
Web UI、データベース、ジョブ管理などを担当します。 - Core
SSHやTelnetなどを使用し、ネットワーク機器との通信を担当します。
通常のUnimus ServerにはEmbedded Coreが含まれています。そのため、Unimus Serverから直接到達できる機器だけを管理する場合、Remote Coreを別途用意する必要はありません。
一方、Unimus Serverから直接到達できない拠点や、分離された管理ネットワークでは、対象ネットワーク内にRemote Coreを配置します。
ネットワーク機器との通信はRemote Coreが担当し、取得したコンフィグやジョブの実行結果は中央のUnimus Serverで管理します。
Remote Coreは、Unimus Serverに対して外向きのTCPセッションを確立します。標準ではTCP 5509を使用し、UnimusのZone画面で発行されるAccess Keyを使って接続します。
Unimus ServerとRemote Coreの通信イメージ

中央のUnimus Serverから拠点内のネットワーク機器へ直接SSH接続するのではなく、拠点内に配置したRemote Coreから通信させる点がポイントです。
Remote Coreが適する利用ケース
Remote Coreは、単に「物理的に離れた場所にある機器」を管理するためだけの機能ではありません。
例えば、次のような環境で利用を検討できます。
複数拠点の機器を中央管理したい場合
本社やデータセンターにUnimus Serverを配置し、営業所、工場、店舗、自治体拠点などにRemote Coreを配置する構成です。
拠点内のルーターやスイッチへの接続はRemote Coreから行い、コンフィグや実行結果は中央のUnimus Serverで一元管理します。
管理ネットワークが分離されている場合
ネットワーク機器の管理インターフェースが、業務ネットワークやサーバーネットワークから分離されていることがあります。
この場合、Unimus Serverに管理ネットワークへの経路を直接持たせる代わりに、管理ネットワーク内へRemote Coreを配置できます。
拠点単位で管理範囲を分けたい場合
Unimusでは、管理対象機器をZone単位で分類できます。
一般的には、1つの拠点または1つのネットワークを1つのZoneとして登録し、そのZoneに対応するRemote Coreを配置します。
Zoneに登録した機器との通信には、そのZoneで設定されているEmbedded CoreまたはRemote Coreが使用されます。
今回の検証構成
今回の検証では、Nutanix AHV上に、拠点ネットワークを模したサブネットを構築しました。
検証構成イメージ

Remote Core VMのネットワーク構成
Remote Core用VMである unimus-core-a01 は、2NIC構成としました。
| インターフェース | IPアドレス | 用途 |
|---|---|---|
| ens3 | 192.0.2.20/24 | Unimus Serverと通信する管理ネットワーク |
| ens4 | 10.10.10.10/24 | 検証用拠点ネットワーク「Branch-A」 |
管理対象VyOS
| インターフェース | IPアドレス |
|---|---|
| eth1 | 10.10.10.101/24 |
検証で確認したいこと
今回の検証では、Remote CoreからVyOSへ接続できるだけでなく、次の状態を意図的に作りました。
Unimus Server → VyOS:接続できない
Remote Core → VyOS:pingおよびSSH接続ができる
VyOSを管理ネットワークから切り離し、Branch-Aネットワークのみに接続しました。
この状態でDiscoveryとバックアップが成功すれば、Remote Coreを経由して処理されたことを確認できます。
Remote Coreから管理対象機器への疎通を確認する
最初に、Remote Core VMからVyOSへの疎通を確認します。
pingを確認する
ping 10.10.10.101
SSH接続を確認する
ssh vyos@10.10.10.101
今回の環境では、Remote Core VMからVyOSへのpingとSSH接続はいずれも成功しました。
一方、Unimus Serverから 10.10.10.101 へは接続できません。
これにより、Remote Core経由の処理を確認するための前提条件が成立しました。
UnimusでRemote Core用のZoneを作成する
続いて、UnimusのZone画面でRemote Core用のZoneを作成します。

今回の設定例は次のとおりです。
Zone名:Remote-Core-Branch-A
Description :任意
Zone ID :RemoteCoreBranch
Connection Method:Remote Core
Remote Core方式のZoneを作成すると、そのZoneに接続するためのAccess Keyが表示されます。

このAccess Keyは、Remote Coreのインストールまたは設定時に使用します。
Access KeyはRemote CoreとUnimus Serverを接続するための重要な情報です。
Ubuntu ServerにRemote Coreをインストールする
UbuntuまたはDebianでは、Unimus公式のインストールスクリプトを使用してRemote Coreを導入できます。
sudo apt-get install wget curl -y
wget https://unimus.net/install-unimus-core.sh
chmod +x install-unimus-core.sh
sudo ./install-unimus-core.sh
インストーラーでは、主に次の情報を設定します。
- Unimus Serverのアドレス
- Remote Core接続用ポート
- Zone画面で確認したAccess Key
標準ポートを使用する場合、接続先ポートはTCP 5509です。
インストールが完了すると、Remote CoreがLinuxのサービスとして起動します。

なお、設定の変更は下記のファイルを直接編集することでも可能です。
/etc/unimus-core/unimus-core.properties
設定を変更した場合は、Remote Coreサービスを再起動します。
sudo systemctl restart unimus-core
Remote CoreのOnline状態を確認する
設定完了後、UnimusのZone画面を開き、Remote CoreがOnlineになっていることを確認します。

Zone画面では、次の項目を確認します。
- 対象のZone名が正しい
- Remote CoreのステータスがOnlineになっている
- 接続したRemote Coreが正しく表示されている
- Core Loadが表示されている
Remote CoreがOnlineになっていれば、対象Zoneに登録したネットワーク機器に対して、Discoveryやコンフィグバックアップを実行できます。
Remote CoreがOnlineにならなかった原因を確認する
今回の検証では、初回の確認時にRemote Coreサービスは起動していましたが、Zone画面ではOnlineになりませんでした。

まず、Remote Core側でサービスの状態を確認します。
sudo systemctl status unimus-core --no-pager -l
続いて、Remote Coreのバージョンを確認します。
dpkg-query -W -f='${Package} ${Version}\n' | grep -i unimus
Unimus ServerとRemote Coreは対応する同一バージョンで運用する
Unimus公式ドキュメントでも、両者のバージョンが一致しない場合、Remote Coreは接続に失敗すると案内されています。
今回、Unimus Server側のログには次の警告が出力されていました。
Remote Core-API version '2.9.1'
is not equal to embedded Core-API version '2.8.0'
検証時の構成は次のとおりです。
| コンポーネント | バージョン |
|---|---|
| Unimus Server | 2.8系 |
| Remote Core | 2.9.1 |
Unimus ServerとRemote Coreのバージョンが一致していなかったため、Remote CoreがUnimus Serverへ接続できない状態になっていました。
アップデート前にはUnimus Serverサービスを停止し、念のために内蔵HSQLDBと設定情報をバックアップします。その後、既存環境に対して2.9.1のWindows Standard installerを実行しアップデートを行います。
アップデート後、既存のZone、デバイス情報、バックアップ履歴が引き継がれていることを確認しました。
Unimus ServerとRemote Coreを2.9.1に揃えたことで、Remote CoreがOnlineになりました。
VyOSへ接続するCredentialを登録する
Remote CoreがOnlineになったら、管理対象のVyOSへSSH接続するためのCredentialをUnimusへ登録します。

今回の設定例は次のとおりです。
接続方式:SSH
認証情報:VyOSへログインするためのユーザー名とパスワード
Remote Core経由でVyOSをDiscoveryする
Credentialを登録したら、VyOSをUnimusへ追加します。
Discoveryの操作自体は、通常のデバイス追加とほぼ同じです。
今回の設定例は次のとおりです。
IPアドレス:10.10.10.101
Zone:Remote-Core-Branch-A
Credential:登録したVyOS用Credential

重要なのは、対象デバイスをRemote Core用のZoneへ登録することです。
Default ZoneやEmbedded Core方式のZoneを選択すると、Unimus Server側から直接機器へ接続しようとします。
今回の構成では、Unimus ServerからVyOSへ到達できないため、Remote Core用のZone以外を選択するとDiscoveryに失敗します。
Remote-Core-Branch-Aを指定したことで、Remote CoreからVyOSへ接続され、Discoveryに成功しました。

複数のIPアドレスをまとめて検出するNetwork ScanでもZoneを指定できます。Remote Core方式のZoneを指定した場合、そのZoneに接続しているRemote Coreからスキャンが実行されます。
コンフィグバックアップを確認する
Discovery成功後、VyOSのコンフィグバックアップを手動で実行しました。
確認した項目は次のとおりです。
- バックアップジョブがSuccessになる
- VyOSのコンフィグが取得される
- 取得したコンフィグをUnimus画面から表示できる
- 対象デバイスがRemote-Core-Branch-Aに所属している
- Unimus ServerからVyOSへ直接接続できない状態が維持されている
今回の検証では、Discoveryとコンフィグバックアップの両方に成功しました。
これにより、中央のUnimus Serverから直接到達できないVyOSを、Remote Core経由で管理できることを確認しました。

まとめ
今回の検証では、Unimus Serverから直接到達できない拠点ネットワークにRemote Coreを配置し、VyOSのDiscoveryとコンフィグバックアップに成功しました。
Remote Coreを利用すると、中央のUnimus Serverから各拠点のネットワーク機器へ直接SSH接続する経路を用意しなくても、拠点内に配置したRemote Coreを経由して機器を管理できます。
Unimusのライセンスは、基本的に管理対象デバイス数を基準としています。Remote Core自体に個別のデバイスライセンスを割り当てる必要はないため、複数の拠点へRemote Coreを配置する場合でも、Remote Coreの台数に応じた追加ライセンスは必要ありません。
そのため、拠点数が多い環境でも、ネットワーク構成に合わせてRemote Coreを配置し、段階的に管理範囲を広げることができます。
Remote Coreを利用するまでの基本的な流れは、次のとおりです。
Unimus Serverをインストールする
↓
Remote Core用のZoneを作成する
↓
Zone画面でAccess Keyを確認する
↓
拠点内のサーバーへUnimus Coreをインストールする
↓
Unimus Serverのアドレス、TCP 5509、Access Keyを設定する
↓
Zone画面でRemote CoreがOnlineになったことを確認する
↓
管理対象機器へ接続するCredentialを登録する
↓
対象デバイスをRemote Core用のZoneへ登録する
↓
Discoveryとコンフィグバックアップを実行する
設定時には、次の通信と認証情報を確認します。
- Remote CoreからUnimus Serverへの通信:TCP 5509
- Remote CoreとUnimus Server間の認証:Access Key
- Remote Coreから管理対象機器への通信:SSHまたはTelnetなど
- 管理対象機器への認証:ユーザー名、パスワードまたはSSH鍵
- 運用端末からUnimus ServerのWeb UIへの通信:標準ではTCP 8085
なお、Standardライセンス等を利用する場合は、ライセンス認証のため、Unimus Serverからインターネットへの通信経路も必要です。Remote Coreごとにインターネット接続が必要という意味ではなく、中央のUnimus Server側で外部通信できるように構成します。
今回の検証では、Unimus Server 2.8.0系とRemote Core 2.9.1のバージョン不一致により、Remote CoreがOnlineになりませんでした。
Unimus Serverを2.9.1へアップデートし、ServerとRemote Coreのバージョンを揃えると、既存のZoneとAccess Keyを引き継いだままRemote CoreがOnlineとなり、Discoveryとコンフィグバックアップを実行できました。
Remote CoreがOnlineにならない場合は、次の順番で確認すると原因を切り分けやすくなります。
- Remote Coreサービスが起動しているか
- Remote CoreからUnimus ServerへTCP 5509で接続できるか
- Unimus ServerのアドレスとAccess Keyが正しいか
- Unimus ServerとRemote Coreのバージョンが一致しているか
- Unimus ServerとRemote Coreのログに警告やエラーが出ていないか
- Remote Coreから管理対象機器へSSH接続できるか
- 管理対象機器用のCredentialが正しく登録されているか
Remote Coreは、複数拠点や分離された管理ネットワークの機器を、中央のUnimus Serverから一元管理したい場合に有効な機能です。
導入時には、Remote Coreのインストールだけでなく、Zoneの設計、通信経路、バージョン管理、Remote Core停止時の影響範囲まで含めて運用方法を検討することが重要です。
Unimusの評価を始める
Unimusのインストールから初期設定、デバイス登録、バックアップ取得までの詳しい操作手順を確認したい場合は、Unimus評価ガイドもあわせてご活用ください。
Unimusの詳細や評価版については、製品紹介ページやダウンロードページもあわせてご確認ください。


