'kubectl क्रिएट परिनियोजन' का उपयोग करके परिनियोजन बनाएं

Kubectl Kri Eta Pariniyojana Ka Upayoga Karake Pariniyojana Bana Em



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

इस ब्लॉग में, हम समझाएंगे:







कुबेरनेट्स परिनियोजन क्या है?

कुबेरनेट्स परिनियोजन को एक संसाधन ऑब्जेक्ट के रूप में संदर्भित किया जाता है जो पॉड्स, रेप्लिकासेट और कंटेनरीकृत अनुप्रयोगों जैसे इसके प्रमुख तत्वों को घोषणात्मक निर्देश और अपडेट प्रदान करता है। कुबेरनेट्स परिनियोजन डेवलपर को कंटेनरीकृत एप्लिकेशन जैसे छवि, पॉड्स की संख्या, पोर्ट, प्रतिकृतियां इत्यादि का वर्णन करने की अनुमति देता है। कुबेरनेट्स डॉकर से बेहतर होने का एक प्रमुख कारण यह है कि यह हमें ऑटो-हीलिंग और ऑटो-स्केलिंग गुण प्रदान करता है और ये स्थितियां कुबेरनेट्स परिनियोजन के कारण प्राप्त करने योग्य हैं।



'ऑटो-हीलिंग' तंत्र एक परीक्षण स्वचालन तकनीक है जो अपने चल रहे ऑब्जेक्ट का परीक्षण करती है और किसी भी त्रुटि की स्थिति में, सुधार के लिए सर्वोत्तम मिलान लागू करती है, और वांछित स्थिति के साथ वास्तविक स्थिति का मिलान करने के लिए फिक्स लागू करती है। 'ऑटो-स्केलिंग' में सेवा एप्लिकेशन के कार्यभार को स्वचालित रूप से मापती है।



परिनियोजन बनाना पॉड्स बनाने से बेहतर क्यों है?

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





परिनियोजन में रेप्लिकासेट क्या है?

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

'कुबेक्टल क्रिएट परिनियोजन' कमांड क्या है?

kubectl परिनियोजन बनाएँ ” Kubectl टूल का एक कमांड है जिसका उपयोग Kubernetes परिनियोजन बनाने और प्रारंभ करने के लिए किया जाता है। फिर परिनियोजन कुबेरनेट्स को निर्देश देता है कि आपके एप्लिकेशन के इंस्टेंस कैसे बनाएं और अपडेट करें।



वाक्य - विन्यास

kubectl परिनियोजन बनाएँ < परिनियोजन-नाम > --छवि = < छवि-नाम > -- < विकल्प =मूल्य >


विकल्प

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

विकल्प विवरण
“--अनुमति-अनुपलब्ध-टेम्पलेट-कुंजियाँ यदि इसका मान सत्य के रूप में सेट किया गया है, तो यह टेम्पलेट में किसी भी त्रुटि को अनदेखा कर देगा जब टेम्पलेट में कोई मानचित्र कुंजी या फ़ील्ड गायब हो।
'- -पूर्वाभ्यास इसका मान 'कोई नहीं', 'सर्वर' या 'क्लाइंट' हो सकता है। यदि मान क्लाइंट है, तो यह केवल उस ऑब्जेक्ट को दिखाएगा या प्रिंट करेगा जिसे बिना भेजे भेजा जाएगा।

यदि मान सर्वर है, तो यह केवल सर्वर-साइड अनुरोध सबमिट करेगा।

'- -क्षेत्र प्रबंधक फ़ील्ड स्वामित्व को ट्रैक करने के लिए उपयोग किए जाने वाले प्रबंधक का नाम दिखाता या सेट करता है।
'- -छवि कंटेनर टेम्पलेट निर्दिष्ट करने के लिए छवि नाम निर्दिष्ट करें।
-ओ, “--आउटपुट आउटपुट स्वरूप निर्दिष्ट करें.
'- -पत्तन यह कंटेनर को उजागर करने के लिए पोर्ट सेट करता है।
-आर, “--प्रतिकृतियां इसका उपयोग कई पॉड प्रतिकृतियों को परिभाषित करने के लिए किया जाता है।
“--सेव-कॉन्फ़िगरेशन इसका उपयोग किसी ऑब्जेक्ट के कॉन्फ़िगरेशन को उसके एनोटेशन में सहेजने के लिए किया जाता है। यदि इसका मान गलत है, तो एनोटेशन अपरिवर्तित रहेगा।
“--शो-प्रबंधित-फ़ील्ड डिफ़ॉल्ट रूप से, इसका मान गलत है. लेकिन अगर इसे सत्य के रूप में सेट किया गया है, तो यह JSON या YAML प्रारूप में ऑब्जेक्ट प्रिंट करते समय प्रबंधित फ़ील्ड्स को रखेगा या सहेजेगा।
“--सत्यापित='सख्त' इसका मान 'सख्त', 'चेतावनी', या 'अनदेखा' हो सकता है। यदि यह 'सख्त' है, तो यह इनपुट को मान्य करेगा और अमान्य होने पर अनुरोध को विफल कर देगा।

यदि इसका मान 'चेतावनी' है, तो यह डुप्लिकेट और अज्ञात फ़ील्ड के बारे में चेतावनी देगा।

यदि इसका मान 'अनदेखा' है, तो यह कोई स्कीमा सत्यापन नहीं करेगा।

पूर्वावश्यकता: क्यूबेक्टल और मिनीक्यूब स्थापित करें

कुबेरनेट्स क्लस्टर में कुबेरनेट्स परिनियोजन शुरू करने के लिए, सबसे पहले, सिस्टम पर नीचे दिए गए टूल इंस्टॉल करें:

    • कुबेक्टल टूल: Kubectl एक Kubernetes कमांड लाइन टूल है जिसका उपयोग Kubernetes क्लस्टर और उसके घटकों जैसे Kubernetes परिनियोजन को नियंत्रित, प्रबंधित और संचालित करने के लिए किया जाता है।
    • मिनिक्यूब टूल: मिनिक्यूब कुबेरनेट्स के लिए एक कार्यान्वयन प्रणाली है जो कुबेरनेट्स क्लस्टर शुरू करने के लिए सिस्टम पर एक वर्चुअल मशीन प्रदान करती है या बनाती है। यह एकल-नोड क्लस्टर निष्पादित कर सकता है और इसका उपयोग ज्यादातर शुरुआती लोगों द्वारा या परीक्षण उद्देश्यों के लिए किया जाता है।

कुबेरनेट्स के साथ आरंभ करने के लिए और 'जैसे आवश्यक घटकों को स्थापित करने के लिए' kubectl ' और ' मिनीक्यूब ', हमारे लिंक से गुजरें' ' लेख।

'कुबेक्टल क्रिएट' कमांड का उपयोग करके कुबेरनेट्स परिनियोजन कैसे बनाएं?

Kubernetes परिनियोजन को Yaml मेनिफेस्ट लागू करके या '' द्वारा बनाया जा सकता है kubectl परिनियोजन बनाएँ ' आज्ञा। 'कुबेक्टल क्रिएट डिप्लॉयमेंट' कमांड का उपयोग करके कुबेरनेट्स परिनियोजन बनाने के लिए, नीचे दिए गए प्रदर्शन का पालन करें।

चरण 1: पॉवरशेल चलाएँ

सबसे पहले, प्रारंभ मेनू से प्रशासनिक विशेषाधिकारों के साथ Windows PowerShell लॉन्च करें। प्रशासनिक विशेषाधिकारों की आवश्यकता है क्योंकि मिनीक्यूब हाइपरवी का उपयोग करके वर्चुअल मशीन पर कुबेरनेट्स क्लस्टर शुरू करता है:


चरण 2: कुबेरनेट्स क्लस्टर प्रारंभ करें

कुबेरनेट्स क्लस्टर शुरू करने के लिए, 'का उपयोग करें मिनीक्यूब प्रारंभ ' आज्ञा:

मिनीक्यूब प्रारंभ



चरण 3: कुबेरनेट्स नोड्स प्राप्त करें

इसके बाद, यह जांचने के लिए कुबेरनेट्स नोड्स तक पहुंचें कि क्लस्टर शुरू हो गया है या '' का उपयोग नहीं कर रहा है Kubectl को नोड्स मिलते हैं ' आज्ञा:

Kubectl को नोड्स मिलते हैं



चरण 4: कुबेरनेट्स परिनियोजन बनाएँ

'के' के माध्यम से क्लस्टर में एक नया कुबेरनेट्स परिनियोजन बनाएं ubectl परिनियोजन बनाएँ <परिनियोजन-नाम> “- –image= ' आज्ञा। प्रदर्शन के लिए, हमने 'nginx-परिनियोजन' बनाया है जो 'nginx:stable-perl' छवि का उपयोग करके पॉड में Nginx एप्लिकेशन को निष्पादित करेगा:

kubectl परिनियोजन बनाएँ nginx-परिनियोजन --छवि =nginx:स्थिर-पर्ल



चरण 5: कुबेरनेट्स परिनियोजन, रेप्लिकासेट और पॉड प्राप्त करें

'कुबेक्टल क्रिएट डिप्लॉयमेंट' कमांड तीन घटक डिप्लॉयमेंट, रेप्लिकासेट और पॉड बनाएगा। कुबेरनेट्स परिनियोजन तक पहुँचने के लिए, ' चलाएँ Kubectl तैनात हो जाओ ' आज्ञा:

Kubectl तैनात हो जाओ


यहाँ, आप देख सकते हैं ' nginx-परिनियोजन कुबेरनेट्स क्लस्टर में उपलब्ध है:


रेप्लिकासेट परिनियोजन का नियंत्रक है जो सुनिश्चित करता है कि पॉड्स में एप्लिकेशन त्रुटि-मुक्त निष्पादित हो रहा है और ब्रेकप्वाइंट की मरम्मत करता है। रेप्लिकासेट तक पहुंचने के लिए, 'का उपयोग करें Kubectl रुपये प्राप्त करें ' आज्ञा:

Kubectl रुपये प्राप्त करें


यहां, रेप्लिकासेट पॉड्स की वांछित संख्या और वर्तमान में चल रहे पॉड्स दिखाता है:


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

कुबेक्टल को पॉड्स मिलते हैं -ओ चौड़ा



चरण 6: कुबेरनेट्स क्लस्टर में लॉग इन करें

किसी कंटेनर में चल रहे एप्लिकेशन तक पहुंचने के लिए, सबसे पहले, 'का उपयोग करके कुबेरनेट्स क्लस्टर तक पहुंचें' मिनीक्यूब एसएसएच ' आज्ञा:

मिनीक्यूब एसएसएच



चरण 7: कुबेरनेट्स परिनियोजन में चल रहे एक्सेस एप्लिकेशन

उसके बाद, 'का उपयोग करें कर्ल कंटेनरीकृत एप्लिकेशन तक पहुंचने के लिए पॉड आईपी पते के साथ कमांड:

कर्ल 10.244.0.7


'कुबेक्टल क्रिएट डिप्लॉयमेंट' कमांड का उपयोग करके कुबेरनेट्स परिनियोजन में प्रतिकृतियां कैसे चलाएं?

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

चरण 1: कुबेरनेट्स परिनियोजन बनाएँ

सबसे पहले, ' का उपयोग करके एक परिनियोजन बनाएं kubectl परिनियोजन बनाएँ 'के साथ कमांड' “--प्रतिकृतियां ' विकल्प। 'प्रतिकृतियां' विकल्प का मान पॉड्स की वांछित संख्या निर्दिष्ट करेगा जिन्हें रेप्लिकासेट द्वारा प्रबंधित और चलाया जाना चाहिए:

kubectl परिनियोजन बनाएँ nginx-परिनियोजन --छवि =nginx:स्थिर-पर्ल --प्रतिकृतियां = 2



चरण 2: कुबेरनेट्स परिनियोजन, रेप्लिकासेट और पॉड्स प्राप्त करें

अब, 'कुबेक्टल गेट डिप्लॉय' कमांड का उपयोग करके कुबेरनेट्स परिनियोजन तक पहुंचें:

Kubectl तैनात हो जाओ


यहां, आप देख सकते हैं कि परिनियोजन पॉड्स की तैयार, अद्यतन और उपलब्ध संख्या दिखा रहा है:


रेप्लिकासेट जानकारी तक पहुँचने के लिए नीचे दिए गए कमांड का उपयोग करें। आप देख सकते हैं कि रेप्लिकासेट पॉड्स की वांछित संख्या की स्थिति दिखा रहा है और वर्तमान में पॉड्स निष्पादित कर रहा है:

Kubectl रुपये प्राप्त करें



इसी तरह, रनिंग पॉड्स तक पहुंचने के लिए, नीचे दिए गए कमांड का उपयोग करें:

कुबेक्टल को पॉड्स मिलते हैं


आउटपुट इंगित करता है कि कुबेरनेट्स परिनियोजन, कुबेरनेट्स क्लस्टर में वांछित संख्या में पॉड्स प्रतिकृतियों को सफलतापूर्वक निष्पादित कर रहा है:

कुबेरनेट्स परिनियोजन को नियंत्रित करने के लिए रेप्लिकासेट कैसे काम करता है?

रेप्लिकासेट एक परिनियोजन के भीतर वांछित संख्या में पॉड्स को चलाने के लिए जिम्मेदार है। यदि एक पॉड टूट जाता है या हटा दिया जाता है, तो यह वांछित स्थिति के साथ पॉड्स की वर्तमान स्थिति से मिलान करने के लिए स्वचालित रूप से पॉड को फिर से बना देगा। यह तंत्र वास्तव में ऑटो-हीलिंग तकनीक को कार्यान्वित कर रहा है। प्रदर्शन के लिए, नीचे दिए गए निर्देशों का पालन करें।

चरण 1: लाइव कुबेरनेट्स पॉड्स देखें

सबसे पहले, 'का उपयोग करके पॉड्स स्थिति को लाइव देखें' कुबेक्टल को पॉड्स -डब्ल्यू मिलते हैं ' आज्ञा। साथ ही, उस पॉड का नाम भी नोट करें जिसे तोड़ा जाएगा या हटाया जाएगा:

कुबेक्टल को पॉड्स मिलते हैं -में



चरण 2: एक पॉड हटाएँ

इसके बाद, एक और पॉवरशेल टर्मिनल खोलें और 'का उपयोग करके दूसरे पॉड को हटाने का प्रयास करें' kubectl पॉड्स हटाएं <पॉड-नाम> ' आज्ञा:

kubectl पॉड्स हटाएं nginx-तैनाती-7584b4674d-hbx4f


आउटपुट दिखाता है कि हमने पॉड को सफलतापूर्वक हटा दिया है:


अब, पॉवरशेल विंडो खोलें जहां पॉड की स्थिति लाइव है। यहां, आप देख सकते हैं कि जब हमने पॉड को हटा दिया, तो रेप्लिकासेट ने वर्तमान पॉड स्थिति को वांछित स्थिति से मिलाने के लिए स्वचालित रूप से नया पॉड बनाया और निष्पादित किया:


हमने 'कुबेक्टल क्रिएट डिप्लॉयमेंट' कमांड का उपयोग करके कुबेरनेट्स परिनियोजन बनाने की विधि को कवर किया है।

निष्कर्ष

कुबेरनेट्स परिनियोजन बनाने के लिए 'का उपयोग करें' kubectl परिनियोजन बनाएँ कमांड, सबसे पहले, मिनीक्यूब और क्यूबेक्टल जैसे आवश्यक उपकरण स्थापित करें। उसके बाद, मिनीक्यूब का उपयोग करके नया कुबेरनेट्स क्लस्टर चलाएँ। अब, 'का उपयोग करके एक नई तैनाती बनाएं kubectl परिनियोजन बनाएं <तैनाती-नाम> “- –image= ' आज्ञा। उसके बाद, 'का उपयोग करके कुबेरनेट्स परिनियोजन, रेप्लिकासेट और पॉड्स देखें' Kubectl सभी प्राप्त करें ' आज्ञा। इस आलेख में बताया गया है कि 'का उपयोग करके कुबेरनेट्स परिनियोजन कैसे बनाया जाए' kubectl परिनियोजन बनाएँ ' आज्ञा।