इस पिछले ब्लॉग पोस्ट में हमने क्लाउडरा प्रतिकृति प्लगइन, . का एक उच्च-स्तरीय अवलोकन प्रदान किया था यह समझाते हुए कि यह कैसे छोटे कॉन्फ़िगरेशन के साथ क्रॉस-प्लेटफ़ॉर्म प्रतिकृति लाता है। इस पोस्ट में, हम कवर करेंगे कि कैसे इस प्लगइन को सीडीपी क्लस्टर्स में लागू किया जा सकता है और समझाएंगे कि कैसे प्लगइन सिस्टम के बीच मजबूत प्रमाणीकरण को सक्षम बनाता है जो पारस्परिक प्रमाणीकरण विश्वास साझा नहीं करते हैं।
ऑपरेशनल डेटाबेस प्रतिकृति प्लगइन का उपयोग करना
ऑपरेशनल डेटाबेस प्रतिकृति प्लगइन एक स्टैंडअलोन प्लगइन के रूप में उपलब्ध है और साथ ही Cloudera प्रतिकृति प्रबंधक के माध्यम से स्वचालित रूप से स्थापित किया गया है। प्लगइन ग्राहकों को सार्वजनिक क्लाउड में सीडीएच/एचडीपी/एडब्ल्यूएस ईएमआर/एज़ूर एचडीइनसाइट क्लस्टर्स से सीडीपी प्राइवेट क्लाउड बेस और/या सीडीपी ऑपरेशनल डेटाबेस (सीओडी) में एचबीएएस डेटा की वास्तविक समय प्रतिकृति स्थापित करने में सक्षम बनाता है। CDP प्राइवेट क्लाउड बेस और COD के बीच या पब्लिक क्लाउड में COD इंस्टेंस के बीच प्रतिकृति सेट करने के लिए Cloudera प्रतिकृति प्रबंधक का उपयोग करते समय इसे स्वचालित रूप से तैनात किया जाता है। Cloudera प्रतिकृति प्रबंधक भी इस प्लगइन के साथ HBase स्नैपशॉट सुविधा को एक ही सेटअप में पहले से मौजूद डेटा की प्रतिकृति को प्रबंधित करने के लिए संयोजन करने की अनुमति देता है।
स्थापना निर्देशों के लिए, कृपया HBase प्रतिकृति नीति . देखें प्रतिकृति प्रबंधक . पर विषय आधिकारिक दस्तावेज।
लीगेसी सीडीएच/एचडीपी संस्करणों के लिए, प्लगइन केवल लीगेसी क्लस्टर में स्थापित किए जाने वाले पार्सल के रूप में प्रदान किया जाता है।
- CDH 5.x
- CDH 6.x
- HDP 2.6
- HDP 3.1
- EMR 5.x और 6.x
पार्सल संस्करण विशिष्ट बायनेरिज़ के साथ लॉक किया गया संस्करण है। ऊपर वर्णित प्रत्येक संस्करण के लिए, इसे प्रति-क्लस्टर आधार पर अधिग्रहित किया जाना चाहिए। यदि आप उनमें से किसी को प्राप्त करने में रुचि रखते हैं, तो अपनी क्लौडेरा बिक्री टीम से संपर्क करें।
कार्यान्वयन विवरण
ऑपरेशनल डेटाबेस प्रतिकृति प्लगइन . द्वारा हल की गई बाधा विभिन्न सुरक्षा विन्यास के तहत समूहों के बीच पारस्परिक प्रमाणीकरण है। इस पिछले ब्लॉग पोस्ट को याद करते हुए, HBase डिफ़ॉल्ट प्रतिकृति के लिए आवश्यक है कि दोनों क्लस्टर या तो सुरक्षा के लिए बिल्कुल भी कॉन्फ़िगर नहीं किए गए हों, या दोनों सुरक्षा के साथ कॉन्फ़िगर किए गए हों। बाद वाले के मामले में, दोनों क्लस्टर या तो एक ही केर्बेरोज दायरे में होने चाहिए, या केर्बेरोस सिस्टम पर क्रॉस-रियलम प्रमाणीकरण सेट होना चाहिए। सीडीपी के संदर्भ में यह एक अतिरिक्त चुनौती होगी, जहां प्रत्येक वातावरण एक आत्मनिहित सुरक्षा क्षेत्र पर चलता है। इसे और अधिक विस्तार से समझने के लिए, हमें यह समीक्षा करने की आवश्यकता है कि Apache HBase सुरक्षा कैसे कार्यान्वित की जाती है।
विश्वास स्थापित करने के लिए SASL का उपयोग करना
HBase प्रतिकृति में, स्रोत क्लस्टर में RegionServers RPC कनेक्शन के माध्यम से लक्ष्य क्लस्टर में RegionServers से संपर्क करते हैं। जब सुरक्षा सक्षम होती है, तो साधारण प्रमाणीकरण और सुरक्षा परत ढांचे (SASL) का उपयोग करके RPC कनेक्शन स्थापना चरण में प्रमाणीकरण किया जाता है। HBase पहले से ही निम्नलिखित बिल्टिन प्रदान करता है एसएएसएल प्रमाणीकरण तंत्र:केर्बरोस, डाइजेस्ट और सरल। जब केर्बेरोस सक्षम किया जाता है, तो लक्ष्य क्लस्टर द्वारा स्रोत क्लस्टर से क्रेडेंशियल की अपेक्षा की जाएगी, जो तब SASL kerberos का उपयोग करके अपने स्वयं के KDC के विरुद्ध इन क्रेडेंशियल्स को मान्य करेगा। तंत्र। यह kerberos GSSAPI . पर निर्भर करता है लक्ष्य क्लस्टर केडीसी के खिलाफ प्रदान किए गए क्रेडेंशियल्स को प्रमाणित करने के लिए कार्यान्वयन, इसलिए स्रोत क्लस्टर प्रिंसिपल के लिए ट्रस्ट को केर्बेरोज सिस्टम स्तर पर लागू किया जाना चाहिए, या तो एक ही दायरे में दोनों क्लस्टर क्रेडेंशियल होने, या लक्ष्य क्लस्टर केडीसी को क्रेडेंशियल्स पर भरोसा करना चाहिए। स्रोत क्लस्टर क्षेत्र (एक दृष्टिकोण जिसे आमतौर पर क्रॉस-रियलम . के रूप में जाना जाता है) प्रमाणीकरण)।
HBase SASL प्रमाणीकरण का विस्तार करना
सौभाग्य से, एसएएसएल को कस्टम प्रमाणीकरण कार्यान्वयन की अनुमति देने के लिए डिज़ाइन किया गया है। इसका मतलब है कि एक एसएएसएल आधारित समाधान तैयार किया जा सकता है, अगर एक अतिरिक्त एसएएसएल तंत्र को ऊपर उल्लिखित बिल्टिन विकल्पों के सेट में प्लग किया जा सकता है। उस उद्देश्य के साथ, क्लौडेरा ने एचबीएएस की आरपीसी परत की एक रिफैक्टरिंग का प्रस्ताव रखा, जिसे अपाचे एचबीएएस समुदाय द्वारा HBASE-23347 में समीक्षा और स्वीकार किया गया है। .
प्लग करने योग्य SASL तंत्र
HBASE-23347 . द्वारा पेश किए गए परिवर्तनों के साथ , अतिरिक्त SASL प्रमाणीकरण तंत्र को RPC परत द्वारा उपयोग किए जाने वाले HBase कॉन्फ़िगरेशन के माध्यम से परिभाषित किया जा सकता है। आने वाले RPC कनेक्शन हेडर में विशिष्ट SASL प्रकार को परिभाषित करते हैं, फिर RPC सर्वर वास्तविक प्रमाणीकरण करने के लिए विशिष्ट कार्यान्वयन का चयन करता है:
ऑपरेशनल डेटाबेस प्रतिकृति प्लगइन अपने कस्टम एसएएसएल तंत्र को लागू करता है, विभिन्न केर्बेरोज क्षेत्रों पर समूहों को सहज विन्यास प्रयासों के साथ संवाद करने की अनुमति देता है (बिना केर्बेरोज क्रॉस-रियलम की आवश्यकता के) ) यह HBase प्रतिकृति का विस्तार करता है ताकि स्रोत प्रतिकृति प्लगइन . का SASL टोकन बनाए कस्टम प्रकार, लक्ष्य COD क्लस्टर पर एक पूर्व-निर्धारित मशीन उपयोगकर्ता से क्रेडेंशियल के साथ। इस प्रकार के उपयोगकर्ता को Cloudera Management Console . से आसानी से बनाया जा सकता है यूआई, और फिर केर्बेरोज प्रमाणीकरण प्राधिकरण के तहत सीओडी क्लस्टर में प्रचारित किया गया। प्रतिकृति मशीन उपयोगकर्ता बनाने के बारे में विस्तृत निर्देश Cloudera प्रतिकृति प्रबंधक दस्तावेज़ीकरण के पूर्व-आवश्यकता चरण अनुभाग में शामिल हैं।
जब लक्ष्य में RPC सर्वर टोकन को पढ़ता है और इसकी पहचान करता है कि यह एक प्रतिकृति प्लगइन है प्रकार, संबंधित क्रेडेंशियल्स को टोकन से पार्स किया जाता है और प्रमाणीकरण के लिए उपयोग किया जाता है।
ऑपरेशनल डेटाबेस प्रतिकृति प्लगइन मशीन उपयोगकर्ता क्रेडेंशियल्स को मान्य करने के लिए PAM प्रमाणीकरण का उपयोग करता है। सीओडी क्लस्टर हमेशा सीडीपी पर्यावरण फ्रीआईपीए सुरक्षा डोमेन के खिलाफ पीएएम प्रमाणीकरण के साथ प्रावधानित होते हैं।
मशीन उपयोगकर्ता क्रेडेंशियल सुरक्षित करना
इस समाधान में एक महत्वपूर्ण समस्या यह है कि स्रोत क्लस्टर को लक्ष्य क्लस्टर के मशीन उपयोगकर्ता से क्रेडेंशियल प्राप्त करना चाहिए। स्पष्ट कारणों से, इसे स्रोत कॉन्फ़िगरेशन पर किसी भी तरह से उजागर नहीं किया जाना चाहिए। ये क्रेडेंशियल आरपीसी कनेक्शन के भीतर एसएएसएल टोकन में वायर पर भी भेजे जाते हैं, इसलिए इसे ट्रांसमिशन से पहले एन्क्रिप्ट किया जाना चाहिए। प्रतिकृति प्लगइन jceks . उत्पन्न करने के लिए अपना स्वयं का टूल प्रदान करता है मशीन उपयोगकर्ता क्रेडेंशियल्स को संग्रहीत करने वाली फ़ाइल, एन्क्रिप्टेड। एक बार यह फ़ाइल बन जाने के बाद, इसे दोनों समूहों में कॉपी किया जाना चाहिए और hbase द्वारा पठनीय बनाया जाना चाहिए। केवल उपयोगकर्ता। नीचे दिया गया आरेख ऑपरेशनल डेटाबेस प्रतिकृति प्लगइन का परिनियोजन अवलोकन दिखाता है रीजनसर्वर के संदर्भ में मानक HBase प्रतिकृति वर्गों को एकीकृत करने वाले घटक। गुलाबी बॉक्स HBase द्वारा पहले से प्रदान किए गए प्रतिकृति और RPC कनेक्शन कोड का प्रतिनिधित्व करते हैं, जबकि पीले बॉक्स HBASE-23347 के भीतर पेश की गई अमूर्त परत दिखाते हैं। अंत में, नारंगी वर्ग ऑपरेशनल डेटाबेस प्रतिकृति प्लगइन को लागू करने वाले प्रासंगिक कलाकृतियों को हाइलाइट करते हैं तर्क।
निष्कर्ष
HBase के लिए DR और DC माइग्रेशन समाधानों को लागू करने के लिए प्रतिकृति एक मूल्यवान उपकरण है। इसमें कुछ चेतावनियां हैं, जैसा कि यहां दिखाया गया है, जब क्लस्टर के सुरक्षा कॉन्फ़िगरेशन से निपटते हैं। फिर भी, मौजूदा "ऑन-प्रिमाइसेस" परिनियोजन से डेटा को क्लाउड पर सीडीपी क्लस्टर में माइग्रेट करने की क्षमता अनिवार्य है। क्लॉडेरा ऑपरेशनल डेटाबेस प्रतिकृति प्लगइन इस सुरक्षा एकीकरण के लिए बेहतर रखरखाव के साथ, सुरक्षित समूहों को एकीकृत करते समय लचीलापन लाता है, क्योंकि यह पूरी तरह से HBase स्तर पर लागू किया गया है, इसके विपरीत केर्बेरोस क्रॉस-रियलम, जिसके लिए केर्बेरोस सिस्टम परिभाषा में बदलाव की आवश्यकता होती है, अक्सर अपनी स्वयं की प्रतिबंधात्मक नीतियों के साथ एक पूरी तरह से अलग टीम की जिम्मेदारी होती है।
ऑपरेशनल डेटाबेस टेम्प्लेट को में आज़माएं क्लौडेरा डेटा प्लेटफ़ॉर्म (सीडीपी)!