एक धीमी और अविश्वसनीय नेटवर्क कनेक्शन पर बैकअप स्नैपशॉट संचारित करने के लिए btrfs सेंड / प्राप्त का उपयोग कैसे करें?


11

मैं एक धीमी गति से (लगभग 50-100GB के शुरुआती बीज, अपस्ट्रीम बैंडविथ ~ 1-2MBit / s) और अविश्वसनीय (दोनों सिरों पर दैनिक मजबूर रुकावट) पर बैकअप स्नैपशॉट संचारित करने के लिए btrfs 'सेंड / प्राप्त सुविधा का उपयोग करना चाहूंगा।

मैं निम्नलिखित आवश्यकताओं को देखता हूं:

  • एन्क्रिप्टेड ट्रांसफर (आमतौर पर SSH सुरंग का उपयोग करके प्राप्त किया जाता है)
  • बाधित कनेक्शन के लिए मजबूती

ऐसा लगता है कि ZFS स्वचालित रूप से बाधित ट्रांसफर को फिर से शुरू करने में सक्षम है , rsync कैसे करता है। क्या यह BTRFS पर भी लागू होता है? भेजने / प्राप्त विकि पृष्ठ बाधित स्थानान्तरण के संबंध में उपयोगी नहीं है। अगर btrfs बाधित स्थानांतरण को फिर से शुरू करेगा, तो मुझे बस इतना करना होगा कि SSH सुरंग का उपयोग किया जाए और बाधित होने पर फिर से शुरू किया जाए।

यदि नहीं, तो मुझे बीच-बीच में कुछ बफ़र का उपयोग करना होगा जो सुनिश्चित करें कि btrfs- कनेक्शन में बाधा उत्पन्न हो, या दोनों सर्वर को बीजारोपण के लिए एक-दूसरे के करीब लाएँ (जो कि जोड़ी गई फ़ाइलों के संबंध में एक समस्या होगी जो दैनिक संचरण को बढ़ाती है क्षमता और स्नैपशॉट भेजना)।

बीज और स्नैपशॉट प्रसारित करने के लिए मुझे क्या विचार करना होगा?

जवाबों:


8

मैं थोड़ी देर के लिए बैकअप के लिए "btrfs send" का उपयोग कर रहा हूं। यह टूटे हुए स्थानांतरण को फिर से शुरू करने से नहीं निपटता है। मैंने एक उपयोगिता लिखी है जो स्थानांतरण को फिर से शुरू करती है , और स्वचालित रूप से स्नैपशॉट को स्थानीय एसटीआर फाइल सिस्टम में अमेज़ॅन एस 3 में सिंक करती है। अगर यह मदद करता है, तो यह देखने के लिए आपका स्वागत है कि आपका स्वागत है और मुझे कोई प्रतिक्रिया पसंद आएगी यह GitHub ( https://github.com/AmesCornish/buttersink ) और PyPi ( https://pypi.python.org/pypi/buttersink/ ) दोनों पर है ।


निश्चित रूप से कुछ खाली समय मिल गया है कि निश्चित रूप से इस पर एक नज़र होगा। आपकी रीडमी कहती है कि ssh-backend अभी तक लागू नहीं हुआ है, इसका मतलब है कि दूरस्थ btrfs फाइल सिस्टम के लिए सिंक्रनाइज़ेशन अभी भी कतार में है?
जेन्स एराट

बहुत अच्छा लगता है, लेकिन दुर्भाग्य से मुझे भी उपयोगी होने के लिए SSH की आवश्यकता है।
Matthias Urlichs

2
SSH बैकएंड अब कार्यान्वित किया गया है (0.6 के रूप में)
user80646

4

एक फ़ाइल या एक पाइप पर "भेजें"। दूसरे छोर पर फ़ाइल या पाइप के साथ "प्राप्त" करें। एक संदिग्ध कनेक्शन के साथ, आप संभवतः फ़ाइलों और rsync जैसे परिवहन के साथ सबसे अच्छा करेंगे।


1
दाईं ओर, फ़ाइल को कई विखंडू में विभाजित करना संभव है। Rsync के लिए बेहतर हो सकता है कि एक बाधित स्थानांतरण को फिर से शुरू करें (या rsync के साथ thepartial का उपयोग करें)
ascobol

1

buttersinkएस 3 के फिर से शुरू के अलावा , btrbkसमर्थन करता है:

बैकअप का फिर से शुरू (यदि बैकअप लक्ष्य थोड़ी देर के लिए उपलब्ध नहीं था)

संपादित करें: मैंने सीखा है कि व्यक्तिगत स्नैपशॉट के हस्तांतरण के साथ फिर से शुरू नहीं किया गया है btrbk, हालांकि यह ऑफ़लाइन होने वाले बैकअप लक्ष्य से निपटेगा (बाधित स्नैपशॉट के हस्तांतरण को फिर से शुरू करना)।


मुझे निश्चित रूप से एक नज़र होगी btrbkऔर यह कैसे स्थानांतरण को फिर से शुरू करता है, हालांकि मैं कुछ हद तक प्रोग्रामिंग भाषा की पसंद को नापसंद करता हूं - लेकिन यह बहुत अधिक सुविधा सेट को लागू करने के लिए लगता है जिसकी मुझे आवश्यकता है।
जेन्स इरेट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.