कंटेनरों का उपयोग अब अधिकांश उत्पादन परिवेशों में किया जा रहा है क्योंकि वे अधिक स्केलेबल, सस्ती, आभासी मशीनों से बेहतर और तेजी से परिनियोजित करने योग्य हैं।
बेशक, 10-20 कंटेनरों के साथ काम करना चीजों को सरल बनाता है, लेकिन एक ऐसे परिदृश्य पर विचार करें जिसमें आपके कुबेरनेट्स क्लस्टर उत्पादन वातावरण में सैकड़ों कंटेनर हों।
जब कई कंटेनर एक साथ चल रहे हों, तो कंटेनर के जीवनकाल को नियंत्रित करना मुश्किल हो जाता है। सभी स्वचालित कंटेनर परिनियोजन, स्केलिंग, संगठन और प्रशासन को संभालने के लिए आपको एक कंटेनर ऑर्केस्ट्रेशन प्लेटफ़ॉर्म या समाधान की आवश्यकता होती है।
चूंकि दोनों कंटेनर ऑर्केस्ट्रेशन समाधान दो अलग-अलग परियोजनाएं हैं, कुबेरनेट्स और ओपनशिफ्ट की तुलना करना अनुचित है।
OpenShift के विपरीत, जो एक Red Hat सेवा है, Kubernetes एक ओपन-सोर्स पहल है। अभी बाजार में दो शीर्ष कंटेनर ऑर्केस्ट्रेशन टूल कुबेरनेट्स और रेड हैट ओपनशिफ्ट हैं।
यह पोस्ट विभिन्न उपकरणों के माध्यम से जाएगी और वे एक दूसरे से कैसे भिन्न होंगे।
आगे बढ़ने से पहले, आइए कंटेनर ऑर्केस्ट्रेशन को समझते हैं।
तो, कंटेनर ऑर्केस्ट्रेशन क्या है?
कंटेनरों का स्वचालित विन्यास कंटेनर ऑर्केस्ट्रेशन सॉफ्टवेयर द्वारा संभव बनाया गया है। इसे किसी भी सेटिंग में बनाया और इस्तेमाल किया जा सकता है, इसलिए इसे पोर्टेबल माना जाता है।
कंटेनर तकनीक एकल ईवेंट का उपयोग करके एप्लिकेशन कोड, लाइब्रेरी और अन्य आवश्यक डेटा को बंडल करती है।
इस तथ्य के कारण कि इसमें सबसे मौलिक वस्तु- या प्रक्रिया-उन्मुख कोड है, इसे एक कार्यक्रम की "एकल इकाई" के रूप में जाना जाता है।
एप्लिकेशन अब अधिक प्रभावी ढंग से काम कर सकते हैं, चाहे वे डेवलपर पारिस्थितिकी तंत्र में या ऑन-प्रिमाइसेस में उपयोग किए जाएं। क्लस्टर कंटेनर ऑर्केस्ट्रेशन एक लोकप्रिय प्रकार की कंटेनर सॉफ्टवेयर तकनीक है, और कुबेरनेट्स इस तरह की तकनीक के लिए बनाया गया है।
कंटेनरीकरण एक प्रभावी सर्वर जैसी प्रणाली बनाता है जो नोड्स के समूहों का उपयोग करता है - या तो वास्तविक या आभासी मशीन। नतीजतन, अधिक जगह है, आवेदन अलगाव, भार संतुलन, और लगातार बेहतर प्रसंस्करण दरें उपलब्ध हैं।
एचएमबी क्या है? Kubernetes?
कंटेनर ऑर्केस्ट्रेशन के लिए बनाया गया एक सिस्टम, कुबेरनेट्स ओपन-सोर्स और फ्री है। Google इसका मूल निर्माता था।
क्लाउड नेटिव कंप्यूटिंग फाउंडेशन, जिसे कंटेनर प्रौद्योगिकी को आगे बढ़ाने के लिए स्थापित किया गया था, अब कुबेरनेट्स को एक सदस्य के रूप में शामिल करता है।
कुबेरनेट्स नामक एक पोर्टेबल कंटेनरीकरण मंच क्षमताओं का खजाना प्रदान करता है जिसका उद्देश्य प्रबंधन सेवाओं और कार्यभार को आसान बनाना है।
परिनियोजन, नेटवर्किंग और मापनीयता कुछ ऐसे ऑपरेशन हैं जिन्हें कुबेरनेट्स के पास स्वचालित करने के लिए उपकरण हैं।
कुबेरनेट्स का उपयोग डेवलपर्स द्वारा अपनी सीआई / सीडी पाइपलाइनों में कार्यक्षमता को एकीकृत करने के लिए किया जाता है, जैसे लोड संतुलन, प्रक्रिया स्वचालन, और भंडारण ऑर्केस्ट्रेशन।
Kubernetes क्लस्टर में, एक मास्टर नोड और कई वर्कर नोड मास्टर-स्लेव डिज़ाइन का उपयोग कर रहे हैं।
प्रत्येक कार्यकर्ता नोड में कई खंड संचालित होंगे जो एक कार्यात्मक इकाई के रूप में एकजुट कंटेनरों के संग्रह से ज्यादा कुछ नहीं हैं।
Kubernetes YAML का उपयोग करके वास्तविक एप्लिकेशन के निर्माण के लिए API सर्वर को दिए गए संसाधनों को परिभाषित करता है।
विशेषताएं
- इसे किसी भी प्लेटफॉर्म पर बिना चार्ज के इस्तेमाल किया जा सकता है क्योंकि यह ओपन सोर्स है।
- डाउनटाइम को स्वचालित रूप से संभालने के लिए आप वापस रोल कर सकते हैं और जल्दी से रोल आउट कर सकते हैं।
- यह नेटवर्क ट्रैफ़िक वितरण के लिए लोड संतुलन सुविधाएँ प्रदान करता है।
- इसमें एक मजबूत, सक्रिय विकास और इंजीनियरिंग समुदाय है, जो नई सुविधाओं को जारी करने में सहायता करता है।
- यह कई प्रोग्रामिंग भाषाओं और रूपरेखाओं का समर्थन करता है, जिससे डेवलपर्स और प्रशासकों को स्वतंत्रता मिलती है।
- इसमें एक डिफ़ॉल्ट डैशबोर्ड है जो क्लस्टर के हर पहलू को समझने के लिए डेटा का खजाना प्रदान करता है।
- यह बुनियादी ढांचे के संसाधनों का प्रभावी ढंग से उपयोग करने और समग्र लागत को कम करने में सहायता करता है।
- ऐप्स लॉन्च करने के लिए, Kubernetes आपके चुने हुए स्टोरेज सिस्टम को माउंट और जोड़ता है।
- Kubernetes के साथ, आप तेजी से और कुशलता से संसाधनों को लंबवत और क्षैतिज रूप से माप सकते हैं।
- निष्पादन के दौरान विफल होने वाले कंटेनरों को कुबेरनेट्स द्वारा स्वचालित रूप से पुनरारंभ किया जा सकता है, और जो उपयोगकर्ता द्वारा परिभाषित स्वास्थ्य जांच पर प्रतिक्रिया नहीं करते हैं वे मारे जाते हैं। हालाँकि, यदि कोई नोड विफल हो जाता है, तो यह इसे बदल देता है और विफल कंटेनरों को अन्य सक्रिय नोड्स में पुनर्वितरित करता है।
एचएमबी क्या है? ओपनशिफ्ट?
Red Hat ने कंटेनरीकरण उपकरणों का OpenShift संग्रह बनाया। डॉकर और कुबेरनेट्स, दो अच्छी तरह से पसंद की जाने वाली कंटेनरीकरण तकनीकें, OpenShift के विकास के हिस्से में उपयोग की जाती हैं।
जब इसके वितरित प्लेटफॉर्म की बात आती है, Red Hat OpenShift को वितरण के रूप में और Kubernetes को प्लेटफॉर्म के मूल के रूप में देखता है।
कुबेरनेट्स पर निर्मित और क्लाउड में उपलब्ध कराए गए प्लेटफॉर्म को ओपनशिफ्ट कंटेनर प्लेटफॉर्म कहा जाता है। इसे अक्सर कंटेनरीकरण सेवाओं की पेशकश करने वाली सेवा (PaS) के रूप में एक मंच के रूप में माना जाता है।
यह स्व-सेवा प्रावधान, केंद्रीकृत नीति प्रशासन, अंतर्निहित निगरानी और सुरक्षा प्रदान करता है जो व्यवसायों के लिए उच्चतम स्तर का है।
Kubernetes कंटेनर वर्कलोड के साथ, OpenShift संगत है।
इसके अलावा, यह ओपनशिफ्ट ओकेडी (पूर्व में उत्पत्ति के रूप में जाना जाता है) प्रदान करता है, जो आपको क्लाउड-आधारित एप्लिकेशन बनाने, वितरित करने और परीक्षण करने में सक्षम बनाता है।
Node.js, Ruby, Python, Perl, और Java में लिखे गए एप्लिकेशन को OpenShift द्वारा नियंत्रित किया जा सकता है। प्लेटफ़ॉर्म कंटेनरीकृत कार्यक्रमों के स्वचालित या मैन्युअल स्केलिंग की अनुमति देता है।
OpenShift एक अमूर्त परत के रूप में कई वर्चुअलाइजेशन अवधारणाओं को शामिल करता है। ओपनशिफ्ट के पीछे प्राथमिक विचार वर्चुअलाइजेशन है।
OpenShift कंटेनर होस्टिंग और रनटाइम के लिए ओपन कंटेनर इनिशिएटिव (OCI) के साथ संगत है और अन्य DevOps तकनीकों के साथ जल्दी से इंटरैक्ट करता है।
OpenShift का उपयोग करने वाली कंपनियों को कड़े सुरक्षा दिशानिर्देशों, त्वरित एप्लिकेशन परिनियोजन और विशेष समर्थन के साथ एक व्यापक मंच की आवश्यकता होती है।
यह बड़े पैमाने की परियोजनाओं या छोटे व्यवसायों के लिए विशेष रूप से आकर्षक विकल्प बनाता है जिनके पास अपने ऐप्स को प्रशासित करने, सुरक्षित रखने और निगरानी करने के लिए विशेष कर्मियों की कमी होती है।
विशेषताएं
- यह अधिक तेज़ी से और फुर्ती से एप्लिकेशन बना और लॉन्च कर सकता है।
- कई अन्य DevOps टूल को इसके साथ आसानी से एकीकृत किया जा सकता है।
- प्रत्येक रिलीज़ के लिए, यह कई तृतीय-पक्ष प्लग इन की जांच करता है।
- स्थानीय रूप से या किसी क्लाउड सेवा प्रदाता के साथ उपयोग करना आसान है।
- यह कंटेनरों को होस्ट करने और चलाने के लिए ओपन कंटेनर इनिशिएटिव (ओसीआई) का समर्थन करता है।
- इसमें प्रदर्शन, दोष और सुरक्षा चिंताओं के लिए कई सुधार शामिल हैं।
- प्रोमेथियस और ग्राफाना समर्थित हैं, जो क्लस्टर निगरानी में सहायता करते हैं
- यह Red Hat पर एकीकृत कंसोल का उपयोग करके नीतियों को तेजी से बना और लागू कर सकता है।
- अभिगम नियंत्रण, नेटवर्किंग, और अंतर्निर्मित स्कैनर के साथ एंटरप्राइज़ रजिस्ट्री Red Hat OpenShift की मूलभूत सुरक्षा सुविधाओं में से कुछ हैं।
- Red Hat OpenShift-आधारित अनुप्रयोग कुछ ही सेकंड में सैकड़ों नोड्स पर हजारों उदाहरणों तक बढ़ सकते हैं।
- 3-नोड क्लस्टर, एक एकल Red Hat OpenShift नोड और दूरस्थ कार्यकर्ता नोड्स की सहायता से, Red Hat OpenShift किनारे के परिदृश्यों में छोटे-फुटप्रिंट टोपोलॉजी के लिए समर्थन में सुधार करता है। ये टोपोलॉजी विभिन्न एज साइट्स के भौतिक आकार, कनेक्टिविटी और उपलब्धता आवश्यकताओं के अनुरूप बेहतर हैं।
कुबेरनेट्स और ओपनशिफ्ट के बीच मुख्य अंतर
ओपन सोर्स और कमर्शियल
Kubernetes और OpenShift के बीच प्राथमिक अंतर यह है कि पहला एक ओपन-सोर्स प्रोजेक्ट है, जबकि दूसरा एक फ़ायदेमंद कॉर्पोरेट पेशकश है। नतीजतन, कुबेरनेट्स एक आत्मनिर्भर उपकरण है।
लोग कुबेरनेट्स समुदाय से संपर्क करते हैं, जिसमें इस तकनीक में किसी भी मुद्दे या बग को हल करने के लिए कई डेवलपर्स, प्रशासक, आर्किटेक्ट आदि शामिल हैं।
OpenShift के साथ इस Red Hat उत्पाद सदस्यता का उपयोग करते समय, आपके पास किसी भी समस्या के निवारण के लिए एक उत्कृष्ट भुगतान समर्थन विकल्प है। Red Hat CloudForms का उपयोग OpenShift सदस्यता के साथ भौतिक, आभासी और क्लाउड अवसंरचना के प्रबंधन के लिए किया जा सकता है।
मंच के लिए मूल्य निर्धारण देखा जा सकता है यहाँ उत्पन्न करें.
उपयोगकर्ता इंटरफ़ेस और अनुभव
कुबेरनेट्स का जटिल वेब इंटरफ़ेस संभवतः शुरुआती लोगों को भ्रमित कर सकता है।
उपयोगकर्ताओं को Kubernetes डैशबोर्ड स्थापित करना होगा और Kubernetes वेब ग्राफिकल यूजर इंटरफेस (GUI) देखने के लिए अपने मशीन के पोर्ट को क्लस्टर सर्वर से संचार करने के लिए Kube-proxy का उपयोग करना होगा।
चूंकि डैशबोर्ड में एक लॉगिन पृष्ठ नहीं है, इसलिए उपयोगकर्ताओं को प्रमाणीकरण और प्राधिकरण प्रदान करने के लिए अतिरिक्त रूप से वाहक टोकन स्थापित करना होगा।
दूसरी ओर, OpenShift एक स्पर्श लॉगिन पृष्ठ के साथ एक उपयोगकर्ता के अनुकूल ऑनलाइन कंसोल प्रदान करता है। कंसोल उपयोगकर्ताओं को उपयोग में आसान फॉर्म-आधारित इंटरफ़ेस प्रदान करता है जो संसाधन जोड़ने, हटाने और संशोधन को सक्षम बनाता है। OpenShift के साथ, उपयोगकर्ताओं को स्पष्ट रूप से लाभ होता है।
वेब इंटरफेस
आप सभी क्लस्टर प्रशासन कार्यों को करने के लिए एक उपयुक्त और उपयोगकर्ता के अनुकूल वेब इंटरफेस चाहते हैं। और OpenShift यह प्रदान करता है। प्रत्येक उपयोगकर्ता को पूरे क्लस्टर के सहज प्रतिनिधित्व के साथ प्रस्तुत करने से पहले बस एक संक्षिप्त लॉगिन प्रक्रिया को पूरा करने की आवश्यकता होती है।
Red Hat से OpenShift एक सहज वेब UI प्रदान करता है जो DevOps पेशेवरों को आसानी से Kubernetes गतिविधियों और ऑपरेशन टीमों को आसानी से एप्लिकेशन की निगरानी करने में सक्षम बनाता है।
नियंत्रण कई विकल्प प्रदान करता है जिन्हें केवल एक क्लिक के साथ लागू किया जा सकता है, जिसमें निर्माण, परिनियोजन, अद्यतन, स्केल और एक्सपोज़ शामिल हैं।
Kubernetes में एक साधारण डैशबोर्ड शामिल है जो केवल बुनियादी कार्यों में आपकी सहायता कर सकता है। इसके अलावा, बाजार के अन्य डैशबोर्ड की तुलना में, डैशबोर्ड बहुत उपयोगकर्ता के अनुकूल नहीं है।
नतीजतन, DevOps पेशेवर बुनियादी कुबेरनेट्स डैशबोर्ड को वैकल्पिक विज़ुअलाइज़ेशन टूल जैसे कि . के साथ जोड़ना पसंद करते हैं प्रोमिथेउस और ग्राफाना.
अनुमापकता
एक क्लस्टर में कई वर्चुअल कंप्यूटर होंगे, चाहे वर्चुअलाइज्ड हों या नंगे धातु। कुबेरनेट्स में वर्चुअल मशीन जोड़ना एक समय लेने वाली प्रक्रिया है। इसके लिए प्रोग्रामर को इसके लिए YAML स्क्रिप्ट लिखने की आवश्यकता होती है।
इसके विपरीत, OpenShift का उपयोग करके स्केलिंग सरल है। उपलब्ध इंस्टॉलर और Ansible प्लेबुक की मदद से, OpenShift क्लस्टर में वर्चुअल मशीन को जल्दी से सेट कर सकता है।
इसके अलावा, OpenShift में मापनीयता एक सरल प्रक्रिया है।
लचीलापन
चूंकि कुबेरनेट्स का उपयोग करने के लिए कोई निर्धारित विधि नहीं है, यह बहुत अधिक स्वतंत्रता प्रदान करता है। कुबेरनेट्स को चलाने के लिए अतिरिक्त प्रतिबंधों वाले किसी भी ऑपरेटिंग सिस्टम का उपयोग किया जा सकता है।
अपनी पुरानी प्रकृति और आधुनिक बाजार की मांगों को पूरा करने में असमर्थता के कारण, कई उद्यमों को दूर करने के लिए विरासत वास्तुकला एक बाधा थी।
OpenShift के साथ काम करते समय, सभी ऑपरेटिंग सिस्टम समर्थित नहीं होते हैं। केवल FedoraOS, CentOS, और Red Hat वितरण OpenShift के साथ संगत हैं।
प्रबंध
प्रारंभ में, आप डिफ़ॉल्ट डैशबोर्ड का उपयोग करके कुबेरनेट्स में क्लस्टर को नियंत्रित कर सकते हैं।
हालाँकि, इसकी सीमित कार्यक्षमता और न्यूनतम उपयोगकर्ता इंटरफ़ेस के कारण, जब क्लस्टर का आकार बढ़ता है, तो आपको क्लस्टर को आसानी से प्रबंधित करने के लिए इस्तियो, प्रोमेथियस और ग्राफाना जैसे अधिक शक्तिशाली उपकरण जोड़ने होंगे।
क्लस्टर को प्रशासित करने के लिए, Red Hat OpenShift उपयोगकर्ता के अनुकूल डैशबोर्ड प्रदान करता है। ओपनशिफ्ट का वेब पोर्टल आपको बेहतर प्रशासन के लिए क्लस्टर पर परिष्कृत संचालन करने की अनुमति देता है।
OpenShift भी क्लस्टर को EFK स्टैक और Istio से जोड़ने की अनुशंसा करता है। अंत में, ओपनशिफ्ट में सुलभ उत्तरदायी प्लेबुक और इंस्टॉलर क्लस्टर प्रबंधन के साथ सहायता करते हैं।
तैनाती
एक आवश्यक DevOps कदम उत्पादन में एक एप्लिकेशन को तैनात कर रहा है, और OpenShift इस प्रक्रिया को काफी सरल बनाता है।
CICD प्रक्रिया आपके लिए विकास से लेकर परिनियोजन तक सब कुछ संभालती है, इसलिए आपको प्रत्येक चरण को मैन्युअल रूप से करने के बारे में चिंता करने की आवश्यकता नहीं है।
आप ओपनशिफ्ट के साथ एप्लिकेशन परिनियोजन के लिए सीआईसीडी पाइपलाइन चलाने पर घर पर सही महसूस करेंगे, भले ही आप एक पूर्ण नौसिखिया हों। OpenShift ऐप्स को परिनियोजित करने के लिए, DeploymentConfig कमांड का उपयोग करें।
हालांकि, कुबेरनेट्स का कार्यान्वयन मुश्किल है और अक्सर एक विशेषज्ञ द्वारा विशेष रूप से किया जाता है।
आवेदन परिनियोजन के लिए पाइपलाइन के प्रत्येक चरण को हाथ से स्थापित करने की आवश्यकता होगी। Kubernetes परिनियोजन परिनियोजन ऑब्जेक्ट का उपयोग करता है, जो कई समवर्ती परिवर्तनों का समर्थन करता है।
सुरक्षा
कुबेरनेट्स की तुलना में, ओपनशिफ्ट के पास मजबूत सुरक्षा नियम हैं। उदाहरण के लिए, OpenShift के साथ कंटेनरों को रूट के रूप में चलाना संभव नहीं है।
इसके अतिरिक्त, यह उपयोगकर्ताओं को DockerHub पर कई आधिकारिक छवियों का उपयोग करने से रोकता है। इस प्रकार आपको OpenShift का उपयोग करने से पहले उसकी सुरक्षा नीतियों से परिचित होना चाहिए।
हालाँकि, ये सीमाएँ OpenShift के प्रमाणीकरण और प्राधिकरण को Kubernetes की तुलना में अधिक भरोसेमंद बनाती हैं।
कुबेरनेट्स के तहत, उपयुक्त पहचान और अनुमति क्षमताओं का निर्माण करना मुश्किल होगा।
यदि कंटेनर स्कैनिंग उपकरण क्लस्टर में शामिल नहीं हैं, तो OpenShift के विपरीत, Kubernetes क्लस्टर में बड़ी संख्या में असुरक्षित Docker चित्र शामिल हो सकते हैं।
कुबेरनेट्स में भूमिका-आधारित अभिगम नियंत्रण (आरबीएसी) प्रौद्योगिकियां उपलब्ध हैं, हालांकि, वे उत्पादन अनुप्रयोगों में आवश्यक उच्च स्तर की सुरक्षा के लिए अपर्याप्त हैं।
इसलिए, ओपनशिफ्ट की तुलना में कुबेरनेट्स को अभी भी कई सुरक्षा प्रगति करनी है।
निष्कर्ष
यह सब कुबेरनेट्स और ओपनशिफ्ट के बीच के अंतर के बारे में था। आईटी सेक्टर में दोनों कंटेनर ऑर्केस्ट्रेशन प्लेटफॉर्म की डिमांड है। इसलिए, आप कंटेनर ऑर्केस्ट्रेशन प्लेटफॉर्म का चयन कर सकते हैं जो आपकी आवश्यकताओं के आधार पर आपकी कंपनी के लिए आदर्श है।
यदि आपकी परियोजनाओं को लचीलेपन की आवश्यकता है, तो आपको कुबेरनेट्स का उपयोग करना चाहिए।
हालांकि, ओपनशिफ्ट एक बेहतर विकल्प है यदि आप एक पूर्व निर्धारित योजना पर टिके रह सकते हैं और कंटेनर ऑर्केस्ट्रेशन के लिए एक मंच का उपयोग करना चाहते हैं जो कि तैनाती और प्रशासन के लिए आसान है।
और अगर आप कुछ समय से DevOps स्पेस में काम कर रहे हैं, तो आप Kubernetes को एक शॉट देना चाह सकते हैं।
हालाँकि, यदि आप नौसिखिए हैं, तो OpenShift के साथ जाएं क्योंकि यह आपके लिए अधिकांश चीजों को काफी सरल बना देगा।
Red Hat OpenShift और Kubernetes अब आपकी पसंद हैं, इसलिए बुद्धिमानी से चुनें।
एक जवाब लिखें