web-dev-qa-db-ja.com

Bacula:最初のフルバックアップジョブに時間がかかりすぎる

私は、サラリーマンのデータのバックアップを行うためにBacula(v.5.0.2)を選択しました。

DirectorとStorageDaemonは、ドイツの大手ホスティング会社から借りたDebianベースのルートサーバー(SERVER)で実行されます。

すべての貴重なデータ、したがってBaculaのファイルデーモン(CLIENT)は、サイトに配置され、SOHOルーター(非慢性的にお金が不足している営利団体)。

さらに、CLIENTのインターネット接続はISPによって24時間ごとに切断されますおよびIPは変更されます時々です。

基本的なインフラストラクチャをセットアップし、ファイルのバックアップと復元のテストに成功しました。しかし、自動化されたジョブを定義するときが来たので、頭を動かすことができないという問題に直面しています。

  • 問題

    私がサラリーマンごとに仕事をしたいと思っていて、10GB前後の重さの彼のSambaシェアをバックアップする必要があると仮定します。 Baculaは最初からフルバックアップを実行する必要があるため、バックアップレベルは重要ではありません。

    しかし、この最初の完全バックアップは、強制的な切断によってジョブが役に立たなくなる前に、オフィスのネットワークを通過することはありません。

  • 質問

    複数のジョブ(およびファイルセット)を設定する以外に、初期ワークロードを小さな画像に分割する方法はありますか?

    または、実行中のジョブを何らかの方法で一時停止および再開して、避けられない接続損失を克服することは可能ですか?

    私がそれについて考えなかった他の何かが役立つかもしれませんか?

1
aefxx

バックアップには、バックアップするデータに比例した時間がかかります-10Gのデータを移動する必要がある場合は、ある程度の時間がかかります(ネットワークリンクの速度によって決定される時間)。

さらに、baculaは、ネットワーク接続が信頼できることを前提としています。接続が切断されることは想定されていません。率直に言って、これはBacula側の合理的な前提です。

[〜#〜]適切な[〜#〜]解決策は、ISPを変更することです。
率直に言って、ネットワーク接続が説明したほど信頼性が低く(24時間ごとに切断されます!)、100%無料で接続できない場合は、多分多額の支払いが必要です。


適切なソリューションを実装できない場合は、クライアントサイトでローカルストレージデーモンを実行し、そこでディスクにバックアップするのが最善の方法です。
次に、 rsync のようなツールを使用して、仮想テープファイルを別の場所にコピーできます。

このソリューションの主な欠点は、バックアップするために(少なくとも)追加のディスクが必要であり、rsyncジョブを管理する必要があることです(これはBaculaのRunAfterBackupスクリプトで実行できます) )。
ニーズによっては、追加のディスクとしてUSBハードドライブで十分な場合があります。


あなたがあなたの質問で説明した他の選択肢は欠陥があるか不可能です。
具体的には、Baculaにはバックアップを「一時停止」するという概念がなく、バックアップを複数のジョブに分割する(分割する唯一の方法)ということは、全体ではなくサブジョブを失敗させることを意味します- -これを行っても、バックアップが正常/一貫性のある状態に復元されない可能性があるため、実際には問題に対処していません。

1
voretaq7