Saya memiliki dua mesin di situs yang berbeda. Dua mesin memiliki volume FreeBSD dan ZFS. Yang satu adalah tuan. dan yang lainnya adalah cadangan.
Saya biasanya melakukan backup dengan perintah ini yang dipanggil oleh cron.
zfs send -i pool/vol@old pool/vol@new | ssh backup zfs recv pool/vol
Tapi foto itu cukup besar. Perlu lebih dari 24 jam, dan kadang-kadang koneksi terputus. Jika itu terjadi saya perlu mengirim ulang byte pertama.
Apakah ada cara untuk menghubungkan kembali koneksi ssh tanpa pipa rem?
Sebagai contoh, saya dapat membayangkan perintah chunked_send dan chunked_recv.
zfs send -i pool/vol@old pool/vol@new | chunked_send id1 ssh backup chunked_recv id1 zfs recv pool/vol
memperbarui:
Salah satu solusi naif adalah menggunakan file sementara dan rsync.
zfs send -i vol@old vol@new | split -b 1024m backup-tmp.
rsync backup-tmp.* backup:/tmp
ssh backup 'cat /tmp/backup-tmp.* | zfs recv vol'
Saya merasa ini tidak pintar.
Jawaban:
Coba enkapsulasi koneksi TCP dalam paket UDP. Cara paling sederhana untuk melakukan ini adalah dengan menginstal a OpenVPN jaringan udp antara dua server.
Koneksi UDP dapat membuat koneksi terputus-putus. Koneksi SSH melalui UDP VPN tampaknya tidak terputus. Saya tidak yakin tentang perintah Anda, tetapi saya cukup yakin itu akan menolak pemutusan jika digunakan melalui jaringan OpenVPN.
Saya sudah menulis Panduan instalasi OpenVPN untuk Debian itu dapat membantu Anda. Ini menyediakan alat yang memudahkan pengaturan server OpenVPN.
sumber