rsync आयन गंतव्य


14

सिस्टम और नेटवर्क को भूखा करने के लिए rsync से बचने के लिए ioniceजब हम rsync शुरू करते हैं और --bwlimitपैरामीटर सेट करते हैं। उदाहरण के लिए:

ionice -c2 -n7 rsync -aH --bwlimit=30000 /foo root@dest.com:/

यह वास्तव में यह सुनिश्चित करने में मदद करता है कि स्रोत सर्वर उत्तरदायी बना रहे। हालाँकि, डिस्क सर्वर 100% पर डिस्क यूआई के कारण बहुत धीमा हो जाता है (जैसा कि atopउपयोगिता द्वारा देखा जाता है )।

क्या किसी तरह ioniceगंतव्य सर्वर पर भी उपयोग करना संभव है? शायद rsync -eविकल्प के माध्यम से ? यदि संभव हो तो मैं rsync डेमॉन नहीं चलाना चाहूंगा।

जवाबों:


11

आयन स्क्रिप्ट / पैरामीटर को शामिल करने के लिए rsync कमांड को बदलना या इसे शेल स्क्रिप्ट में लपेटना एक विकल्प है। इसके अलावा, आप --rsync-pathविकल्प का लाभ उठा सकते हैं , जो rsync को बताता है कि रिमोट सर्वर पर किस कमांड को निष्पादित करना है। कुछ ऐसा --rsync-path="ionice -c2 -n7 rsync"सुनिश्चित करेगा कि आयनिस गंतव्य पर चलता है।

मैं जोड़ूंगा कि ऑयनस हमेशा सर्वर कॉन्फ़िगरेशन के आधार पर प्रभावी नहीं होता है। यह केवल डिफ़ॉल्ट CFQ I / O एलेवेटर के साथ काम करता है । यदि आपने कोई संग्रहण प्रणाली ट्यूनिंग की है, तो यह दृष्टिकोण लागू नहीं हो सकता है।

क्या आप लोड का एक उदाहरण दे सकते हैं या यह समझाने में मदद कर सकते हैं कि प्रतिलिपि के दौरान संसाधनों के लिए सिस्टम कैसे शुरू हुआ? मैं गहराई से देखना चाहता हूं और देखना होगा कि एक rsync, विशेष रूप से आपके उदाहरण में सूचीबद्ध कम दर तक सीमित होने के कारण इतनी परेशानी पैदा करेगा।

आप क्या नकल कर रहे हैं? हार्डवेयर / ओएस सेटअप क्या है?


हमारे पास कई OpenVZ होस्ट हैं। ये 16-कोर Xeon मशीनें हैं जो CentOS चला रही हैं। हर रात हम सभी ओपनवीजेड कंटेनरों को दूसरे मेजबानों में कॉपी करते हैं। चूंकि हमारे आईपी पते सभी मेजबानों के लिए सुगम हैं, इससे हमें होस्ट के विफल होने पर बैकअप वीपीएस को जल्दी से सक्रिय करने की अनुमति मिलती है।
जेसन स्मिथ

लोड कितना अधिक मिलता है? क्या ये स्थानीय-स्थानीय प्रतियाँ हैं? क्या स्टोरेज I / O लिफ्ट में कोई बदलाव किया गया है?
इविविट

मैंने जो कुछ देखा है, उससे नेटवर्क बैंडविड्थ को सीमित नहीं किया जाता है डिस्क io (हजारों निर्देशिकाओं को स्कैन करने की आवश्यकता है, भले ही कोई फाइल नहीं बदली गई हो)। क्या --bwlimit में भी डिस्क i / o को सीमित करना चाहिए?
जेसन स्मिथ

atopडिस्क के अनुसार io लगातार 100% तक फट रहा है। मुझे यकीन नहीं है कि "स्टोरेज आई / ओ लिफ्ट" से आपका क्या मतलब है, इसलिए मैं शायद चूक चलाऊं?
जेसन स्मिथ

2

आपका rsync कमांड rsyncदूरस्थ गंतव्य पर भी कमांड लॉन्च करता है।

निम्नलिखित को अपने गंतव्य सर्वर रूट उपयोगकर्ता .bashrc में, दूसरे शब्दों में करने की कोशिश करें /root/.bashrc

alias rsync="ionice -c2 -n7 rsync"

~/.bashrcइंटरएक्टिव सत्रों के लिए ए केवल खट्टा है और मुझे उम्मीद नहीं है कि वहाँ एक उपनाम स्थापित करने से संशोधित हो जाएगा कि rsync कैसे निष्पादित होता है।
HBruijn
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.