【SSB】既存のSSBからの新しいSSBへログスペースとコンフィグレーションの転送

本記事では、SSBのリプレースなどで、新しいSSBを初期セットアップする時に、既存のSSBからログデータとコンフィグレーションを転送して、セットアップする手順について説明します。

はじめに

SSBをリプレースするなどの場合、これまでは、ログデータの移行は既存のSSBからログデータを外部のNASなどにバックアップ(必要な応じてアーカイブ)して、新しいSSBにリストアする方法がありました。ただし、この方法では、データをバックアップしてからリストアするまでのログは新しいSSBで受信されずロストしていました。これは、バックアップおよびリストアされるログ量に応じて長い時間を要していました。

ここでは、新しいSSBを初期セットアップする時に、既存のSSBでログを受信しながらログデータおよびコンフィグレーションを新しいSSBに転送する機能を使用してセットアップする手順について説明します。

これにより、ログデータをバックアップ、アーカイブ、およびリストアする手間を省くことができ、ログデータのロスト時間を最小限に抑えられます。

以下では、既存のSSBを転送元SSBと記述しています。また、転送元のSSBのIPアドレスは`10.0.2.200`、新しいSSBの一時的なIPアドレスを`10.0.2.201`としています。必要に応じて読み換えてください。

前提条件&制限

  • 新しいSSBは、転送元SSBと同一ネットワーク上にする必要があります。また、相互に通信可能の状態である必要があります。
  • 新しいSSBは、転送元SSBとSSHで接続できる必要があります。
  • 新しいSSBには、少なくとも転送元SSB内の全ログスペースのサイズ+転送先SSBのシステムサイズのディスク容量が必要です。
  • 転送は IPv4 でのみ機能し、IPv6 はサポートされていません。
  • 転送元SSB は、少なくともSSBバージョン 6 LTS である必要があります。
  • レポートおよびカスタムクラウドデータディスクに保存されたログスペースは転送されません。
  • 可能ならば、バックアップ/アーカイブプロセスを停止してから実行することをお勧めします。

手順

それでは、新しいSSBの初期設定時に、転送元SSBから新しいSSBへログスペースとコンフィグレーションを転送する手順を以下に示します。

転送元SSBのSSH設定

新しいSSBから転送元SSBにSSH接続できるように、転送元SSBのSSH設定を行います。

※既に、SSH接続が有効の場合は、この手順をスキップしてください。

  • 転送元SSBにアクセスします。
  • [Basic Settings]>[Management]>[SSH settings]に移動します。
  • SSH接続を有効にします。
Enable remote SSH access:✅
Enable password authentication:✅
  • [Commit]をクリックして設定を保存します。
図1. 転送元SSB-SSH設定例

新しいSSBのネットワーク設定

新しいSSBから転送元SSBに接続できるように、IPアドレスなどを設定します。ここでは、新しいSSBは初期インストール済みで、コンソールアクセスしてCLIで設定します。

  • コンソールに`root/default`でログインします。
  • [1 Shells]>[2 Core shell]を選択して、コアシェルに移動します。
  • 以下コマンドを実行して、IPアドレスおよびデフォルトゲートウェイを設定します。
# ip addr add 10.0.2.201/24 dev eth0
# ip route add default via 10.0.2.2
  • pingで転送元SSBへ疎通確認します。
# ping 10.0.2.200 -c 4
  • `exit` > [6 Logout]でログアウトします。
図2. 新しいSSB-ネットワーク設定例

転送元SSBからのログデータおよびコンフィグレーション転送

  • 新しいSSBにブラウザでアクセスします。
  • ウェルカムウィザードの[Configuration]画面で、[Standalone or primary node configuration]を選択します。
  • [Transfer from another node]を選択します。
図3. 新しいSSB-[Configuration]画面例
  • [Transfer from another node]設定フィールドが展開されます。
図4. 新しいSSB-[Transfer from another node]設定画面例

[Transfer from another node]設定

  • [Source address]に転送元SSBのIPアドレスを入力します(ここでは、10.0.2.200)。
図5. 新しいSSB-[Source address]設定例
  • [Source host key]フィールドのをクリックします。[Source host key]ダイアログが表示されるので、[Query]をクリックします。
図6. 新しいSSB-[Source host key]設定例1
  • 転送元SSBのホスト鍵がアップロードされます。
図7. 新しいSSB-[Source host key]設定例2

転送元SSBへのRSA鍵設定

[Transfer from another node]設定時に生成された、新しいSSBのRSA鍵を転送元SSBのSSH設定でアップロードします。

  • [RSA public key]に生成されたRSA鍵をクリップボードにコピーします。
図8. 新しいSSB-[RSA public key]画面例

※このRSA鍵は、転送プロセスを開始する前に、ウェルカムウィザードのページをリロードするたびに新しく生成されることに注意してください。この場合、以下の手順(転送元SSB-[Authorized keys]設定)で更新しなおす必要があります。

  • 転送元SSBの[Basic Settings]>[Management]>[SSH settings]に移動し、[Authorized keys]リストに追加します。をクリックして、をクリックします。
図9. 転送元SSB-[Authorized keys]設定例1
  • [Changing key]ダイアログが表示されるので、[Copy-paste key]フィールドにRSA鍵をペーストして、[Set]をクリックします。
図10. 転送元SSB-[Authorized keys]設定例2
  • RSA鍵がアップロードされるので、[Commit]をクリックして、設定を保存します。
図11. 転送元SSB-[Authorized keys]設定例3
  • 新しいSSBに戻り、[Next]をクリックします。
図12. 新しいSSB-[Transfer from another node]>[Next]画面例

コンフィグレーション確認

転送元SSBのコンフィグレーションが表示されるので、確認して、[Finish]をクリックします。

図13. 新しいSSB-コンフィグレーション表示画面例

転送の開始

※データ容量やネットワーク速度に応じて、転送プロセスに時間がかかる場合があります。理想的なケースでは、1ギガビットネットワークを介して、1秒あたり約120MiBを転送できます。これは、1TiBのデータの転送に少なくとも2.5時間かかることを意味します。なお、弊社検証環境では51MiB/sとなり、1TiBでは5.7時間かかりました。

※転送中に転送元SSBのコンフィグレーションを変更しないでください。コンフィグレーションの一貫性が失われ、データが失われる可能性があります。

※転送プロセス中は、画面を閉じないことをお勧めします。

[Finish]をクリックすると、データ転送プロセスが開始されます。データ転送は、以下の 8 ステップで行われます。

  • 1. [Transferring configuration and user preferences]、転送元のSSB でコンフィグレーションバンドルが自動的に作成され、新しいSSBに転送されます。
図14. 転送ステップ1-[Transferring configuration and user preferences]例
  • 2. [Synchronizing most of the logs]、転送元SSBのすべての既存のログスペースが新しいSSBに転送されます。

※データ容量とネットワーク速度に応じて、このステップが完了するまでに時間がかかる場合があります。

図15. 転送ステップ2-[Synchronizing most of the logs]例
  • 3. [Synchronizing logs received during the previous step]、転送元SSB がデータ転送中にログを受信している場合、つまり、前のステップ中に受信したログがこのステップで転送されます。

※転送元SSBのログ受信状況に応じて、このステップが完了するまでに時間がかかる場合があります。

  • 4. [Waiting for confirmation]、このステップで[Confirm]をクリックすると、データ転送の残りの自動プロセスが実行されます。[Confirm]をクリックします。

※[Confirm]をクリックすると、データ転送プロセスは中断できなくなり、自動的に完了します。

図16. 転送ステップ4-[Waiting for confirmation]例
  • 5. [Stopping syslog-ng on source]、転送元 SSBのsyslog-ngは停止され、ログはこのステップから転送元SSBによって受信または転送されません。

※このステップ後、転送元SSBでログ受信が停止され、新しいSSBがログ受信を再開するまでログがロストします。弊社環境では、約3分のログロスト時間が発生しました。この時間は、システム環境またはログ受信状況などに応じて異なります。

図17. 転送ステップ5-[Stopping syslog-ng on source]例
  • 6. [Synchronizing the remaining logs from the source SSB]、転送元SSBのsyslog-ngがシャットダウンされる前に、[Confirm]ステップ中に転送元 SSBによって受信されたログを転送します。

※転送元SSBのログ受信状況に応じて、このステップが完了するまでに時間がかかる場合があります。

  • 7. [Shutting down source cluster]、転送元SSBは、このステップでシャットダウンされます。転送元SSBがHA構成の場合、最初にセカンダリーノード、次にプライマリーノードがシャットダウンされます。
図18. 転送ステップ7-[Shutting down source cluster]例
  • 8. [Applying configuration]、以前に転送されたコンフィグレーションが新しいSSBに適用され、転送元SSBと同じIPアドレスを持つ、新しいSSBのログイン画面にリダイレクトします。
図19. 転送ステップ8-[Applying configuration]例
図20. 新しいSSB-リダイレクト例

※転送元SSBの電源を入れる場合は、ネットワークから切り離してください。新しいSSBとIPアドレスがコンフリクトし、ログが正しく受信できなくなる場合があります。この時点では、転送元SSBと新しいSSBのコンフィグレーションは同一であることに注意してください。

以下に、手順の実行動画をアップしています。テキストの手順と合わせて参考にしてください。

図21. 転送操作の動画例

エラーなど

操作中、発生する可能性があるエラーやアラートについて、説明します。

  • エラー1:下記エラーは、転送元SSBのSSH接続が有効でない可能性があります。転送元SSH接続の有効を確認してください。あるいは、転送元SSBにSSH接続できていない可能性があります。SSB間の接続ができているか確認してください。
図22. エラー1
  • エラー2:下記エラーは、新しいSSBのRSA鍵が転送元SSBのSSH設定で正しくアップロードされていない可能性があります。適宜、新しいSSBのRSA鍵を転送元SSBのSSH設定でアップロードしてください。このRSA鍵は操作ページをリロードするたびに新しく生成されることに注意してください。
図23. エラー2
  • 転送処理中、新しいSSBへのリダイレクト時に、転送元SSBの任意のページを開いている場合、以下のアラートが発生する場合があります。これは、新しいSSBの任意のページに再アクセスする為、認証が必要である旨のアラートで、これは、無視できます。
DISMAN-EVENT-MIB::sysUpTimeInstance  74765
SNMPv2-MIB::snmpTrapOID.0  XCB-SNMP-MIB::xcbError
XCB-SNMP-MIB::description  Authentication error - This module (Status) requires authentication, please log in.
XCB-SNMP-MIB::peerInetAddress  10.0.2.101
XCB-SNMP-MIB::peerInetAddressType  ipv4

おまけ

転送操作中の、パケットをキャプチャしてみました。

以下は、[Source host key]で[Query]を実行した時のキャプチャです。ssh-keyscanでホスト鍵を取得していることがわかります。

図24. キャプチャ1

以下は、[Finish]を実行後のキャプチャです。SSHで転送データが暗号化され安全に通信できていることがわかります。

図25. キャプチャ2

おわりに

いかがでしたでしょうか?

この機能を使用することで、既存のSSBから新しいSSBへ1ステップでログデータおよびコンフィグレーションを移行できることがわかりました。

SSBの機能

本記事で使用したSSBの機能は以下の通りです。

  • 既存の SSB からのログスペースとコンフィグレーションの転送

参考資料

サーチページの使い方の詳細については、syslog-ng Store Box 7 LTS管理者ガイドの「3.2.1.3 既存の SSB からのログスペースとコンフィグレーションの転送」を参照してください。

過去連載記事

「SIEMのコスト削減とパフォーマンス向上(誤検知防止)の技」連載記事リスト

「リモートアクセスログを調査」連載記事リスト

「syslog-ng Store Box大活用連載企画」連載記事リスト



SSBは、高信頼ログ管理アプライアンスです。様々なデバイスおよびアプリケーションからログメッセージを収集、分類、フィルタリング、正規化して安全に保存可能です。ログデータの信頼性を担保し、膨大なログが発生する高負荷環境、あるいはログロストが許されない企業・組織のログ管理に最適です。

syslog-ng Store Boxについての詳細は、製品紹介ページ・製品ガイドをご参照ください。

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

最新記事

おすすめ記事

  1. 特権アカウント管理の方法:Syteca を例とする実動作イメージ [PAM/PASM]

  2. ネットワークトラフィック解析による、ランサムウェアの早期検知

  3. 「Wiresharkでsyslogプロトコルパケットを覗く」syslog-ng Store Box活用連載企画vol.4

製品カテゴリー

JTC IT用語集
TOP