Edge for Private Cloud v. 4.17.09
ज़ूकीपर के पुर्ज़ों को इस तरह से डिज़ाइन किया गया है कि वे हर तरह से काम करते रहें और डेटा खोने के बावजूद भी काम करते रहें एक या ज़्यादा ZooKeeper नोड. इस बदलाव का इस्तेमाल, बेहतर रखरखाव करने के लिए किया जा सकता है बिना सिस्टम डाउनटाइम वाले ZooKeeper नोड.
ZooKeeper और Edge के बारे में जानकारी
Edge में, ZooKeeper नोड में, इसकी जगह और कॉन्फ़िगरेशन के बारे में कॉन्फ़िगरेशन डेटा होता है अलग-अलग एज कॉम्पोनेंट को पढ़ सकता है. साथ ही, कॉन्फ़िगरेशन के बदलावों के अलग-अलग कॉम्पोनेंट की सूचना देता है. सभी प्रोडक्शन सिस्टम के लिए, इस्तेमाल की जा सकने वाली Edge टोपोलॉजी नोड.
ZK_HOSTS का इस्तेमाल करें और ZK_CLIENT_HOSTS प्रॉपर्टी ZooKeeper नोड की जानकारी देने के लिए Edge कॉन्फ़िगरेशन फ़ाइल. परीक्षा के लिए
ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3"
कहां:
- ZK_HOSTS - यह
ZooKeeper नोड. सभी ZooKeeper नोड में आईपी पते, एक ही क्रम में डालने चाहिए.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है मल्टी-डेटा सेंटर एनवायरमेंट में, सभी डेटा सेंटर के सभी ZooKeeper नोड की सूची बनाएं. - ZK_CLIENT_HOSTS - आईपी पतों के बारे में बताता है
का इस्तेमाल सिर्फ़ इस डेटा केंद्र में किया जा सकता है. आईपी पते
डेटा सेंटर में सभी ZooKeeper नोड पर यही क्रम तय करते हैं.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है किसी एक डेटा सेंटर इंस्टॉलेशन में, ये वही नोड होते हैं जिन्हें ZK_HostS ने तय किया है. में मल्टी-डेटा सेंटर एनवायरमेंट में है, तो हर डेटा सेंटर के लिए Edge कॉन्फ़िगरेशन फ़ाइल में सिर्फ़ उस डेटा सेंटर के लिए ZooKeeper नोड
डिफ़ॉल्ट रूप से, सभी ZooKeeper नोड, वोटर नोड के तौर पर तय होते हैं. इसका मतलब है कि नोड वे सभी लोग ZooKeeper में लीडर चुनने के लिए इस मुहिम में हिस्सा लेते हैं. आप ZK_HOSTS के साथ “:observer” मॉडिफ़ायर इससे पता चलता है कि नोट एक ऑब्ज़र्वर नोड है, न कि वोटर. ऑब्ज़र्वर नोड यह नहीं करता नेता के चुनाव में हिस्सा ले सकते हैं.
कई Edge डेटा बनाते समय, आम तौर पर “:observer” मॉडिफ़ायर तय किया जाता है सेंटर या जब एक डेटा सेंटर में बड़ी संख्या में ZooKeeper नोड हों. उदाहरण के लिए, दो डेटा सेंटर के साथ 12-होस्ट एज इंस्टॉलेशन, डेटा सेंटर 2 में नोड 9 पर Zoo Keeper है ऑब्ज़र्वर:
इसके बाद, डेटा सेंटर 1 के लिए, अपनी कॉन्फ़िगरेशन फ़ाइल में इन सेटिंग का इस्तेमाल करें:
ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3"
डेटा सेंटर के लिए
ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP7 $IP8 $IP9"
लीडर, फ़ॉलोअर, वोटर, और ऑब्ज़र्वर
कई नोड वाले ZooKeeper इंस्टॉलेशन में, किसी एक नोड को लीडर के तौर पर तय किया जाता है. बाकी सभी ZooKeeper नोड, फ़ॉलोअर के तौर पर तय किए जाते हैं. हालांकि, किसी भी डिवाइस से पढ़ा जा सकता है ZooKeeper नोड में लिखने के सभी अनुरोध लीडर को फ़ॉरवर्ड किए जाते हैं. उदाहरण के लिए, एक नया संदेश प्रोसेसर को Edge में जोड़ा गया है. यह जानकारी ZooKeeper लीडर को दी जाती है. सभी अनुसरणकर्ता फिर डेटा को कॉपी कर सकते हैं.
Edge इंस्टॉल करते समय, हर ZooKeeper नोड को वोटर या ऑब्ज़र्वर के तौर पर तय किया जाता है. कॉन्टेंट बनाने इसके बाद, ZooKeeper नोडल वोटर के लिए, सभी वोटर चुने जाते हैं. किसी के चुनाव के लिए एक ज़रूरी शर्त लीडर का मानना है कि ZooKeeper में वोटर नोड की ज़रूरी संख्या कोरुम करने की सुविधा ज़रूर उपलब्ध होनी चाहिए. ऐप्लिकेशन कोरम का मतलब है कि सभी डेटा सेंटर में, सभी वोटर ज़ूकीपर नोड में से आधे से ज़्यादा काम करते हों.
अगर वोटरों के लिए तय की गई संख्या के हिसाब से कोरीम उपलब्ध नहीं है, तो किसी नेता को नहीं चुना जा सकता. इस स्थिति में, ज़ूकीपर अनुरोधों को पूरा नहीं कर सकता. इसका मतलब है कि Edge मैनेजमेंट को अनुरोध नहीं किया जा सकता सर्वर, Management API के अनुरोधों को प्रोसेस करें या कोरोम के वापस आने तक Edge यूज़र इंटरफ़ेस (यूआई) में लॉग इन करें.
उदाहरण के लिए, किसी एक डेटा सेंटर इंस्टॉलेशन में:
- आपने तीन ZooKeeper नोड इंस्टॉल किए हैं
- सभी ZooKeeper नोड, वोटर होते हैं
- कोरम में दो काम करने वाले मतदाता केंद्र शामिल हैं
- अगर सिर्फ़ एक वोटर नोड उपलब्ध होता है, तो ZooKeeper एन्सेम्बल काम नहीं करता
दो डेटा सेंटर वाले इंस्टॉलेशन में:
- आपने कुल छह नोड के लिए, हर डेटा सेंटर में तीन ZooKeeper नोड इंस्टॉल किए हैं
- डेटा सेंटर 1 में तीन वोटर नोड हैं
- डेटा सेंटर 2 में दो वोटर नोड और एक ऑब्ज़र्वर नोड है
- कोरम, दोनों डेटा सेंटर पर मौजूद पांच मतदाताओं के वोटों की संख्या पर आधारित होता है. इसलिए, तीन काम करने वाले मतदाता नोड
- अगर सिर्फ़ दो या उससे कम वोटर नोड उपलब्ध हैं, तो ZooKeeper ग्रुप, फ़ंक्शन
वोटर के तौर पर नोड जोड़ना या ऑब्ज़र्वर
सिस्टम से जुड़ी ज़रूरतों के लिए, आपको Edge में अतिरिक्त ZooKeeper नोड जोड़ने होंगे इंस्टॉल करना. ज़ूकीपर जोड़ना नोड दस्तावेज़ों में बताया गया है कि Edge में अतिरिक्त ZooKeeper नोड कैसे जोड़े जाते हैं. जोड़ते समय ZooKeeper नोड जोड़ने के लिए आपको नोड के टाइप का ध्यान रखना चाहिए: वोटर या ऑब्ज़र्वर.
आप यह पक्का करना चाहते हैं कि पर्याप्त वोटर नोड उपलब्ध हों, ताकि एक या एक से ज़्यादा वोटर नोड बंद हो सकें ZooKeeper का ग्रुप अब भी काम कर सकता है. इसका मतलब है कि वोटर नोड की संख्या अभी पूरी है उपलब्ध हैं. वोटर नोड जोड़ने पर, कोरम बढ़ाई जा सकती है. इससे आपको यह काम करने में आसानी होगी ज़्यादा से ज़्यादा वोटर नोड को बर्दाश्त किए जा सकेंगे.
हालांकि, अतिरिक्त वोटर नोड जोड़ने से, लिखने की परफ़ॉर्मेंस पर बुरा असर पड़ सकता है, क्योंकि लीडर की सहमति के लिए, ज़रूरी कार्रवाइयों को पूरा करना ज़रूरी है. लीडर तय करने में लगने वाला समय यह संख्या, वोटर नोड की संख्या पर आधारित होती है. यह संख्या बढ़ने पर बढ़ती है. इसलिए, आप सभी नोड को मतदाता नहीं बनाना चाहते.
वोटर नोड जोड़ने के बजाय, ऑब्ज़र्वर नोड जोड़े जा सकते हैं. ऑब्ज़र्वर नोड जोड़ने से बढ़ोतरी होती है सिस्टम, लीडर चुने जाने के काम में कोई जोड़े बिना परफ़ॉर्मेंस को पढ़ता है. इसकी वजह यह है कि ऑब्ज़र्वर नोड वोट नहीं करते हैं और इससे कोरम के साइज़ पर कोई असर नहीं पड़ता है. इसलिए, अगर कोई ऑब्ज़र्वर नोड जाता है नहीं, तो इसका कोई नेता चुनने के लिए ग्रुप के लोगों की क्षमता पर कोई असर नहीं पड़ेगा. हालांकि, ऑब्ज़र्वर से नोड के ज़रिए सेवा डेटा के अनुरोधों के लिए कम नोड उपलब्ध हैं.
किसी एक डेटा सेंटर में, Apigee के पास यह सुझाव होता है कि आपके पास पांच से ज़्यादा मतदाता न हों ऑब्ज़र्वर नोड की संख्या का पता लगाता है. दो डेटा सेंटर में, Apigee का सुझाव है कि आप नौ से ज़्यादा मतदाता (एक डेटा सेंटर में पांच और दूसरे में चार). फिर आप जितने चाहें उतने जोड़ सकते हैं ऑब्ज़र्वर नोड डालें.
रखरखाव के लिए ध्यान रखने लायक बातें
ज़ूकीपर का रखरखाव, पूरी तरह से काम करने वाले ऐसे ग्रुप पर किया जा सकता है जिसमें कोई डाउनटाइम न हो एक बार में एक नोड पर काम किया जाता है. यह पक्का करके कि सिर्फ़ एक ZooKeeper नोड नीचे दिया गया है किसी भी एक बार, आप यह सुनिश्चित कर सकते हैं कि लीडर.
पूरे डेटा का रखरखाव एक से ज़्यादा डेटा सेंटर
एक से ज़्यादा डेटा सेंटर के साथ काम करते समय, याद रखें कि ZooKeeper एन्सेम्बल और डेटा सेंटर के बीच अंतर कर सकते हैं. ZooKeeper के असेंबली मोड में, सभी ZooKeeper नोड दिखते हैं डेटा सेंटर, एक तरह के कलेक्शन के तौर पर.
जब ZooKeeper अपना काम करता है, तब किसी डेटा सेंटर में वोटर नोड की जगह की जानकारी का इस्तेमाल नहीं किया जाता कोरुम कैलकुलेशन. अलग-अलग नोड सभी डेटा सेंटर में नीचे जा सकते हैं, लेकिन जब तक कोरम पूरे समूह में संरक्षित किया गया है, फिर भी ZooKeeper काम करता है.
रखरखाव से जुड़े असर
कई बार, आपको रखरखाव के लिए ZooKeeper नोड या वोटर हटाना पड़ता है नोड या ऑब्ज़र्वर नोड डालें. उदाहरण के लिए, आपको नोड पर Edge का वर्शन अपग्रेड करना पड़ सकता है, ऐसा हो सकता है कि ZooKeeper होस्ट करने वाली मशीन काम न करे या नोड किसी अन्य प्लैटफ़ॉर्म के लिए उपलब्ध न हो जैसे कि नेटवर्क की गड़बड़ी.
अगर नीचे जाने वाला नोड एक ऑब्ज़र्वर नोड है, तो आप नोड को पहले जैसा किए जाने तक, ZooKeeper एनसंबल की परफ़ॉर्मेंस देखी जा सकती है. अगर नोड वोटर है नोड के नुकसान की वजह से, नेता के तौर पर चुनाव की प्रक्रिया में हिस्सा लेती हैं. मतदाता नोड के जाने की वजह चाहे जो भी हो साथ ही, उपलब्ध वोटर नोड की संख्या को बनाए रखना ज़रूरी है.
रखरखाव की प्रक्रिया
आपको कोई भी रखरखाव प्रक्रिया पूरी करने के बाद ही यह पक्का करना चाहिए कि ज़ूकीपर एन्सेम्बल काम कर रहा है. इसके तहत यह माना जाता है कि ऑब्ज़र्वर नोड काम करते हैं और कोरम बरकरार रखने के लिए, रखरखाव के दौरान वोटर नोड उपलब्ध रहेंगे.
जब ये शर्तें पूरी हो जाती हैं, तो ज़ूकीपर का आर्बिट्रेरी ग्रुप, डेटा की हानि या परफ़ॉर्मेंस पर कोई अहम असर न डाले बिना, किसी भी नोड का खोना. यह इसका मतलब है कि एन्सेंबल में किसी भी नोड का रखरखाव किया जा सकता है, बशर्ते वह एक पर हो नोड पर जाएं.
रखरखाव के दौरान, नीचे दी गई प्रोसेस का इस्तेमाल करके, ज़ूकीपर नोड (लीडर, वोटर या ऑब्ज़र्वर):
- अगर इसे ZooKeeper नोड पर इंस्टॉल नहीं किया जाता है, तो nc:
इंस्टॉल करें > sudo yum install NC - नोड पर नीचे दिया गया NC कमांड चलाएं:
> इको आंकड़े | एनसी लोकलहोस्ट 2181
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है जहां ज़ूकीपर पोर्ट है, 2181. आपको इस फ़ॉर्म में आउटपुट दिखेगा:
Zookeeper वर्शन: 3.4.5-1392090, 30/09/2012 17:52 GMT को बनाया गया
क्लाइंट: /a.b.c.d:xxxx[0](queued=0,recved=1,sent=0)
इंतज़ार का समय, कम से कम/औसत/ज़्यादा से ज़्यादा: 0/0/0
मिला: 1
भेजा गया: 0
कनेक्शन: 1
बकाया: 0
Zxid: 0xc00000044
मोड: फ़ॉलोअर
नोड की संख्या: 653
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है आउटपुट की Mode लाइन में नोड के लिए आपको ऑब्ज़र्वर, नेता या फ़ॉलोअर दिखेगा (यानी ऐसा मतदाता जो लीडर).
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है ध्यान दें: एक ZooKeeper नोड वाले Edge के स्टैंडअलोन इंस्टॉलेशन में, मोड को स्टैंडअलोन पर सेट किया गया हो. - हर ZooKeeper नोड पर पहले और दूसरे चरण को दोहराएं.
खास जानकारी
ZooKeeper एन्सेम्बल पर रखरखाव करने का सबसे अच्छा तरीका यह है कि उसे एक समय. ध्यान दें:
- आपको एन्सेम्बल स्टे फ़ंक्शन पर आधारित है
- ऑब्ज़र्वर नोड हटाने से कोरूम या चुने जाने की क्षमता पर असर नहीं पड़ता लीडर
- सभी डेटा सेंटर में सभी ZooKeeper नोड में कोरम की गिनती होती है
- पहले वाले सर्वर के काम करने के बाद अगले सर्वर के रखरखाव के लिए आगे बढ़ें
- ZooKeeper नोड की जांच करने के लिए NC कमांड का इस्तेमाल करें