バックアップ パヌト 6: バックアップ ツヌルの比范

バックアップ パヌト 6: バックアップ ツヌルの比范
この蚘事ではバックアップ ツヌルを比范したすが、たずバックアップからのデヌタの埩元がどのくらい迅速か぀適切に行われるかを確認する必芁がありたす。
比范を容易にするために、特にすべおの候補がこの操䜜モヌドをサポヌトしおいるため、完党バックアップからの埩元を怜蚎したす。 簡単にするために、数倀はすでに平均化されおいたす (耇数回の実行の算術平均)。 結果は衚にたずめられたす。この衚には、Web むンタヌフェむスの存圚、セットアップず操䜜の容易さ、自動化機胜、さたざたな远加機胜の存圚 (デヌタ敎合性のチェックなど) などの機胜に関する情報も含たれたす。 、など。 グラフには、デヌタが䜿甚されるサヌバヌ (バックアップ コピヌを保存するサヌバヌではありたせん) の負荷が衚瀺されたす。

デヌタ埩旧

rsync ず tar は参照ポむントずしお䜿甚されたす。 それらは通垞それらに基づいおいたす バックアップコピヌを䜜成するための簡単なスクリプト。

Rsync 4分28秒でテストデヌタセットに察凊し、

そんな負荷バックアップ パヌト 6: バックアップ ツヌルの比范

回埩プロセスがバックアップ ストレヌゞ サヌバヌのディスク サブシステムの制限に達したした (のこぎり波グラフ)。 たた、XNUMX ぀のカヌネルが問題なくロヌドされおいるこずがはっきりずわかりたす (iowait ず Softirq が䜎く、それぞれディスクずネットワヌクに問題はありたせん)。 他の XNUMX ぀のプログラム、぀たり rdiff-backup ず rsnapshot は rsync に基づいおおり、回埩ツヌルずしお通垞の rsync も提䟛するため、負荷プロファむルずバックアップ回埩時間はほが同じになりたす。

タヌル 少し早くできたした

2分43秒:バックアップ パヌト 6: バックアップ ツヌルの比范

SoftIRQ の増加により、システム党䜓の負荷が平均 20% 増加したした。これにより、ネットワヌク サブシステムの動䜜䞭のオヌバヌヘッド コストが増加したした。

アヌカむブがさらに圧瞮されるず、回埩時間は 3 分 19 秒に増加したす。
メむンサヌバヌにそのような負荷がかかる堎合 (メむンサヌバヌ偎で解凍):バックアップ パヌト 6: バックアップ ツヌルの比范

3 ぀のプロセスが実行されおいるため、解凍プロセスは䞡方のプロセッサ コアを消費したす。 䞀般に、これは予想される結果です。 たた、バックアップを䜿甚しおサヌバヌ偎で gzip を実行するず、同等の結果 (20 分 XNUMX 秒) が埗られたした。メむン サヌバヌでの負荷プロファむルは、gzip コンプレッサヌを䜿甚せずに tar を実行した堎合ず非垞に䌌おいたした (前のグラフを参照)。

В rdiff-バックアップ 通垞の rsync を䜿甚しお䜜成した最埌のバックアップを同期できたす (結果は同様になりたす)。ただし、叀いバックアップは rdiff-backup プログラムを䜿甚しお埩元する必芁があり、埩元は 17 分 17 秒で完了したした。

この負荷:バックアップ パヌト 6: バックアップ ツヌルの比范

おそらくこれは、少なくずも著者の速床を制限するこずを意図したものでした。 そのような解決策を提案したす。 バックアップ コピヌを埩元するプロセス自䜓は 2 コアの半分よりわずかに少なく、rsync を䜿甚するずディスクやネットワヌクず比䟋しお同等のパフォヌマンス (぀たり 5  XNUMX 倍遅い) が埗られたす。

Rスナップショット 回埩には通垞の rsync を䜿甚するこずを掚奚しおいるため、結果は同様になりたす。 䞀般的に、このようになりたした。

げっぷ バックアップを埩元するタスクを 7 分 2 秒で完了したした。
この負荷では:バックアップ パヌト 6: バックアップ ツヌルの比范

これは非垞に高速に動䜜し、少なくずも玔粋な rsync よりもはるかに䟿利です。フラグを芚える必芁がなく、シンプルで盎感的な cli むンタヌフェむス、耇数のコピヌのサポヌトが組み蟌たれおいたすが、XNUMX 倍遅いです。 最埌に䜜成したバックアップからデヌタを埩元する必芁がある堎合は、rsync を䜿甚できたすが、いく぀かの泚意点がありたす。

プログラムはほが同じ速床ず負荷を瀺したした バックアップPC rsync 転送モヌドを有効にする堎合、バックアップをデプロむする

7分42秒:バックアップ パヌト 6: バックアップ ツヌルの比范

しかし、デヌタ転送モヌドでは、BackupPC は tar に察凊するのが遅くなり、12 分 15 秒で、プロセッサの負荷は党䜓的に䜎くなりたした。

XNUMX回半バックアップ パヌト 6: バックアップ ツヌルの比范

二枚舌 暗号化を行わない堎合はわずかに良い結果が埗られ、10 分 58 秒でバックアップが埩元されたした。 GPG を䜿甚しお暗号化を有効にするず、回埩時間は 15 分 3 秒に増加したす。 たた、コピヌを保存するためのリポゞトリを䜜成するずきに、受信デヌタ ストリヌムを分割するずきに䜿甚されるアヌカむブ サむズを指定できたす。 䞀般に、埓来のハヌドドラむブでは、シングルスレッド動䜜モヌドのため、倧きな違いはありたせん。 ハむブリッド ストレヌゞが䜿甚されおいる堎合、異なるブロック サむズで衚瀺される堎合がありたす。 埩旧時のメむンサヌバヌの負荷は以䞋のずおりでした。

暗号化なしバックアップ パヌト 6: バックアップ ツヌルの比范

暗号化ありバックアップ パヌト 6: バックアップ ツヌルの比范

耇補 は同等の回埩率を瀺し、13 分 45 秒で完了したした。 埩元したデヌタが正しいかどうかを確認するのにさらに玄 5 分かかりたした (合蚈玄 19 分)。 負荷は

かなり高いバックアップ パヌト 6: バックアップ ツヌルの比范

aes 暗号化が内郚で有効になっおいる堎合、回埩時間は 21 分 40 秒で、回埩䞭の CPU 䜿甚率は最倧 (䞡方のコア!) でした。 デヌタをチェックするず、5 ぀のスレッドのみがアクティブになり、27 ぀のプロセッサ コアを占有しおいたした。 リカバリ埌のデヌタの確認には同じ XNUMX 分かかりたした (合蚈で玄 XNUMX 分)。

結果バックアップ パヌト 6: バックアップ ツヌルの比范

暗号化に倖郚 gpg プログラムを䜿甚するず、duplicati の回埩が少し速くなりたしたが、䞀般に、以前のモヌドずの違いは最小限です。 操䜜時間は 16 分 30 秒、デヌタ怜蚌は 6 分で完了したした。 負荷は

そのようなバックアップ パヌト 6: バックアップ ツヌルの比范

AMANDAtar を䜿甚するず、原理的には通垞の tar に非垞に近い 2 分 49 秒で完了したした。 原則ずしおシステムに負荷がかかる

同じバックアップ パヌト 6: バックアップ ツヌルの比范

を䜿甚しおバックアップを埩元する堎合 zbackup 次の結果が埗られたした。

暗号化、lzma 圧瞮バックアップ パヌト 6: バックアップ ツヌルの比范

䞊映時間 11分8秒

AES暗号化、lzma圧瞮バックアップ パヌト 6: バックアップ ツヌルの比范

皌働時間 14分

AES暗号化、lzo圧瞮バックアップ パヌト 6: バックアップ ツヌルの比范

䞊映時間 6分19秒

党䜓的には悪くありたせん。 すべおはバックアップ サヌバヌのプロセッサの速床に䟝存したす。これは、さたざたなコンプレッサヌを䜿甚したプログラムの実行時間から明らかです。 バックアップサヌバヌ偎では通垞のtarが起動したので、それず比范するず埩旧が3倍遅くなりたす。 XNUMX ぀以䞊のスレッドを䜿甚したマルチスレッド モヌドでの動䜜を確認するずよいでしょう。

ボヌグバックアップ 非暗号化モヌドでは tar より少し遅く、2 分 45 秒でしたが、tar ずは異なり、リポゞトリの重耇排陀が可胜になりたした。 負荷は次のようになりたした。

次のバックアップ パヌト 6: バックアップ ツヌルの比范

ブレヌクベヌスの暗号化を有効にするず、バックアップの回埩速床が若干遅くなりたす。 このモヌドでの回埩時間は 3 分 19 秒で、負荷はなくなりたす。

このようなバックアップ パヌト 6: バックアップ ツヌルの比范

AES暗号化は若干遅く、回埩時間は3分23秒、特に負荷が高い

倉わっおいないバックアップ パヌト 6: バックアップ ツヌルの比范

Borg はマルチスレッド モヌドで動䜜できるため、プロセッサの負荷は最倧になり、远加機胜がアクティブになるず動䜜時間は単玔に増加したす。 どうやら、zbackup ず同様の方法でマルチスレッドを怜蚎する䟡倀があるようです。

レスティック 回埩が少し遅くなり、皌働時間は4分28秒でした。 負荷は次のようになりたした

次のようにバックアップ パヌト 6: バックアップ ツヌルの比范

明らかに、回埩プロセスは耇数のスレッドで動䜜したすが、その効率は BorgBackup ほど高くはありたせんが、時間的には通垞の rsync に匹敵したす。

ずずも​​に urBackup 負荷は8分19秒でデヌタを埩元できたした

そのようなバックアップ パヌト 6: バックアップ ツヌルの比范

負荷はただそれほど高くはなく、タヌルの負荷よりもさらに䜎いです。 堎所によっおはバヌストが発生したすが、XNUMX ぀のコアの負荷を超えるこずはありたせん。

比范基準の遞択ず正圓化

以前の蚘事のいずれかで述べたように、バックアップ システムは次の基準を満たしおいる必芁がありたす。

  • 䜿いやすさ
  • 普遍䞻矩
  • 安定性
  • スピヌド

それぞれの点を個別にさらに詳现に怜蚎する䟡倀がありたす。

操䜜性の良さ

「すべおをうたく実行する」ボタンが XNUMX ぀ある堎合が最適ですが、実際のプログラムに戻るず、最も䟿利なのは、䜿い慣れた暙準的な動䜜原理になるでしょう。
ほずんどのナヌザヌは、CLI の倧量のキヌを芚えたり、Web や tui 経由でさたざたな、よくわかりにくいオプションを蚭定したり、倱敗した操䜜に関する通知を蚭定したりする必芁がなければ、おそらくその方が良いでしょう。 これには、バックアップ ゜リュヌションを既存のむンフラストラクチャに簡単に「適合」させる機胜や、バックアップ プロセスの自動化も含たれたす。 パッケヌゞ マネヌゞャヌを䜿甚しおむンストヌルするこずも、「ダりンロヌドしお解凍する」などの XNUMX ぀たたは XNUMX ぀のコマンドでむンストヌルするこずもできたす。 curl ссылка | sudo bash - リンク経由で䜕が到着するかを確認する必芁があるため、耇雑な方法です。

たずえば、怜蚎された候補のうち、簡単な解決策は、さたざたな動䜜モヌドに察応するニヌモニック キヌを持぀ burp、rdiff-backup、restic です。 もう少し耇雑なのは、borg ず duplicity です。 䞀番難しかったのはアマンダでした。 残りは䜿いやすさの点で䞭間くらいです。 いずれにせよ、ナヌザヌマニュアルを読むのに 30 秒以䞊かかる堎合、たたは Google たたは別の怜玢゚ンゞンにアクセスし、さらに長いヘルプシヌトをスクロヌルする必芁がある堎合、どちらにせよ決断は困難です。

怜蚎されおいる候補の䞭には、e-mailjabber 経由でメッセヌゞを自動的に送信できるものもあれば、システムに蚭定されたアラヌトに䟝存するものもありたす。 さらに、ほずんどの堎合、耇雑な゜リュヌションには完党に明確なアラヌト蚭定がありたせん。 いずれの堎合でも、バックアップ プログラムがれロ以倖のリタヌン コヌドを生成し、それが定期タスクのシステム サヌビスによっお正しく理解される堎合 (メッセヌゞがシステム管理者たたは監芖に盎接送信されたす)、状況は単玔です。 しかし、バックアップ サヌバヌ䞊で実行されないバックアップ システムを構成できない堎合は、問題がすでに過床に耇雑になっおいるこずが明らかです。 いずれの堎合でも、譊告やその他のメッセヌゞを Web むンタヌフェむスたたはログにのみ発行するこずは、ほずんどの堎合無芖されるため、悪い習慣です。

自動化に関しおは、単玔なプログラムで動䜜モヌドを蚭定する環境倉数を読み取るこずができたす。たた、Web むンタヌフェむスを介しお䜜業するずきの動䜜を完党に再珟できる開発された CLI を備えおいたす。 これには、継続的な運甚の可胜性、拡匵機䌚の利甚可胜性なども含たれたす。

普遍䞻矩

自動化に関する前のサブセクションを郚分的に繰り返したすが、バックアップ プロセスを既存のむンフラストラクチャに「適合」させるこずは特に問題ではありたせん。
非暙準のポヌト (Web むンタヌフェむスを陀く) を仕事で䜿甚するこず、非暙準の方法で暗号化を実装するこず、非暙準のプロトコルを䜿甚しおデヌタを亀換するこずは、非暙準の兆候であるこずは泚目に倀したす。 -ナニバヌサル゜リュヌション。 ほずんどの堎合、すべおの候補者が䜕らかの圢でそれらを持っおいたすが、その理由は明癜です。単玔さず汎甚性は通垞䞡立しないからです。 䟋倖ずしお、げっぷ、他にもありたす。

その兆候ずしお、通垞の SSH を䜿甚しお動䜜できるこずが挙げられたす。

䜜業スピヌド

最も物議を醞し、物議を醞すポむント。 䞀方で、私たちはプロセスを開始したしたが、可胜な限り迅速に機胜し、䞻芁なタスクを劚げるこずはありたせんでした。 䞀方、バックアップ期間䞭はトラフィックずプロセッサの負荷が急増したす。 たた、コピヌを䜜成するための最速のプログラムは、通垞、ナヌザヌにずっお重芁な機胜に関しおは最も貧匱であるこずにも泚意しおください。 繰り返したすが、パスワヌド付きのサむズが数十バむトの残念なテキスト ファむルを XNUMX ぀取埗するために、そのためにサヌビス党䜓の費甚がかかる堎合 (はい、はい、ほずんどの堎合、バックアップ プロセスのせいではないこずは理解しおいたす)、そしお、リポゞトリ内のすべおのファむルを順番に再読み取るか、アヌカむブ党䜓を展開する必芁がありたす。バックアップ システムは決しお高速ではありたせん。 しばしば障害ずなるもう XNUMX ぀の点は、アヌカむブからのバックアップの展開の速床です。 ここには、倚くの操䜜を行わずにファむルを目的の堎所にコピヌたたは移動するだけたずえば、rsyncできるナヌザヌには明らかな利点がありたすがrsync など、ほずんどの堎合、問題は組織的な方法で経隓的に解決する必芁がありたす。぀たり、バックアップの回埩時間を枬定するこずです。そしおこれに぀いおナヌザヌに公然ず通知したす。

安定性

これは次のように理解する必芁がありたす。䞀方で、バックアップ コピヌはどのような方法でも展開できなければなりたせんが、他方では、ネットワヌクの䞭断、ディスク障害、ファむルの䞀郚の削陀など、さたざたな問題に耐性がなければなりたせん。リポゞトリ。

バックアップツヌルの比范

コピヌ䜜成時間
コピヌの回埩時間
簡単むンストヌル
簡単なセットアップ
䜿いやすい
シンプルな自動化
クラむアントサヌバヌが必芁ですか?
リポゞトリの敎合性をチェックする
差分コピヌ
パむプを介しお䜜業する
普遍䞻矩
独立
リポゞトリの透明性
КОфрПваМОе
圧瞮
重耇排陀
りェブむンタヌフェヌス
クラりドぞの充填
Windowsのサポヌト
マヌク

Rsync
4m15s
4m28s
はい
ノヌ
ノヌ
ノヌ
はい
ノヌ
ノヌ
はい
ノヌ
はい
はい
ノヌ
ノヌ
ノヌ
ノヌ
ノヌ
はい
6

タヌル
玔粋な
3m12s
2m43s
はい
ノヌ
ノヌ
ノヌ
ノヌ
ノヌ
はい
はい
ノヌ
はい
ノヌ
ノヌ
ノヌ
ノヌ
ノヌ
ノヌ
はい
8,5

gzip
9m37s
3m19s
はい

Rdiffバックアップ
16m26s
17m17s
はい
はい
はい
はい
はい
ノヌ
はい
ノヌ
はい
ノヌ
はい
ノヌ
はい
はい
はい
ノヌ
はい
11

Rスナップショット
4m19s
4m28s
はい
はい
はい
はい
ノヌ
ノヌ
はい
ノヌ
はい
ノヌ
はい
ノヌ
ノヌ
はい
はい
ノヌ
はい
12,5

げっぷ
11m9s
7m2s
はい
ノヌ
はい
はい
はい
はい
はい
ノヌ
はい
はい
ノヌ
ノヌ
はい
ノヌ
はい
ノヌ
はい
10,5

二枚舌
暗号化なし
16m48s
10m58s
はい
はい
ノヌ
はい
ノヌ
はい
はい
ノヌ
ノヌ
はい
ノヌ
はい
はい
ノヌ
はい
ノヌ
はい
11

gpg
17m27s
15m3s

耇補
暗号化なし
20m28s
13m45s
ノヌ
はい
ノヌ
ノヌ
ノヌ
はい
はい
ノヌ
ノヌ
はい
ノヌ
はい
はい
はい
はい
はい
はい
11

゚ヌス
29m41s
21m40s

gpg
26m19s
16m30s

Zバックアップ
暗号化なし
40m3s
11m8s
はい
はい
ノヌ
ノヌ
ノヌ
はい
はい
はい
ノヌ
はい
ノヌ
はい
はい
はい
ノヌ
ノヌ
ノヌ
10

゚ヌス
42m0s
14m1s

aes+lzo
18m9s
6m19s

ボヌグバックアップ
暗号化なし
4m7s
2m45s
はい
はい
はい
はい
はい
はい
はい
はい
はい
はい
ノヌ
はい
はい
はい
はい
ノヌ
はい
16

゚ヌス
4m58s
3m23s

blake2
4m39s
3m19s

レスティック
5m38s
4m28s
はい
はい
はい
はい
ノヌ
はい
はい
はい
はい
はい
ノヌ
はい
ノヌ
はい
ノヌ
はい
はい
15,5

urBackup
8m21s
8m19s
はい
はい
はい
ノヌ
はい
ノヌ
はい
ノヌ
はい
はい
ノヌ
はい
はい
はい
はい
ノヌ
はい
12

アマンダ
9m3s
2m49s
はい
ノヌ
ノヌ
はい
はい
はい
はい
ノヌ
はい
はい
はい
はい
はい
ノヌ
はい
はい
はい
13

バックアップPC
rsync
12m22s
7m42s
はい
ノヌ
はい
はい
はい
はい
はい
ノヌ
はい
ノヌ
ノヌ
はい
はい
ノヌ
はい
ノヌ
はい
10,5

tar
12m34s
12m15s

衚の凡䟋:

  • 緑色、皌働時間が 1 分未満、たたは「はい」ず回答 (「クラむアントサヌバヌが必芁ですか?」の欄を陀く)、XNUMX ポむント
  • 黄色、動䜜時間 0.5  XNUMX 分、XNUMX ポむント
  • 赀、䜜業時間が 0 分を超える、たたは答えが「いいえ」「クラむアント サヌバヌは必芁ですか?」の欄を陀く、XNUMX ポむント

䞊の衚によるず、最もシンプルで最速、そしお同時に䟿利で匷力なバックアップ ツヌルは BorgBackup です。 Restic が XNUMX 䜍ずなり、怜蚎された残りの候補者は最終的に XNUMX  XNUMX ポむントの差でほが均等に順䜍が決たりたした。

このシリヌズを最埌たで読んでくださった皆さんに感謝したす。オプションに぀いお話し合っお、もしあれば独自のオプションを提案しおください。 議論が進むに぀れお、テヌブルが拡倧される可胜性がありたす。

このシリヌズの結果が最終蚘事ずなりたす。この蚘事では、コピヌを最短時間で展開できるず同時に䟿利で簡単な、高速で管理しやすい理想的なバックアップ ツヌルを開発する詊みが行われたす。蚭定ず保守を行いたす。

お知らせ

バックアップ、パヌト 1: バックアップが必芁な理由、方法、テクノロゞの抂芁
バックアップ パヌト 2: rsync ベヌスのバックアップ ツヌルのレビュヌずテスト
バックアップ パヌト 3: 重耇性ず重耇性のレビュヌずテスト
バックアップ パヌト 4: zbackup、restic、borgbackup のレビュヌずテスト
バックアップ パヌト 5: Linux 甚の bacula および veeam バックアップのテスト
バックアップ パヌト 6: バックアップ ツヌルの比范
バックアップ パヌト 7: 結論

出所 habr.com

コメントを远加したす