कुबेरनेट्स ट्यूटोरियल - कुबेरनेट्स के लिए एक व्यापक गाइड



कुबेरनेट्स ट्यूटोरियल पर यह ब्लॉग, हैंड्स-ऑन के साथ कंटेनर ऑर्केस्ट्रेशन सिस्टम की सभी अवधारणाओं के माध्यम से चलेगा।

कुबेरनेट्स एक मंच है जो कंटेनरीकृत अनुप्रयोगों को तैनात करने में शामिल मैनुअल प्रक्रियाओं को समाप्त करता है। कुबेरनेट्स ट्यूटोरियल के इस ब्लॉग में, आप इस बहु-कंटेनर प्रबंधन समाधान से संबंधित सभी अवधारणाओं से गुजरेंगे।

निम्नलिखित विषयों को इस ट्यूटोरियल में शामिल किया जाएगा:





अब, इस ब्लॉग में आगे बढ़ने से पहले, मैं आपको जल्दी से कंटेनरीकरण के बारे में संक्षेप में बता दूं।

इसलिए, कंटेनर के अस्तित्व में आने से पहले, डेवलपर्स और परीक्षकों के बीच हमेशा झगड़ा होता था। यह आमतौर पर हुआ, क्योंकि देव पक्ष पर काम करने वाले, परीक्षण पक्ष पर काम नहीं करेंगे। दोनों अलग-अलग वातावरण में मौजूद थे। अब, ऐसे परिदृश्यों से बचने के लिए कंटेनरों को पेश किया गया था ताकि डेवलपर्स और परीक्षक दोनों एक ही पृष्ठ पर हों।



बड़ी संख्या में कंटेनरों को एक साथ संभालना भी एक समस्या थी। कभी-कभी कंटेनरों को चलाते समय, उत्पाद पक्ष पर, कुछ मुद्दे उठाए गए थे, जो विकास के स्तर पर मौजूद नहीं थे। इस तरह के परिदृश्यों ने कंटेनर आर्केस्ट्रा सिस्टम पेश किया।

इससे पहले कि मैं ऑर्केस्ट्रेशन सिस्टम में गहरी डुबकी लगाऊं, मुझे इस प्रणाली के बिना चुनौतियों का सामना करने के लिए जल्दी से बताएं।

भंडारण वर्ग c ++



कुबेरनेट्स ट्यूटोरियल: कंटेनर आर्केस्ट्रा के बिना चुनौतियां

कंटेनर आर्केस्ट्रा के बिना चुनौतियां - कुबेरनेट्स ट्यूटोरियल - एडुर्का

जैसा कि आप उपरोक्त आरेख में देख सकते हैं जब कई सेवाएं कंटेनरों के अंदर चलती हैं, तो आप इन कंटेनरों को स्केल करना चाहते हैं। बड़े पैमाने पर उद्योगों में, ऐसा करना वास्तव में कठिन है। ऐसा इसलिए है क्योंकि यह सेवाओं को बनाए रखने के लिए लागत में वृद्धि करेगा, और उन्हें एक साथ चलाने की जटिलता।

अब, मैन्युअल रूप से सेवाओं को स्थापित करने और चुनौतियों को दूर करने के लिए, कुछ बड़ी जरूरत थी। यह वह जगह है जहाँ कंटेनर ऑर्केस्ट्रेशन इंजन तस्वीर में आता है

यह इंजन, हमें कई कंटेनरों को व्यवस्थित करने देता है, इस तरह से सभी अंतर्निहित मशीनों को लॉन्च किया जाता है, कंटेनर स्वस्थ होते हैं और एक संकुल वातावरण में वितरित होते हैं। आज की दुनिया में, मुख्य रूप से दो ऐसे इंजन हैं: गवर्नर और डोकर झुंड

कुबेरनेट्स ट्यूटोरियल: कुबेरनेट्स बनाम डॉकर झुंड

गवर्नर तथा डोकर झुंड आज के बाजार में अग्रणी कंटेनर ऑर्केस्ट्रेशन उपकरण हैं। तो उन्हें ठेस में उपयोग करने से पहले, आपको पता होना चाहिए कि वे वास्तव में क्या हैं और कैसे काम करते हैं।

इसके अलावा, ब्लॉग में, मैं कुबेरनेट्स में गहरा गोता लगाने जा रहा हूं, लेकिन डॉकटर के बारे में जानने के लिए आप क्लिक कर सकते हैं ।

जैसा कि आप उपरोक्त छवि का उल्लेख कर सकते हैं, कुबेरनेट्स, जब डॉकर झुंड के साथ तुलना में एक महान सक्रिय समुदाय का मालिक है और कई संगठनों में ऑटो-स्केलिंग को सशक्त बनाता है। इसी तरह, कुबेरनेट्स की तुलना में डॉकर झुंड में क्लस्टर शुरू करना आसान है, लेकिन यह डॉकर एपीआई की क्षमताओं तक सीमित है।

ठीक है, दोस्तों, ये इन शीर्ष उपकरणों के बीच केवल अंतर नहीं हैं। यदि आप इन दोनों कंटेनर ऑर्केस्ट्रेशन टूल्स के बीच विस्तृत अंतर जानना चाहते हैं, तो आप क्लिक कर सकते हैं

Kubernetes के बारे में अधिक जानने के लिए इच्छुक हैं?

अगर मैं दोनों के बीच अपनी पसंद का चयन कर सकता हूं, तो यह कुबेरनेट्स होना चाहिए, शेड्यूलिंग, लोड संतुलन और वितरण जैसे कार्यों के लिए कंटेनरों को प्रबंधित और बाहरी दुनिया से जुड़ा होना चाहिए।

लेकिन, अगर आपको लगता है कि तार्किक रूप से, डॉकर झुंड एक बेहतर विकल्प होगा, क्योंकि यह डोकर के शीर्ष पर चलता है? अगर मैं तुम होते तो मैं निश्चित रूप से भ्रमित हो जाता कि किस उपकरण का उपयोग करना है। लेकिन हे, कुबेरनेट्स बाजार में एक निर्विवाद नेता हैं और बेहतर कार्यक्षमता के साथ डॉकटर कंटेनरों के शीर्ष पर भी चलते हैं।

अब, जब आप कुबेरनेट की आवश्यकता को समझ गए हैं, तो यह एक अच्छा समय है, जो मैं आपको बताता हूं कुबेरनेट्स क्या है?

कुबेरनेट्स ट्यूटोरियल: कुबेरनेट्स क्या है?

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

कुबेरनेट्स ट्यूटोरियल: कुबेरनेट्स सुविधाएँ

कुबेरनेत्स की विशेषताएं इस प्रकार हैं:

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

कुबेरनेट्स ट्यूटोरियल: कुबेरनेट्स आर्किटेक्चर

कुबेरनेट्स आर्किटेक्चर के निम्नलिखित मुख्य घटक हैं:

  • मास्टर नोड्स
  • कार्यकर्ता / दास नोड्स

मैं उनमें से हर एक पर एक-एक करके चर्चा करने जा रहा हूँ। तो, शुरू में समझने से शुरू करते हैं मास्टर नोड

मास्टर नोड

मास्टर नोड Kubernetes क्लस्टर के प्रबंधन के लिए जिम्मेदार है। यह मुख्य रूप से सभी प्रशासनिक कार्यों के लिए प्रवेश बिंदु है। दोष सहिष्णुता की जांच करने के लिए क्लस्टर में एक से अधिक मास्टर नोड हो सकते हैं।

जैसा कि आप ऊपर दिए गए आरेख में देख सकते हैं, मास्टर नोड में एपीआई सर्वर, नियंत्रक प्रबंधक, शेड्यूलर और ईटीसीडी जैसे विभिन्न घटक हैं।

  • एपीआई सर्वर: API सर्वर क्लस्टर को नियंत्रित करने के लिए उपयोग किए जाने वाले सभी REST कमांड के लिए प्रवेश बिंदु है।
  • नियंत्रक प्रबंधक: एक डेमन है जो कुबेरनेट क्लस्टर को नियंत्रित करता है, और विभिन्न गैर-समाप्ति नियंत्रण छोरों का प्रबंधन करता है।
  • समयबद्धक: शेड्यूलर नोड्स को गुलाम बनाने के लिए शेड्यूल करता है। यह प्रत्येक दास नोड के लिए संसाधन उपयोग जानकारी संग्रहीत करता है।
  • ETCD: ETCD एक सरल, वितरित, सुसंगत कुंजी-मूल्य की दुकान है। यह मुख्य रूप से साझा कॉन्फ़िगरेशन और सेवा खोज के लिए उपयोग किया जाता है।

कार्यकर्ता / दास नोड्स

श्रमिक नोड्स में कंटेनरों के बीच नेटवर्किंग का प्रबंधन करने, मास्टर नोड के साथ संवाद करने और निर्धारित कंटेनरों में संसाधनों को असाइन करने के लिए सभी आवश्यक सेवाएं शामिल हैं।

जैसा कि आप ऊपर दिए गए आरेख में देख सकते हैं, कार्यकर्ता नोड में डॉकटर कंटेनर, क्यूबलेट, क्यूब-प्रॉक्सी और पॉड्स जैसे विभिन्न घटक हैं।

  • डॉकटर कंटेनर: डॉकर प्रत्येक कार्यकर्ता नोड पर चलता है, और कॉन्फ़िगर पॉड्स चलाता है
  • क्यूबलेट: क्यूबलेट एपीआई सर्वर से एक पॉड का विन्यास प्राप्त करता है और यह सुनिश्चित करता है कि वर्णित कंटेनर ऊपर और चल रहे हैं।
  • क्यूबा प्रॉक्सी: क्यूब-प्रॉक्सी एक नेटवर्क प्रॉक्सी के रूप में और एक वर्कर नोड के लिए एक सर्विस के लिए लोड बैलेंसर के रूप में कार्य करता है
  • फली: एक फली एक या एक से अधिक कंटेनर होते हैं जो तार्किक रूप से नोड्स पर एक साथ चलते हैं।

यदि आप कुबेरनेट्स आर्किटेक्चर के सभी घटकों का विस्तृत विवरण चाहते हैं, तो आप हमारे संदर्भ में देख सकते हैं पर ब्लॉग

कुबेरनेट्स में प्रमाणित होना चाहते हैं?

कुबेरनेट्स ट्यूटोरियल: कुबेरनेट्स केस-स्टडी

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

मुसीबत: एक आवेदन कोड से सभी आवश्यक प्लेटफार्मों के लिए छवियां कैसे बनाएं, और उन छवियों को प्रत्येक मंच पर तैनात करें?

अपनी बेहतर समझ के लिए, नीचे दी गई छवि देखें। जब कोड रजिस्ट्री में कोड को बदल दिया जाता है, तो नंगे धातु के चित्र, डॉकटर कंटेनर और वीएम छवियां निरंतर एकीकरण उपकरण द्वारा बनाई जाती हैं, छवि रजिस्ट्री में धकेल दी जाती हैं, और फिर प्रत्येक बुनियादी ढांचे के मंच पर तैनात की जाती हैं।


अब, हम यह समझने के लिए कंटेनर वर्कफ़्लो पर ध्यान दें कि उन्होंने कुबेरनेट्स को एक तैनाती मंच के रूप में कैसे उपयोग किया। मंच वास्तुकला में चुपके चुपके करने के लिए नीचे की छवि देखें।

ओपनस्टैक इंस्टेंस का उपयोग डॉकटर, कुबेरनेट्स, केलिको, इत्यादि के साथ किया जाता है ताकि कंटेनर नेटवर्किंग, कंटेनर रजिस्ट्री, और इसी तरह के विभिन्न ऑपरेशन किए जा सकें।

जब आपके पास कई क्लस्टर होते हैं, तो उन्हें सही प्रबंधन करना कठिन हो जाता है?

इसलिए, वे सिर्फ कुबेरनेट्स के लिए आवश्यक बुनियादी कार्यक्षमता प्रदान करने और ओपनस्टैक वातावरण को प्रबंधित करने के लिए आसान बनाने के लिए एक सरल, आधार ओपनस्टैक क्लस्टर बनाना चाहते थे।

छवि निर्माण वर्कफ़्लो और कुबेरनेट्स के संयोजन से, उन्होंने नीचे टूलचिन का निर्माण किया जो कोड पुश से तैनाती तक आसान बनाता है।

पूर्णांक जावा में डबल परिवर्तित करें


इस तरह के टूलचैन ने यह सुनिश्चित किया कि उत्पादन परिनियोजन जैसे कि बहु-किरायेदारी, प्रमाणीकरण, भंडारण, नेटवर्किंग, सेवा खोज के सभी कारकों पर विचार किया गया।

कि कैसे लोग हैं, याहू! जपान मदद के साथ ओपनस्टैक पर चलने वाले कुबेरनेट्स के लिए 'वन-क्लिक' कोड परिनियोजन के लिए एक ऑटोमेशन टूलचैन बनाया गूगल तथा सोलीना

गवर्नर्स ट्यूटोरियल: हैंड्स-ऑन

इस हैंड्स-ऑन में, मैं आपको दिखाऊंगा कि तैनाती और सेवा कैसे बनाई जाए। मैं एक अमेज़न EC2 उदाहरण का उपयोग कर रहा हूं, कुबेरनेट्स का उपयोग करने के लिए। खैर, अमेज़न लेकर आया है अमेज़ॅन इलास्टिक कंटेनर सेवा के लिये गवर्नर्स (अमेज़न ईकेएस) , जो उन्हें बहुत जल्दी और आसानी से क्लाउड में कुबेरनेट क्लस्टर बनाने की अनुमति देता है। यदि आप इसके बारे में अधिक जानना चाहते हैं, तो आप ब्लॉग को संदर्भित कर सकते हैं

स्टेप 1: प्रथम एक फ़ोल्डर बनाएँ जिसके अंदर आप अपनी तैनाती और सेवा बनाएँगे। उसके बाद, एक संपादक का उपयोग करें और एक परिनियोजन फ़ाइल खोलें

mkdir handsOn cd handsOn vi Deploy.yaml

चरण 2: एक बार जब आप तैनाती फ़ाइल खोलते हैं, तो उस एप्लिकेशन के सभी विनिर्देशों का उल्लेख करें जिसे आप तैनात करना चाहते हैं। यहाँ मैं एक तैनात करने की कोशिश कर रहा हूँ httpd आवेदन।

apiVersion: apps / v1 #Defines API संस्करण प्रकार: परिनियोजन #Kinds पैरामीटर परिभाषित करता है कि यह किस प्रकार की फ़ाइल है, यहाँ पर यह परिनियोजन मेटाडेटा है: नाम: dep1 #Stores परिनियोजन युक्ति का नाम # # विनिर्देशों के तहत, आप सभी का उल्लेख करते हैं परिनियोजन प्रतिकृतियों के लिए विनिर्देशन: 3 # प्रतिकृतियों की संख्या 3 चयनकर्ता होगी: माचिस की लत्ती: एप्लिकेशन: httpd #Label नाम जो खोजा जाएगा वह है httpd टेम्पलेट: मेटाडेटा: लेबल: एप्लिकेशन: httpd #emplate नाम httpd युक्ति होगा: # अंडर विनिर्देशों, आप कंटेनरों के कंटेनरों के लिए सभी विशिष्टताओं का उल्लेख करते हैं: - नाम: http # कंटेनरों का नाम httpd होगा: httpd: नवीनतम # नवीनतम छवि जिसे डाउनलोड किया जाना है httpd: नवीनतम पोर्ट्स: - कंटेनरपोर्ट: 80 # आवेदन पोर्ट 80 पर अवगत कराया जाएगा

चरण 3: अपनी तैनाती फ़ाइल लिखने के बाद, निम्न आदेश का उपयोग करके परिनियोजन लागू करें।

kubectl लागू करें -f Deploy.yaml

यहाँ -f एक ध्वज नाम है जिसका उपयोग किया जाता हैटीउसने फाइल कीनाम।

चरण 4: अब, एक बार तैनाती लागू होने के बाद, फली की सूची प्राप्त करें।

kubectl पॉड्स को चौड़ा करें

यहाँ, -o वाइड का उपयोग यह जानने के लिए किया जाता है कि किस नोड पर तैनाती चल रही है।

चरण 5: आपके द्वारा परिनियोजन बनाए जाने के बाद, अब आपको एक सेवा बनानी होगी। उसके लिए फिर से एक संपादक का उपयोग करें और एक रिक्त खोलें सर्विस। yaml फ़ाइल

vi सेवा

चरण 6: सेवा फ़ाइल खोलने के बाद, सेवा के लिए सभी विशिष्टताओं का उल्लेख करें।

ApiVersion: v1 # एपीआई संस्करण प्रकार को परिभाषित करता है: सेवा #Kinds पैरामीटर परिभाषित करता है कि यह किस प्रकार की फ़ाइल है, यहाँ पर यह सेवा मेटाडेटा है: नाम: netsvc #Stores सेवा का नाम निर्दिष्ट करता है: # विशेष विवरण के तहत, आप सभी विशिष्टताओं का उल्लेख करते हैं। सेवा के प्रकार के लिए: NodePort चयनकर्ता: ऐप: httpd पोर्ट्स: -प्रोटोकॉल: TCP पोर्ट: 80 लक्ष्यपॉर्ट: 8084 #Target पोर्ट संख्या 8084 है

चरण 7: अपनी सेवा फ़ाइल लिखने के बाद, निम्न आदेश का उपयोग करके सेवा फ़ाइल लागू करें।

kubectl apply -f service.yaml

चरण 8: अब, एक बार आपकी सेवा को यह जांचने के लिए लागू किया जाता है कि सेवा चल रही है या नहीं, तो निम्न कमांड का उपयोग करें।

kubectl svc प्राप्त करें

चरण 9: अब, सेवा के विनिर्देशों को देखने के लिए, और देखें कि यह कौन सा समापन बिंदु हैनिम्नलिखित आदेश का उपयोग करने के लिए बाइंड किया गया।

kubectl svc का वर्णन करें

चरण 10: अब चूंकि हम वेब पेज को लाने और आउटपुट की जांच करने के लिए, अमेजन ec2 उदाहरण का उपयोग कर रहे हैं, इसलिए निम्न कमांड का उपयोग करें।

कर्ल आईपी-एड्रेस

यदि आपको यह कुबेरनेट ट्यूटोरियल ब्लॉग प्रासंगिक लगता है, तो देखें 250,000 से अधिक संतुष्ट शिक्षार्थियों के एक नेटवर्क के साथ एक विश्वसनीय ऑनलाइन शिक्षण कंपनी, एडुरेका द्वारा, दुनिया भर में फैली हुई है।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया टिप्पणी अनुभाग में इसका उल्लेख करें कुबेरनेट्स ट्यूटोरियल “और मैं तुम्हारे पास वापस आ जाऊंगा।