2021年7月1日木曜日

syslog-ng Store Box大活用連載企画第18回「バックアップリストア。システムデータおよびログデータをバックアップ、リストアしてみる!」

バックアップポリシー設定画面例

螺子です。SSBのバックアップはSSBのシステムデータのスナップショット、あるいは不具合発生時のリカバリに使用できるデータを作成します。

SSBはバックアップサーバーへシステムデータ、および保存されたログの自動バックアップを作成できます。


今回は、システムデータおよびログデータをバックアップ、リストアしてみます。





これまでの連載記事:



注意事項

  • ログデータがSSBのメモリにまだある場合は、バックアップサーバーにコピーされません。ハードディスクに書き込まれたログデータのみコピーされます。すべてのデータを確実にバックアップ(例えば、アップグレード前に)させるには、バックアッププロセスを開始する前にsyslog-ngをシャットダウンしてください([Basic Settings]>[System]>[Service control]で[Disable]をクリックします)。

  • ログデータリストア後にインデクサエラーが発生する場合があります。バックアップ中に、SSBのメモリに存在するログデータはインデックス付けされますが、インデックスはハードディスクにはなく、バックアップサーバーにコピーされない可能性があるためです。すべてのデータを確実にバックアップ(例えば、アップグレード前)するには、バックアッププロセスを開始する前にsyslog-ngをシャットダウンしてください([Basic Settings]>[System]>[Service control]で[Disable]をクリックします)。

  • システムデータのバックアップでは、syslog-ngとログスペースのサイズに関する統計情報はバックアップされません。その為、システムデータのリストア後、[Basic Settings]>[Dashboard]ページでバックアップ前のsyslog-ngとログスペースの統計情報は表示されません。

  • ハードウェアの交換などで、完全なバックアップからSSBのシステムデータおよびログデータをリストアする方法については、syslog-ng Store Box6 LTS管理者ガイドの「16.6 SSBのコンフィグレーションおよびデータのリストア」の手順に従ってください。

バックアップポリシーの作成

バックアップを設定するには、最初に、バックアップポリシーを作成します。バックアップポリシーはバックアップサーバーのアドレス、アクセスに使用するプロトコル、およびその他のパラメーターを定義します。

新しいバックアップポリシーを作成するには、[Policies]>[Backup & Archive/Cleanup]に移動し、[Backup policies]以下のボタンをクリックします。新しいバックアップポリシーを作成するための追加のフィールドが表示されます。

図1. [Backup & Archive/Cleanup]画面例

SSBはバックアップサーバーへのアクセスに"Rsync"、"SMB/CIFS"、および"NFS"プロトコルを使用して定義することができます。[Target settings]以下のラジオボタンで使用するプロトコルを選択します。 以下に各プロトコル選択時の画面例を示します。

図2. [Rsync over SSH]プロトコル設定画面例
図3. [SMB/CIFS]プロトコル設定画面例
図4. [NFS]プロトコル設定画面例

今回は、[SMB/CIFS]プロトコルを選択してバックアップポリシーを作成します。

バックアップポリシー名を入力し、[Start time]にバックアップを実行する時刻を入力します。[Target settings]セクションでバックアップサーバーの情報を入力します。[Send notification]セクションは、バックアップに関するe-mail通知を受信するかを決めます。[Send notification on errors only]は、エラーに関する通知のみ受信し、[Send notification on all events]は、すべてのイベントに関する通知を受信します。

[Commit]をクリックして、設定を保存します。

図5. [SMB/CIFS]プロトコル設定例

システムデータバックアップの設定

システムデータのバックアップを作成するには、バックアップポリシーを[System backup policy]に割り当てます。

[Basic Settings]>[Management]の[System backup]に移動し、[System backup policy]ドロップダウンリストから割り当てるバックアップポリシーを選択します。

[Commit]をクリックして、設定を保存します。

これにより、バックアップポリシーの[Start time]に設定した時刻に毎日、システムデータのバックアッププロセスが自動で開始されます。

図6. システムデータバックアップの設定例

システムデータバックアップおよびリストアの実行

システムデータのバックアップの実行

ここでは、上記で設定したスケジュールによる自動実行ではなく、[Backup now]をクリックして、マニュアルでシステムデータのバックアップを実行します。

確認メッセージには、[OK]をクリックします。

図7. システムデータバックアップ確認メッセージ

バックアッププロセスが開始されたことを確認して、[OK]をクリックします。

図8. バックアッププロセス開始メッセージ

今回は、バックアップポリシーでバックアップに関するe-mail通知を受信する設定を行っているので、バックアップが正常に終了すると、以下のようなメールを受信します。

図9. システムデータバックアップe-mail例

また、SSBのローカルログ(ログスペース名: "local")には、以下のようなログが記録されます。これらのログは検索式(検索ページの[Search expression]に)"program:ssb/backup"を入力することで検索できます。

図10. システムデータバックアップ成功時のログ例
INFO (root@localhost) Backup (system): Creating database dumps...
INFO (root@localhost) Backup (system): No database dumps created
INFO (root@localhost) Backup (system): Creating configuration bundle
INFO (root@localhost) Backup (system): Saving configuration bundle:
INFO (root@localhost) Backup (system): Backing up Reports
INFO (root@localhost) Backup (system): Backing up SQL databases
INFO (root@localhost) Backup (system): Backing up RRD files
INFO (root@localhost) Backup (system): Backing up Samba
INFO (root@localhost) Sending mail; to='<e-mail address>'
図11. システムデータバックアップ成功時のログ例(テキスト)

※バックアップポリシーでバックアップに関するe-mail通知を無効にしている場合、"Sending mail..."のログは出力されません。

※バックアップが終了したことを確実に確認するには、バックアップポリシーで"Send notification on all events"を有効にします。バックアップが終了した後にメールが送信されるからです。


バックアップ先には、以下のようにフォルダーが作成され、システムデータがバックアップがされたことがわかります。

図12. システムデータバックアップ後の作成フォルダー例

システムデータのリストア実行

次に、[Restore now]をクリックして、システムデータのリストアを実行します。

※システムデータのリストアは、コンフィグレーションをリストアしません。コンフィグレーションは、[Basic Settings]>[System]の[Import configuration]でインポートする必要があります。

※コンフィグレーションファイルは、システムバックアップの"config"フォルダー内に保存されます。([Basic Settings]>[System]>[Export configuration]で、すぐにコンフィグレーションをエクスポートすることもできます。)

確認メッセージには、[OK]をクリックします。

図13. システムデータリストア確認メッセージ例

リストアプロセスが開始されます。

図14. システムデータリストア処理中ウィンドウ

リストアプロセスが終了すると、終了メッセージが表示されるので、[OK]をクリックします。

図15. システムデータリストア終了メッセージ例

今回は、バックアップポリシーでバックアップに関するe-mail通知を受信する設定を行っているので、リストアが正常に終了すると、以下のようなメールを受信します。

図16. システムデータリストアe-mail例

また、SSBのローカルログ(ログスペース名: "local")には、以下のようなログが記録されます。これらのログは検索式(検索ページの[Search expression]に)"program:ssb/backup"を入力することで検索できます。

図17. システムデータリストア成功時のログ例
INFO (root@localhost) Backup (system): Restoring Reports
INFO (root@localhost) Backup (system): Restoring SQL databases
INFO (root@localhost) Backup (system): Restoring RRD files
INFO (root@localhost) Backup (system): Restoring Samba
INFO (root@localhost) Sending mail; to='<e-mail address>'
図18. システムデータリストア成功時のログ例(テキスト)

※バックアップポリシーでバックアップに関するe-mail通知を無効にしている場合、"Sending mail..."のログは出力されません。

※リストアが終了したことを確実に確認するには、バックアップポリシーで"Send notification on all events"を有効にします。リストアが終了した後にメールが送信されるからです。


ログデータバックアップの設定

ログデータのバックアップを作成するには、バックアップポリシーをログスペースに割り当てます。

[Log]>[Logspaces]に移動し、バックアップを取るログスペースを選択します。

[Policies]セクションの[Backup policy]ドロップダウンリストから割り当てるバックアップポリシーを選択します。

[Commit]をクリックして、設定を保存します。

これにより、バックアップポリシーの[Start time]に設定した時刻に毎日、ログデータのバックアッププロセスが自動で開始されます。

図19. ログスペースのバックアップの設定例

ログデータのバックアップおよびリストアの実行

ログデータのバックアップ実行

ここでも、上記で設定したスケジュールによる自動実行ではなく、マニュアルでログデータをバックアップするには、[Backup]または[Backup ALL]をクリックします。[Backup]は選択したログスペースのみバックアップを実行し、[Backup ALL]は、バックアップポリシーが適用されているすべてのログスペースをバックアップします。

図20. [Backup]または[Backup ALL]例

ここでは、"local"ログスペースに、バックアップポリシーを割り当て、[Backup]をクリックして"local"ログスペースのログデータをバックアップします

確認メッセージには、[OK]をクリックします。

図21. ログデータバックアップ確認メッセージ例

バックアッププロセスが開始されたことを確認して、[OK]をクリックします。

図22. バックアッププロセス開始メッセージ例

今回は、バックアップポリシーでバックアップに関するe-mail通知を受信する設定を行っているので、バックアップが正常に終了すると、以下のようなメールを受信します。

図23. ログデータバックアップe-mail例

なお、ログデータのバックアップに関するログはローカルログ(ログスペース名: "local")に出力されません。バックアップに関するe-mail通知を有効にしている場合、"Sending mail..."のログのみが出力されます。

※バックアップが終了したことを確実に確認するには、バックアップポリシーで"Send notification on all events"を有効にします。バックアップが終了した後にメールが送信されるからです。

図24. ログデータバックアップ成功時のログ例

バックアップ先には、以下のようなフォルダーが作成されます。

図25. ログデータバックアップ後の作成フォルダー例

"local"という名前のファイルをテキストエディタで開くと、"20996373924899c4736c584"という数値が表示されます。これは、"local"ログスペースのIDで、ログデータのバックアップは、このIDのフォルダー内にバックアップされます。

図26. ログスペースID例

IDのフォルダーの中を見ています。2021(<YYYY>)フォルダー以下に<MM-DD>(例、03-13)フォルダーが作成され、ログデータがバックアップされていることがわかります。

図27. ログデータバックアップフォルダー例

ログデータのリストア実行

次に、[Restore]をクリックして、ログデータのリストアを実行します。

確認メッセージには、[OK]をクリックします。

図28. ログデータリストア確認メッセージ例

リストアプロセスが開始されます。

図29. ログデータリストア処理中ウィンドウ

リストアプロセスが終了すると、終了メッセージが表示されるので、[OK]をクリックします。

図30. ログデータリストア終了メッセージ例

今回は、バックアップポリシーでバックアップに関するe-mail通知を受信する設定を行っているので、リストアが正常に終了すると、以下のようなメールを受信します。

図31. ログデータリストアe-mail例

なお、ログデータのリストアに関するログはローカルログ(ログスペース名: "local")に出力されません。バックアップに関するe-mail通知を有効にしている場合、"Sending mail..."のログのみが出力されます。

※リストアが終了したことを確実に確認するには、バックアップポリシーで"Send notification on all events"を有効にします。リストアが終了した後にメールが送信されるからです。

図32. ログデータリストア成功時のログ例


その他

■バックアップに失敗した場合、以下のようなエラーメールを受信します(バックアップポリシーでバックアップに関するe-mail通知を受信する設定を行っている場合)。

※エラーが発生した場合、ネットワーク接続、アクセス権限あるいは共有名、ユーザー名およびパスワードなどを確認してください。

図35. バックアップエラーログ(その1)例
図36. バックアップエラーログ(その2)例

また、これらのエラーログはSSBのローカルログ(ログスペース名: "local")にも出力されます。検索式(検索ページの[Search expression]に)"program:ssb/backup ERROR"を入力することで検索できます。

図37. バックアップエラー時ログ例

ERROR (root@localhost) Error performing backup or restore - rsync returned failure; rc='23', out=''local' rsync: mkstemp "/opt/ssb/mnt/45970019889793668626048260222e23/.local.OM9Nq0" failed: Permission denied (13) rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1196) [sender=3.1.2]'
ERROR (root@localhost) Backup error, cannot initialize backup method - Error mounting remote server on SMB
図38. バックアップエラー時ログ例(テキスト)

※SSBのシステム監視設定を適切に行っている場合、これらのエラーに関して、snmpトラップまたは(バックアップポリシーでバックアップに関するe-mail通知とは別に)メールで通知されます。


■ログデータのバックアップは、バックアップ実行時点のローカルディスクに保存されているデータのコピーです。アーカイブあるいはクリーンアップにより、ローカルディスクから削除または移動したログデータは、バックアップサーバーから削除され、バックアップサーバーには保持されません。

例えば、図27の状態以降にアーカイブ/クリーンアップで、"03-13","03-14","03-15"のログデータがアーカイブまたはクリーンアップされた場合、"03-13","03-14","03-15"のログデータはバックアップ先から削除され、保持されません。

図39. アーカイブ実行後のバックアップデータ例


参考資料

詳細については、syslog-ng Store Box6 LTS管理者ガイドの「4.7 データとコンフィグレーションのバックアップ」および「16.6 SSBのコンフィグレーションおよびデータのリストア」をご参照ください。

バックアップとアーカイブの違いについては、過去記事「SSBバックアップとアーカイブの違い」もご参照ください。

SSBのシステム監視設定の詳細については、syslog-ng Store Box6 LTS管理者ガイドの「4.6 SSBのシステム監視設定」を参照してください。または、過去記事「syslog-ng Store Box大活用連載企画第12回「SSBの監視とアラート!SNMPマネージャーで監視およびSNMPトラップを受信してみる」 もご参照ください。



いかがでしたでしょうか。今回は、バックアップ機能について紹介しました。


それでは、次回の連載記事をお楽しみに!



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


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


評価版のダウンロード

問合わせ