【検証】Unimus Remote Coreで分離された拠点のネットワーク機器を中央管理する

はじめに

ネットワーク機器のコンフィグを一元管理する場合、中央に配置した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の通信イメージ

Server/Core構成例:拠点機器の情報を中央Serverへ集約
拠点内のRemote Coreがネットワーク機器へ接続し、取得した情報を中央のUnimus Serverへ集約する

中央の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上に、拠点ネットワークを模したサブネットを構築しました。

検証構成イメージ

Nutanix AHV上のVM・ネットワーク構成
Nutanix AHV上に構築したUnimus Server、Remote Core、VyOSの検証環境

Remote Core VMのネットワーク構成

Remote Core用VMである unimus-core-a01 は、2NIC構成としました。

インターフェースIPアドレス用途
ens3192.0.2.20/24Unimus Serverと通信する管理ネットワーク
ens410.10.10.10/24検証用拠点ネットワーク「Branch-A」

管理対象VyOS

インターフェースIPアドレス
eth110.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作成画面
Connection Methodに「Remote Core」を指定して拠点用Zoneを作成

今回の設定例は次のとおりです。

Zone名:Remote-Core-Branch-A
Description :任意
Zone ID :RemoteCoreBranch
Connection Method:Remote Core

Remote Core方式のZoneを作成すると、そのZoneに接続するためのAccess Keyが表示されます。

Remote Core Access Keyの表示箇所
Showボタンを押して、Remote Coreの接続設定に使用する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のサービスとして起動します。

Unimus Remote Core インストーラー起動画面
Unimus Serverの接続先とAccess Keyを入力するRemote Coreのインストーラー画面

なお、設定の変更は下記のファイルを直接編集することでも可能です。

/etc/unimus-core/unimus-core.properties

設定を変更した場合は、Remote Coreサービスを再起動します。

sudo systemctl restart unimus-core

Remote CoreのOnline状態を確認する

設定完了後、UnimusのZone画面を開き、Remote CoreがOnlineになっていることを確認します。

Remote CoreがOnlineになったZone画面
Remote CoreがUnimus Serverへ接続し、Onlineになっていることを確認する

Zone画面では、次の項目を確認します。

  • 対象のZone名が正しい
  • Remote CoreのステータスがOnlineになっている
  • 接続したRemote Coreが正しく表示されている
  • Core Loadが表示されている

Remote CoreがOnlineになっていれば、対象Zoneに登録したネットワーク機器に対して、Discoveryやコンフィグバックアップを実行できます。

Remote CoreがOnlineにならなかった原因を確認する

今回の検証では、初回の確認時にRemote Coreサービスは起動していましたが、Zone画面ではOnlineになりませんでした。

Coreがオフライン状態
Remote Coreサービスは起動しているが、Unimus Serverへ接続できていない状態

まず、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 Server2.8系
Remote Core2.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へ登録します。

VyOSへSSH接続するためのユーザー名とパスワードをCredentialとして登録
VyOSへSSH接続するためのユーザー名とパスワードをCredentialとして登録する

今回の設定例は次のとおりです。

接続方式:SSH
認証情報:VyOSへログインするためのユーザー名とパスワード

Remote Core経由でVyOSをDiscoveryする

Credentialを登録したら、VyOSをUnimusへ追加します。

Discoveryの操作自体は、通常のデバイス追加とほぼ同じです。

今回の設定例は次のとおりです。

IPアドレス:10.10.10.101
Zone:Remote-Core-Branch-A
Credential:登録したVyOS用Credential
VyOS追加時のZone選択画面
VyOSの追加時に、Remote Coreを設定したZoneと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に成功しました。

Discovery成功画面
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経由で管理できることを確認しました。

コンフィグバックアップ成功画面
Remote Core経由で取得したVyOSのコンフィグバックアップ

まとめ

今回の検証では、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にならない場合は、次の順番で確認すると原因を切り分けやすくなります。

  1. Remote Coreサービスが起動しているか
  2. Remote CoreからUnimus ServerへTCP 5509で接続できるか
  3. Unimus ServerのアドレスとAccess Keyが正しいか
  4. Unimus ServerとRemote Coreのバージョンが一致しているか
  5. Unimus ServerとRemote Coreのログに警告やエラーが出ていないか
  6. Remote Coreから管理対象機器へSSH接続できるか
  7. 管理対象機器用のCredentialが正しく登録されているか

Remote Coreは、複数拠点や分離された管理ネットワークの機器を、中央のUnimus Serverから一元管理したい場合に有効な機能です。

導入時には、Remote Coreのインストールだけでなく、Zoneの設計、通信経路、バージョン管理、Remote Core停止時の影響範囲まで含めて運用方法を検討することが重要です。

Unimusの評価を始める

Unimusのインストールから初期設定、デバイス登録、バックアップ取得までの詳しい操作手順を確認したい場合は、Unimus評価ガイドもあわせてご活用ください。

Unimusの詳細や評価版については、製品紹介ページやダウンロードページもあわせてご確認ください。

こんな記事も読まれています

最新記事

おすすめ記事

  1. セキュリティは「検知」から「実行させない」世界へ        ~ アプリケーションコントロールとゼロトラストの考え方

  2. 【初心者向け】最短で構築!Wazuh公式OVAで検証環境を作る方法(VirtualBox)

  3. Unimusで始めるネットワーク機器のコンフィグ管理入門

製品カテゴリー

その他の情報

TOP