Artikel ini akan membandingkan alat sandaran, tetapi pertama sekali anda harus mengetahui seberapa cepat dan baik alat tersebut mengatasi memulihkan data daripada sandaran.
Untuk memudahkan perbandingan, kami akan mempertimbangkan untuk memulihkan daripada sandaran penuh, terutamanya kerana semua calon menyokong mod operasi ini. Untuk kesederhanaan, nombor sudah dipuratakan (min aritmetik beberapa larian). Hasilnya akan diringkaskan dalam jadual, yang juga akan mengandungi maklumat tentang keupayaan: kehadiran antara muka web, kemudahan persediaan dan operasi, keupayaan untuk mengautomasikan, kehadiran pelbagai ciri tambahan (contohnya, menyemak integriti data) , dan lain-lain. Graf akan menunjukkan beban pada pelayan di mana data akan digunakan (bukan pelayan untuk menyimpan salinan sandaran).
Pemulihan data
rsync dan tar akan digunakan sebagai titik rujukan sejak itu
Rsync menghadapi set data ujian dalam 4 minit dan 28 saat, menunjukkan
beban sedemikian
Proses pemulihan mencapai had subsistem cakera pelayan storan sandaran (graf gigi gergaji). Anda juga boleh melihat dengan jelas pemuatan satu kernel tanpa sebarang masalah (iowait rendah dan softirq - tiada masalah dengan cakera dan rangkaian, masing-masing). Memandangkan dua program lain, iaitu rdiff-backup dan rsnapshot, adalah berdasarkan rsync dan juga menawarkan rsync biasa sebagai alat pemulihan, mereka akan mempunyai kira-kira profil beban dan masa pemulihan sandaran yang sama.
Tar menyelesaikannya dengan lebih cepat
2 minit dan 43 saat:
Jumlah beban sistem adalah lebih tinggi secara purata sebanyak 20% disebabkan oleh peningkatan softirq - kos overhed semasa operasi subsistem rangkaian meningkat.
Jika arkib dimampatkan lagi, masa pemulihan meningkat kepada 3 minit 19 saat.
dengan beban sedemikian pada pelayan utama (membongkar di sisi pelayan utama):
Proses penyahmampatan mengambil kedua-dua teras pemproses kerana terdapat dua proses yang sedang berjalan. Secara umum, ini adalah hasil yang diharapkan. Selain itu, hasil yang setanding (3 minit dan 20 saat) diperoleh apabila menjalankan gzip pada bahagian pelayan dengan sandaran; profil beban pada pelayan utama adalah sangat serupa dengan menjalankan tar tanpa pemampat gzip (lihat graf sebelumnya).
Π sandaran rdiff anda boleh menyegerakkan sandaran terakhir yang anda buat menggunakan rsync biasa (hasilnya akan serupa), tetapi sandaran yang lebih lama masih perlu dipulihkan menggunakan program sandaran rdiff, yang menyelesaikan pemulihan dalam 17 minit dan 17 saat, menunjukkan
beban ini:
Mungkin ini bertujuan, sekurang-kurangnya untuk mengehadkan kelajuan pengarang
Snapshot Untuk pemulihan, ia mencadangkan menggunakan rsync biasa, jadi hasilnya akan serupa. Secara umum, ini adalah bagaimana ia ternyata.
Sendawa Saya menyelesaikan tugas memulihkan sandaran dalam masa 7 minit dan 2 saat dengan
dengan beban ini:
Ia berfungsi dengan cepat, dan sekurang-kurangnya lebih mudah daripada rsync tulen: anda tidak perlu mengingati sebarang bendera, antara muka cli yang mudah dan intuitif, sokongan terbina dalam untuk berbilang salinan - walaupun ia dua kali lebih perlahan. Jika anda perlu memulihkan data daripada sandaran terakhir yang anda buat, anda boleh menggunakan rsync, dengan beberapa kaveat.
Program ini menunjukkan kelajuan dan beban yang lebih kurang sama BackupPC apabila mendayakan mod pemindahan rsync, gunakan sandaran untuk
7 minit dan 42 saat:
Tetapi dalam mod pemindahan data, BackupPC mengatasi tar dengan lebih perlahan: dalam 12 minit dan 15 saat, beban pemproses biasanya lebih rendah
satu setengah kali:
Bermuka dua tanpa penyulitan menunjukkan hasil yang lebih baik sedikit, memulihkan sandaran dalam 10 minit dan 58 saat. Jika anda mengaktifkan penyulitan menggunakan gpg, masa pemulihan meningkat kepada 15 minit dan 3 saat. Selain itu, apabila membuat repositori untuk menyimpan salinan, anda boleh menentukan saiz arkib yang akan digunakan apabila memisahkan aliran data masuk. Secara umum, pada pemacu keras konvensional, juga disebabkan oleh mod operasi satu benang, tidak banyak perbezaan. Ia mungkin muncul pada saiz blok yang berbeza apabila storan hibrid digunakan. Beban pada pelayan utama semasa pemulihan adalah seperti berikut:
tiada penyulitan
dengan penyulitan
Gandakan menunjukkan kadar pemulihan yang setanding, menyelesaikannya dalam 13 minit dan 45 saat. Ia mengambil masa kira-kira 5 minit lagi untuk menyemak ketepatan data yang dipulihkan (jumlah kira-kira 19 minit). Beban itu
agak tinggi:
Apabila penyulitan aes didayakan secara dalaman, masa pemulihan ialah 21 minit 40 saat, dengan penggunaan CPU pada tahap maksimum (kedua-dua teras!) semasa pemulihan; Semasa menyemak data, hanya satu utas yang aktif, menduduki satu teras pemproses. Menyemak data selepas pemulihan mengambil masa 5 minit yang sama (jumlah hampir 27 minit).
Keputusan
duplicati adalah lebih pantas sedikit dengan pemulihan apabila menggunakan program gpg luaran untuk penyulitan, tetapi secara amnya perbezaan daripada mod sebelumnya adalah minimum. Masa operasi ialah 16 minit 30 saat, dengan pengesahan data dalam 6 minit. Beban itu
seperti:
Amanda, menggunakan tar, menyelesaikannya dalam 2 minit 49 saat, yang, pada dasarnya, sangat hampir dengan tar biasa. Beban pada sistem pada dasarnya
sama:
Apabila memulihkan sandaran menggunakan zbackup keputusan berikut diperolehi:
penyulitan, pemampatan lzma
Masa berjalan 11 minit dan 8 saat
penyulitan AES, pemampatan lzma
Masa operasi 14 minit
penyulitan AES, pemampatan lzo
Masa berjalan 6 minit, 19 saat
Secara keseluruhan, tidak teruk. Ia semua bergantung pada kelajuan pemproses pada pelayan sandaran, yang dapat dilihat dengan jelas dari masa berjalan program dengan pemampat yang berbeza. Di bahagian pelayan sandaran, tar biasa telah dilancarkan, jadi jika anda membandingkannya dengannya, pemulihan adalah 3 kali lebih perlahan. Ia mungkin bernilai menyemak operasi dalam mod berbilang benang, dengan lebih daripada dua benang.
BorgBackup dalam mod tidak disulitkan ia adalah sedikit lebih perlahan daripada tar, dalam 2 minit 45 saat, bagaimanapun, tidak seperti tar, ia menjadi mungkin untuk menyahduplikasi repositori. Beban itu ternyata
yang berikut:
Jika anda mendayakan penyulitan berasaskan blake, kelajuan pemulihan sandaran adalah lebih perlahan. Masa pemulihan dalam mod ini ialah 3 minit 19 saat, dan beban telah hilang
seperti ini:
Penyulitan AES sedikit perlahan, masa pemulihan ialah 3 minit 23 saat, bebannya adalah terutamanya
tidak berubah:
Memandangkan Borg boleh berfungsi dalam mod berbilang benang, beban pemproses adalah maksimum, dan apabila fungsi tambahan diaktifkan, masa operasi hanya meningkat. Nampaknya, ia bernilai meneroka multithreading dengan cara yang sama seperti zbackup.
Restik mengatasi pemulihan sedikit lebih perlahan, masa operasi adalah 4 minit 28 saat. Beban itu kelihatan seperti
seperti ini:
Nampaknya proses pemulihan berfungsi dalam beberapa utas, tetapi kecekapannya tidak setinggi BorgBackup, tetapi setanding dalam masa untuk rsync biasa.
Dengan urBackup Ia adalah mungkin untuk memulihkan data dalam 8 minit dan 19 saat, bebannya adalah
seperti:
Bebannya masih tidak terlalu tinggi, malah lebih rendah daripada tar. Di sesetengah tempat terdapat letupan, tetapi tidak lebih daripada beban satu teras.
Pemilihan dan justifikasi kriteria untuk perbandingan
Seperti yang dinyatakan dalam salah satu artikel sebelumnya, sistem sandaran mesti memenuhi kriteria berikut:
- Kemudahan penggunaan
- serba boleh
- Kestabilan
- Kepantasan
Perlu mempertimbangkan setiap titik secara berasingan dengan lebih terperinci.
Kemudahan operasi
Lebih baik apabila terdapat satu butang "Lakukan semuanya dengan baik," tetapi jika anda kembali ke program sebenar, perkara yang paling mudah ialah beberapa prinsip operasi biasa dan standard.
Kebanyakan pengguna berkemungkinan besar akan lebih baik jika mereka tidak perlu mengingati sekumpulan kunci untuk cli, mengkonfigurasi sekumpulan pilihan yang berbeza, selalunya tidak jelas melalui web atau tui, atau menyediakan pemberitahuan tentang operasi yang tidak berjaya. Ini juga termasuk keupayaan untuk "memasukkan" penyelesaian sandaran dengan mudah ke dalam infrastruktur sedia ada, serta automasi proses sandaran. Terdapat juga kemungkinan pemasangan menggunakan pengurus pakej, atau dalam satu atau dua arahan seperti "muat turun dan bongkar". curl ΡΡΡΠ»ΠΊΠ° | sudo bash
- kaedah yang rumit, kerana anda perlu menyemak apa yang tiba melalui pautan.
Sebagai contoh, daripada calon yang dipertimbangkan, penyelesaian mudah ialah sendawa, rdiff-backup dan restic, yang mempunyai kunci mnemonik untuk mod pengendalian yang berbeza. Sedikit lebih kompleks ialah borg dan duplicity. Yang paling sukar ialah AMANDA. Selebihnya berada di suatu tempat di tengah-tengah dari segi kemudahan penggunaan. Walau apa pun, jika anda memerlukan lebih daripada 30 saat untuk membaca manual pengguna, atau anda perlu pergi ke Google atau enjin carian lain, dan juga menatal melalui helaian bantuan yang panjang, keputusannya sukar, satu cara atau yang lain.
Sesetengah calon yang dipertimbangkan boleh menghantar mesej secara automatik melalui e-mailjabber, manakala yang lain bergantung pada makluman yang dikonfigurasikan dalam sistem. Selain itu, selalunya penyelesaian yang kompleks tidak mempunyai tetapan amaran yang jelas sepenuhnya. Walau apa pun, jika program sandaran menghasilkan kod pulangan bukan sifar, yang akan difahami dengan betul oleh perkhidmatan sistem untuk tugas berkala (mesej akan dihantar kepada pentadbir sistem atau terus ke pemantauan) - keadaannya mudah. Tetapi jika sistem sandaran, yang tidak berjalan pada pelayan sandaran, tidak dapat dikonfigurasikan, cara yang jelas untuk mengatakan tentang masalahnya ialah kerumitan sudah berlebihan. Walau apa pun, mengeluarkan amaran dan mesej lain hanya kepada antara muka web atau log adalah amalan buruk, kerana selalunya ia akan diabaikan.
Bagi automasi, program mudah boleh membaca pembolehubah persekitaran yang menetapkan mod pengendaliannya, atau ia mempunyai cli yang dibangunkan yang boleh menduplikasi sepenuhnya tingkah laku apabila bekerja melalui antara muka web, contohnya. Ini juga termasuk kemungkinan operasi berterusan, ketersediaan peluang pengembangan, dsb.
serba boleh
Sebahagian daripada subseksyen sebelumnya mengenai automasi, ia tidak sepatutnya menjadi masalah tertentu untuk "memastikan" proses sandaran ke dalam infrastruktur sedia ada.
Perlu diingat bahawa penggunaan port bukan standard (dengan baik, kecuali antara muka web) untuk kerja, pelaksanaan penyulitan dengan cara yang tidak standard, pertukaran data menggunakan protokol bukan standard adalah tanda-tanda bukan -penyelesaian universal. Untuk sebahagian besar, semua calon mempunyai mereka dalam satu cara atau yang lain atas sebab yang jelas: kesederhanaan dan serba boleh biasanya tidak sesuai. Sebagai pengecualian - sendawa, ada yang lain.
Sebagai tanda - keupayaan untuk bekerja menggunakan ssh biasa.
Kelajuan kerja
Perkara yang paling kontroversi dan kontroversi. Di satu pihak, kami melancarkan proses itu, ia berfungsi secepat mungkin dan tidak mengganggu tugas utama. Sebaliknya, terdapat lonjakan dalam trafik dan beban pemproses semasa tempoh sandaran. Perlu diingatkan juga bahawa program terpantas untuk membuat salinan biasanya paling lemah dari segi fungsi yang penting kepada pengguna. Sekali lagi: jika untuk mendapatkan satu fail teks malang bersaiz beberapa puluh bait dengan kata laluan, dan kerana itu kos keseluruhan perkhidmatan (ya, ya, saya faham bahawa proses sandaran selalunya tidak boleh dipersalahkan di sini), dan anda perlu membaca semula secara berurutan semua fail dalam repositori atau mengembangkan keseluruhan arkib - sistem sandaran tidak pernah pantas. Satu lagi perkara yang sering menjadi batu penghalang ialah kelajuan menggunakan sandaran daripada arkib. Terdapat kelebihan yang jelas di sini bagi mereka yang hanya boleh menyalin atau memindahkan fail ke lokasi yang dikehendaki tanpa banyak manipulasi (rsync, sebagai contoh), tetapi selalunya masalah itu mesti diselesaikan dengan cara organisasi, secara empirik: dengan mengukur masa pemulihan sandaran dan secara terbuka memaklumkan pengguna tentang perkara ini.
Kestabilan
Ia harus difahami dengan cara ini: dalam satu pihak, ia mesti mungkin untuk menggunakan salinan sandaran kembali dalam apa cara sekalipun, sebaliknya, ia mesti tahan terhadap pelbagai masalah: gangguan rangkaian, kegagalan cakera, pemadaman sebahagian daripada repositori.
Perbandingan alat sandaran
Salin masa penciptaan
Salin masa pemulihan
Pemasangan yang mudah
Persediaan mudah
Penggunaan sederhana
Automasi mudah
Adakah anda memerlukan pelayan pelanggan?
Memeriksa integriti repositori
Salinan berbeza
Bekerja melalui paip
serba boleh
Kemerdekaan
Ketelusan repositori
Penyulitan
Pemampatan
Deduplikasi
Antara muka web
Mengisi ke awan
Sokongan Windows
Markah
Rsync
4m15s
4m28s
ya
tiada
tiada
tiada
ya
tiada
tiada
ya
tiada
ya
ya
tiada
tiada
tiada
tiada
tiada
ya
6
Tar
tulen
3m12s
2m43s
ya
tiada
tiada
tiada
tiada
tiada
ya
ya
tiada
ya
tiada
tiada
tiada
tiada
tiada
tiada
ya
8,5
gzip
9m37s
3m19s
ya
Rdiff-sandaran
16m26s
17m17s
ya
ya
ya
ya
ya
tiada
ya
tiada
ya
tiada
ya
tiada
ya
ya
ya
tiada
ya
11
Snapshot
4m19s
4m28s
ya
ya
ya
ya
tiada
tiada
ya
tiada
ya
tiada
ya
tiada
tiada
ya
ya
tiada
ya
12,5
Sendawa
11m9s
7m2s
ya
tiada
ya
ya
ya
ya
ya
tiada
ya
ya
tiada
tiada
ya
tiada
ya
tiada
ya
10,5
Bermuka dua
tiada penyulitan
16m48s
10m58s
ya
ya
tiada
ya
tiada
ya
ya
tiada
tiada
ya
tiada
ya
ya
tiada
ya
tiada
ya
11
gpg
17m27s
15m3s
Gandakan
tiada penyulitan
20m28s
13m45s
tiada
ya
tiada
tiada
tiada
ya
ya
tiada
tiada
ya
tiada
ya
ya
ya
ya
ya
ya
11
aes
29m41s
21m40s
gpg
26m19s
16m30s
zbackup
tiada penyulitan
40m3s
11m8s
ya
ya
tiada
tiada
tiada
ya
ya
ya
tiada
ya
tiada
ya
ya
ya
tiada
tiada
tiada
10
aes
42m0s
14m1s
aes+lzo
18m9s
6m19s
BorgBackup
tiada penyulitan
4m7s
2m45s
ya
ya
ya
ya
ya
ya
ya
ya
ya
ya
tiada
ya
ya
ya
ya
tiada
ya
16
aes
4m58s
3m23s
blake2
4m39s
3m19s
Restik
5m38s
4m28s
ya
ya
ya
ya
tiada
ya
ya
ya
ya
ya
tiada
ya
tiada
ya
tiada
ya
ya
15,5
urBackup
8m21s
8m19s
ya
ya
ya
tiada
ya
tiada
ya
tiada
ya
ya
tiada
ya
ya
ya
ya
tiada
ya
12
Amanda
9m3s
2m49s
ya
tiada
tiada
ya
ya
ya
ya
tiada
ya
ya
ya
ya
ya
tiada
ya
ya
ya
13
BackupPC
rsync
12m22s
7m42s
ya
tiada
ya
ya
ya
ya
ya
tiada
ya
tiada
tiada
ya
ya
tiada
ya
tiada
ya
10,5
tar
12m34s
12m15s
Legenda meja:
- Hijau, masa operasi kurang daripada lima minit, atau jawab "Ya" (kecuali lajur "Perlukan pelayan pelanggan?"), 1 mata
- Kuning, masa operasi lima hingga sepuluh minit, 0.5 mata
- Merah, masa kerja lebih daripada sepuluh minit, atau jawapannya ialah "Tidak" (kecuali lajur "Adakah anda memerlukan pelayan pelanggan?"), 0 mata
Menurut jadual di atas, alat sandaran yang paling mudah, terpantas, dan pada masa yang sama mudah dan berkuasa ialah BorgBackup. Restic mendapat tempat kedua, selebihnya calon yang dipertimbangkan diletakkan lebih kurang sama dengan sebaran satu atau dua mata di penghujung.
Saya berterima kasih kepada semua orang yang membaca siri ini hingga akhir, saya menjemput anda untuk membincangkan pilihan dan menawarkan anda sendiri, jika ada. Apabila perbincangan berlangsung, jadual boleh diperluaskan.
Hasil siri ini akan menjadi artikel terakhir, di mana akan ada percubaan untuk membangunkan alat sandaran yang ideal, pantas dan terurus yang membolehkan anda menggunakan salinan semula dalam masa yang sesingkat mungkin dan pada masa yang sama mudah dan mudah. untuk mengkonfigurasi dan menyelenggara.
Pengumuman
Sandaran Bahagian 6: Membandingkan Alat Sandaran
Sandaran Bahagian 7: Kesimpulan
Sumber: www.habr.com