MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

MongoDB एटलस का अवलोकन:भाग दो

ब्लॉग के पहले भाग में "MongoDB एटलस का एक अवलोकन," हमने MongoDB एटलस के साथ शुरुआत करने पर ध्यान दिया, जो कि एक मौजूदा MongoDB क्लस्टर का MongoDB एटलस में प्रारंभिक सेटअप और माइग्रेशन है। इस भाग में हम प्रत्येक MongoDB उत्पादन प्रणाली के लिए आवश्यक कई प्रबंधन तत्वों का पता लगाना जारी रखेंगे, जैसे सुरक्षा और व्यावसायिक निरंतरता।

MongoDB एटलस में डेटाबेस सुरक्षा

सुरक्षा हमेशा पहले आती है। जबकि यह सभी डेटाबेस के लिए महत्वपूर्ण है, MongoDB के लिए इसका एक विशेष अर्थ है। 2017 के मध्य में इंटरनेट रैंसमवेयर हमलों के बारे में खबरों से भरा हुआ था, जो विशेष रूप से MongoDB सिस्टम में कमजोरियों को लक्षित करता था। हैकर्स MongoDB उदाहरणों को हाईजैक कर रहे थे और संग्रहीत डेटा की वापसी के बदले में फिरौती मांग रहे थे। चेतावनियाँ थीं। इन रैंसमवेयर हमलों से पहले ब्लॉगर्स और विशेषज्ञों ने लिखा था कि कितने उत्पादन उदाहरण असुरक्षित पाए गए थे। इसने लंबे समय के बाद MongoDB सुरक्षा के बारे में जीवंत चर्चा को उभारा।

अब हम 2019 में हैं और MongoDB और भी अधिक लोकप्रिय हो रहा है। नया प्रमुख संस्करण (4.0) हाल ही में जारी किया गया था, और हमने मोंगोडीबी एटलस में स्थिरता में वृद्धि देखी है। लेकिन क्लाउड में NoSQL डेटाबेस के लिए सुरक्षा बढ़ाने के लिए क्या किया गया है।

रैंसमवेयर और निरंतर प्रेस का MongoDB पर प्रभाव पड़ा होगा क्योंकि हम स्पष्ट रूप से देख सकते हैं कि सुरक्षा अब MongoDB पारिस्थितिकी तंत्र के केंद्र में है। MongoDB एटलस बिना किसी अपवाद के, क्योंकि यह अब उत्पादन डेटा प्रसंस्करण आवश्यकताओं के लिए अंतर्निहित सुरक्षा नियंत्रण और बॉक्स से बाहर कई उद्यम सुरक्षा सुविधाओं के साथ आता है। पुराने संस्करण से डिफ़ॉल्ट दृष्टिकोण (जो भेद्यता का कारण बना) चला गया है और डेटाबेस अब डिफ़ॉल्ट रूप से सुरक्षित है (नेटवर्क, क्रूड प्राधिकरण आदि)। यह उन सुविधाओं के साथ भी आता है जिनकी आप आधुनिक उत्पादन वातावरण (लेखा परीक्षा, अस्थायी उपयोगकर्ता पहुंच, आदि) में अपेक्षा करते हैं।

लेकिन यह यहीं नहीं रुकता। चूंकि एटलस एक ऑनलाइन समाधान है, अब आप एलडीएपी प्रमाणीकरण जैसे तीसरे पक्ष या मोंगोडीबी चार्ट जैसी आधुनिक मोंगोडीबी इंटरनेट सेवाओं के साथ एकीकरण का उपयोग कर सकते हैं। MongoDB एटलस को Amazon WebServices (AWS), Microsoft Azure और Google Cloud Platform (GCP) के ऊपर बनाया गया है, जो अपने स्वयं के उच्च सुरक्षा उपायों की भी पेशकश करते हैं। यह शानदार संयोजन सुनिश्चित करता है कि MongoDB एटलस सुरक्षा मानक वही हैं जिनकी हम अपेक्षा करते हैं। आइए इनमें से कुछ प्रमुख विशेषताओं पर एक नज़र डालें।

MongoDB एटलस और नेटवर्क सुरक्षा

MongoDB एटलस आपके मौजूदा क्लाउड इंफ्रास्ट्रक्चर के शीर्ष पर क्लस्टर बनाता है। जब कोई एडब्ल्यूएस चुनता है, तो ग्राहक डेटा मोंगोडीबी एटलस सिस्टम में संग्रहीत होता है। ये सिस्टम एकल-किरायेदार, समर्पित, AWS EC2 वर्चुअल सर्वर हैं जो पूरी तरह से एटलस ग्राहक के लिए बनाए गए हैं। Amazon AWS डेटा केंद्र कई भौतिक सुरक्षा और सूचना सुरक्षा मानकों के अनुरूप हैं, लेकिन चूंकि हमें एक खुले नेटवर्क की आवश्यकता है, इसलिए यह चिंता बढ़ा सकता है।

MongoDB एटलस समर्पित क्लस्टर वर्चुअल प्राइवेट क्लाउड (VPC) में समर्पित फायरवॉल के साथ तैनात किए गए हैं। एक आईपी श्वेतसूची या वीपीसी पीयरिंग के माध्यम से पहुंच प्रदान की जानी चाहिए। डिफ़ॉल्ट रूप से सभी एक्सेस अक्षम हैं।

MongoDB को एटलस के लिए निम्न नेटवर्क पोर्ट की आवश्यकता है...

  • 27016 शार्क के लिए
  • बीआई कनेक्टर के लिए 27015
  • सर्वर के लिए 27017
  • यदि LDAP सक्षम है, तो MongoDB को LDAP नेटवर्क 636 की आवश्यकता है जो ग्राहक पक्ष में 0.0.0.0 (संपूर्ण इंटरनेट) ट्रैफ़िक के लिए खुला हो।

नेटवर्क पोर्ट को बदला नहीं जा सकता और टीएलएस को अक्षम नहीं किया जा सकता है। एक्सेस को आईपी श्वेतसूची द्वारा भी अलग किया जा सकता है।

इसके अतिरिक्त आप Bastion होस्ट के माध्यम से MongoDB एटलस तक पहुंचना चुन सकते हैं। बैशन होस्ट को एसएसएच कुंजी (पासवर्ड नहीं) की आवश्यकता के लिए कॉन्फ़िगर किया गया है। उन्हें बहु-कारक प्रमाणीकरण की भी आवश्यकता होती है, और उपयोगकर्ताओं को बैकएंड एक्सेस के लिए वरिष्ठ प्रबंधन द्वारा अतिरिक्त रूप से अनुमोदित किया जाना चाहिए।

MongoDB एटलस रोल-बेस्ड एक्सेस मैनेजमेंट

आप उन्नत, भूमिका-आधारित पहुंच नियमों को कॉन्फ़िगर कर सकते हैं ताकि यह नियंत्रित किया जा सके कि कौन से उपयोगकर्ता (और टीम) आपके डेटाबेस में डेटा तक पहुंच सकते हैं, हेरफेर कर सकते हैं और/या हटा सकते हैं। डिफ़ॉल्ट रूप से कोई उपयोगकर्ता नहीं बनाया गया है इसलिए आपको एक बनाने के लिए कहा जाएगा।

MongoDB एटलस प्रशासकों को उपयोगकर्ता या एप्लिकेशन के लिए अनुमतियों को परिभाषित करने की अनुमति देता है और साथ ही MongoDB को क्वेरी करते समय किस डेटा तक पहुँचा जा सकता है। MongoDB एटलस उपयोगकर्ताओं को एक परियोजना या डेटाबेस के लिए विशिष्ट भूमिकाओं के साथ प्रावधान करने की क्षमता प्रदान करता है, जिससे डेटा तक पहुँचने और प्रबंधन करने वाली विभिन्न संस्थाओं के बीच कर्तव्यों के पृथक्करण का एहसास करना संभव हो जाता है। प्रक्रिया सरल और पूरी तरह से इंटरैक्टिव है।

नया उपयोगकर्ता बनाने के लिए बाईं ओर सुरक्षा टैब पर जाएं और MongoDB उपयोगकर्ताओं और MongoDB भूमिकाओं के बीच चयन करें।

मोंगोडीबी भूमिकाएं

MongoDB एटलस में एंड-टू-एंड डेटाबेस एन्क्रिप्शन

ट्रांजिट में सभी MongoDB एटलस डेटा ट्रांसपोर्ट लेयर सिक्योरिटी (TLS) का उपयोग करके एन्क्रिप्ट किया गया है। आपके पास न्यूनतम TLS प्रोटोकॉल संस्करण को कॉन्फ़िगर करने की सुविधा है। डेटा-एट-रेस्ट के लिए एन्क्रिप्शन एन्क्रिप्टेड स्टोरेज वॉल्यूम का उपयोग करके स्वचालित है।

आप अपने पर्यावरण को कैसे सुरक्षित रखते हैं, इस पर अतिरिक्त नियंत्रण प्रदान करने के लिए आप अपनी मौजूदा सुरक्षा प्रथाओं और प्रक्रियाओं को MongoDB एटलस के साथ एकीकृत भी कर सकते हैं।

स्वयं MongoDB एटलस क्लस्टर के लिए, सुरक्षित सिस्टम सुनिश्चित करने के लिए डिफ़ॉल्ट रूप से SCRAM के माध्यम से प्रमाणीकरण स्वचालित रूप से सक्षम हो जाता है।

एन्क्रिप्शन कुंजी प्रबंधन के साथ आप बैकअप स्नैपशॉट सहित डेटाबेस फ़ाइलों पर एन्क्रिप्शन की एक अतिरिक्त परत के लिए अपने स्वयं के एन्क्रिप्शन कुंजी को अपने समर्पित क्लस्टर में ला सकते हैं।

MongoDB एटलस में ऑडिटिंग

ग्रेन्युलर डेटाबेस ऑडिटिंग डेटाबेस के खिलाफ सभी कमांड को ट्रैक करके कई उपयोगकर्ताओं के साथ तैनाती के लिए सिस्टम गतिविधि के बारे में विस्तृत सवालों के जवाब देता है। MongoDB में ऑडिटिंग केवल MongoDB एंटरप्राइज़ में उपलब्ध है। आप कंसोल, syslog, JSON फ़ाइल या BSON फ़ाइल में ऑडिट इवेंट लिख सकते हैं। आप -ऑडिट डेस्टिनेशन क्वालिफायर का उपयोग करके ऑडिट विकल्प को कॉन्फ़िगर करते हैं। उदाहरण के लिए, ऑडिट इवेंट को JSON इवेंट के रूप में syslog उपयोग में भेजने के लिए...

mongod --dbpath data/db --auditDestination syslog

मोंगोडीबी उत्पादन वातावरण के लिए लॉग डेटा के संग्रह, भंडारण और विश्लेषण के लिए एक केंद्रीकृत लॉग प्रबंधन प्रणाली रखता है। इस जानकारी का उपयोग स्वास्थ्य निगरानी, ​​समस्या निवारण और सुरक्षा उद्देश्यों के लिए किया जा सकता है। किसी भी परिचालन संबंधी चिंताओं के एसआरई को सूचित करने के लिए सिस्टम में अलर्ट कॉन्फ़िगर किए गए हैं।

MongoDB एटलस LDAP इंटीग्रेशन

MongoDB एटलस क्लस्टर के लिए उपयोगकर्ता प्रमाणीकरण और प्राधिकरण को TLS पर ग्राहक के लाइटवेट डायरेक्ट्री एक्सेस प्रोटोकॉल (LDAP) सर्वर के माध्यम से प्रबंधित किया जा सकता है। एक एकल LDAP कॉन्फ़िगरेशन एटलस प्रोजेक्ट के सभी डेटाबेस क्लस्टर पर लागू होता है। LDAP सर्वर का उपयोग अभिगम नियंत्रण को सरल बनाने और अनुमति प्रबंधन को अधिक बारीक बनाने के लिए किया जाता है।

AWS वर्चुअल प्राइवेट क्लाउड (VPC) में अपना LDAP सर्वर चलाने वाले ग्राहकों के लिए, उस परिवेश और उनके एटलस डेटाबेस वाले VPC के बीच एक पीयरिंग कनेक्शन की अनुशंसा की जाती है।

MongoDB व्यापार निरंतरता और आपदा पुनर्प्राप्ति

MongoDB एटलस AWS, Azure और/या Google GCP द्वारा प्रदान किए गए बुनियादी ढांचे पर समर्पित क्लस्टर बनाता और कॉन्फ़िगर करता है। डेटा उपलब्धता बुनियादी ढांचा प्रदाता सेवा व्यापार निरंतरता योजना (बीसीपी) और आपदा वसूली (डीआर) प्रक्रियाओं के अधीन है। MongoDB एटलस इन्फ्रास्ट्रक्चर सेवा प्रदाता इन नियंत्रणों के लिए कई प्रमाणन और ऑडिट रिपोर्ट रखते हैं।

MongoDB एटलस में डेटाबेस बैकअप

MongoDB एटलस डेटा का बैकअप लेता है, आमतौर पर एक ऑपरेशनल सिस्टम से केवल कुछ सेकंड पीछे। MongoDB एटलस प्रतिकृति सेटों का निरंतर बैकअप, शार्प किए गए क्लस्टर के सुसंगत, क्लस्टर-वाइड स्नैपशॉट और पॉइंट-इन-टाइम रिकवरी सुनिश्चित करता है। यह पूरी तरह से प्रबंधित बैकअप सेवा ग्राहक के डेटाबेस परिनियोजन के निकटतम क्षेत्र में Amazon S3 का उपयोग करती है।

सर्वर-साइड एन्क्रिप्शन का उपयोग करके बैकअप डेटा सुरक्षित है। अमेज़ॅन एस 3 ऑब्जेक्ट स्तर पर बैक अप डेटा को एन्क्रिप्ट करता है क्योंकि यह इसे अपने डेटा केंद्रों में डिस्क पर लिखता है और जब आप इसे पुनर्स्थापित करते हैं तो इसे आपके लिए डिक्रिप्ट करता है। सभी कुंजियाँ पूरी तरह से AWS द्वारा प्रबंधित की जाती हैं।

Amazon Web Services और Microsoft Azure में तैनात एटलस क्लस्टर क्लाउड प्रदाता स्नैपशॉट का लाभ उठा सकते हैं जो अंतर्निहित क्लाउड प्रदाता की मूल स्नैपशॉट क्षमताओं का उपयोग करते हैं। बैकअप उसी क्लाउड क्षेत्र में संबंधित क्लस्टर के रूप में संग्रहीत किए जाते हैं। बहु-क्षेत्रीय समूहों के लिए, स्नैपशॉट को क्लस्टर के पसंदीदा क्षेत्र में संग्रहीत किया जाता है।

एटलस आपके डेटा का बैकअप लेने के लिए निम्नलिखित तरीके प्रदान करता है...

सतत डेटाबेस बैकअप

निरंतर बैकअप M10+ क्लस्टर और सर्वर संस्करण 4.2 से कम संस्करणों में उपलब्ध हैं। यह MongoDB बैकअप करने का एक पुराना तरीका है। एटलस आपके डेटा का लगातार बैकअप लेने के लिए वृद्धिशील स्नैपशॉट का उपयोग करता है। सतत बैकअप स्नैपशॉट आमतौर पर परिचालन प्रणाली से कुछ सेकंड पीछे होते हैं। एटलस प्रतिकृति सेट का पॉइंट-इन-टाइम बैकअप सुनिश्चित करता है और अपने आप ही शार्प किए गए क्लस्टर के सुसंगत, क्लस्टर-वाइड स्नैपशॉट, जिसके लिए वह S3 का उपयोग करता है।

पूर्ण-कॉपी स्नैपशॉट

एटलस पूर्ण-प्रतिलिपि स्नैपशॉट और स्थानीयकृत स्नैपशॉट संग्रहण का समर्थन करने के लिए आपके क्लाउड प्रदाता की मूल स्नैपशॉट क्षमताओं का उपयोग करता है।

MongoDB एटलस डेटा लेक

अपने S3 डेटा को एटलस क्लस्टर में डालने के लिए एटलस डेटा लेक का उपयोग करने से आप Mongo Shell, MongoDB Compass और किसी भी MongoDB ड्राइवर का उपयोग करके अपने AWS S3 बकेट में संग्रहीत डेटा को तुरंत क्वेरी कर सकते हैं।

जब आप एक डेटा लेक बनाते हैं, तो आप एटलस को अपने AWS खाते में S3 बकेट तक केवल पढ़ने के लिए पहुँच प्रदान करेंगे और एक डेटा कॉन्फ़िगरेशन फ़ाइल बनाएंगे जो आपके S3 बकेट से डेटा को आपके MongoDB डेटाबेस और संग्रह में मैप करती है। एटलस किसी भी M10+ क्लस्टर का उपयोग करने का समर्थन करता है, जिसमें ग्लोबल क्लस्टर भी शामिल है, ताकि डेटा लेक्स से उसी में कनेक्ट किया जा सके।

इस ब्लॉग को लिखते समय निम्नलिखित प्रारूप समर्थित हैं।

  • एव्रो
  • लकड़ी की छत
  • JSON
  • JSON/Gzipped
  • बीएसओएन
  • सीएसवी (हेडर पंक्ति की आवश्यकता है)
  • TSV (हेडर पंक्ति की आवश्यकता है)

निष्कर्ष

अभी के लिए बस इतना ही, मुझे आशा है कि आपने MongoDB एटलस के मेरे दो भागों के अवलोकन का आनंद लिया है। याद रखें कि ClusterControl भी MongoDB क्लस्टर का संपूर्ण प्रबंधन प्रदान करता है और MongoDB एटलस का एक बढ़िया, कम लागत वाला विकल्प है जिसे क्लाउड में भी तैनात किया जा सकता है।


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. जेसन स्ट्रिंग्स के साथ सी # मोंगो प्रश्न

  2. एक मोंगोडब दस्तावेज़ में सभी सरणी तत्वों को एक निश्चित मूल्य में कैसे बदलें?

  3. Mongodb:127.0.0.1:27017 से कनेक्ट करने में विफल, कारण:त्रुटि:10061

  4. जावा ड्राइवर के माध्यम से एटलस एम0 (फ्री टियर) क्लस्टर से सही तरीके से कैसे कनेक्ट करें?

  5. PyMongo का उपयोग करके mongodb में एक पांडा डेटाफ़्रेम सम्मिलित करें