paint-brush
Kubeadm के साथ Kubernetes क्लस्टर की स्थापना और प्रबंधन करनाद्वारा@humalect
2,119 रीडिंग
2,119 रीडिंग

Kubeadm के साथ Kubernetes क्लस्टर की स्थापना और प्रबंधन करना

द्वारा Humalect Inc11m2023/08/09
Read on Terminal Reader

बहुत लंबा; पढ़ने के लिए

यह Kubeadm ट्यूटोरियल Kubeadm कमांड का उपयोग करके Kubernetes क्लस्टर बनाने और प्रबंधित करने की अनिवार्यताओं को शामिल करता है। यह स्व-मेज़बान कुबेरनेट्स, पेशेवरों और विपक्षों की व्याख्या करता है, फिर कुबेदम के उद्देश्य पर प्रकाश डालता है। यह उदाहरण प्रदान करता है और शीर्ष 20 सामान्य Kubeadm कमांड का विवरण देता है, जिसमें नियंत्रण विमान को आरंभ करना, वर्कर नोड्स में शामिल होना, क्लस्टर को रीसेट करना, संस्करणों को अपग्रेड करना और घटकों को प्रबंधित करना शामिल है। ट्यूटोरियल Kubeadm के साथ Kubernetes क्लस्टर बनाने, क्लस्टर घटकों को संभालने की भी रूपरेखा देता है, और ऑटोस्केलिंग उत्पादन क्लस्टर के लिए Kubeadm का उपयोग करने, नियमित रूप से आदि का बैकअप लेने और नोड्स की प्रभावी ढंग से निगरानी करने जैसी सर्वोत्तम प्रथाओं पर जोर देता है।
featured image - Kubeadm के साथ Kubernetes क्लस्टर की स्थापना और प्रबंधन करना
Humalect Inc HackerNoon profile picture
0-item
1-item

इस Kubeadm ट्यूटोरियल में, हम आपको Kubeadm कमांड के बारे में जानने के लिए आवश्यक हर चीज़ का पता लगाएंगे और Kubernetes (K8s) में क्लस्टर बनाने और क्लस्टर घटकों को प्रबंधित करने के लिए उनका उपयोग कैसे करें।

आप न केवल Kubeadm का उपयोग करके अपना खुद का Kubernetes क्लस्टर बनाना सीखेंगे, बल्कि आप क्लस्टर घटकों को प्रबंधित करने की कला में भी महारत हासिल करेंगे, और Kubeadm की सर्वोत्तम प्रथाओं की खोज करेंगे।


Kubeadm की दुनिया में इस रोमांचक यात्रा पर हमारे साथ जुड़ें, जहां आप आसानी से कंटेनरों को व्यवस्थित करने की शक्ति को अनलॉक करेंगे।


आइए एक साथ गोता लगाएँ और Kubeadm विशेषज्ञ बनें! इससे पहले कि हम kubeadm के बारे में गहराई से जानें, स्व-होस्टेड Kubernetes (K8s) वास्तव में क्या है?


सामग्री अवलोकन

  • स्व-होस्टेड कुबेरनेट्स क्या है? - पक्ष - विपक्ष
  • Kubeadm क्या है?
  • Kubeadm उदाहरण
  • शीर्ष 20 सबसे आम Kubeadm कमांड
  • Kubeadm का उपयोग करके Kubernetes क्लस्टर कैसे बनाएं
  • Kubeadm के साथ क्लस्टर घटकों को कैसे प्रबंधित करें
  • Kubeadm सर्वोत्तम अभ्यास


स्व-होस्टेड कुबेरनेट्स क्या है? - पक्ष - विपक्ष

स्व-होस्टेड कुबेरनेट्स, जिसे "बेयर मेटल" या "ऑन-प्रिमाइसेस" कुबेरनेट्स परिनियोजन के रूप में भी जाना जाता है, क्लाउड प्रदाता (जैसे एडब्ल्यूएस द्वारा ईकेएस) द्वारा प्रदान की गई प्रबंधित कुबेरनेट्स सेवा पर भरोसा किए बिना कुबेरनेट्स को सीधे भौतिक या आभासी मशीनों पर चलाने को संदर्भित करता है। ).


यहां स्व-होस्टेड कुबेरनेट्स के कुछ फायदे और नुकसान दिए गए हैं:


स्व-होस्टेड कुबेरनेट्स के पेशेवर

1. पूर्ण नियंत्रण और अनुकूलन

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

2. लागत दक्षता

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

3. सुरक्षा और अनुपालन

सेल्फ-होस्टिंग कुबेरनेट्स आपको नेटवर्क नीतियों, एन्क्रिप्शन, एक्सेस नियंत्रण और अनुपालन आवश्यकताओं जैसे सुरक्षा उपायों पर सीधा नियंत्रण देता है। यह आपको अपने संगठन की आवश्यकताओं और नियामक मानकों के लिए विशिष्ट सर्वोत्तम कुबेरनेट्स सुरक्षा प्रथाओं को लागू करने की अनुमति देता है। (log4j, कोई घंटी बजाओ?)

4. संसाधन आवंटन

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


स्व-होस्टेड कुबेरनेट्स के विपक्ष

1. बुनियादी ढांचा प्रबंधन

स्व-होस्टिंग कुबेरनेट्स को अंतर्निहित बुनियादी ढांचे के प्रबंधन और रखरखाव में विशेषज्ञता की आवश्यकता होती है।


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

2. स्केलेबिलिटी और लोच

स्वचालित स्केलिंग क्षमताओं की पेशकश करने वाली प्रबंधित सेवाओं की तुलना में स्व-होस्ट किए गए कुबेरनेट क्लस्टर को स्केल करना अधिक जटिल हो सकता है।


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

3. परिचालन जटिलता

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


Kubeadm क्या है?

Kubeadm एक कमांड-लाइन टूल है जो Kubernetes क्लस्टर को स्थापित करने और प्रबंधित करने की प्रक्रिया को सरल बनाता है, जिससे तकनीकी समुदाय के सदस्यों के लिए कंटेनर ऑर्केस्ट्रेशन की दुनिया में गोता लगाना आसान हो जाता है।


kubeadm को अपने भरोसेमंद सहायक के रूप में सोचें जो क्लस्टर सेटअप की बारीकियों का ध्यान रखता है, जिससे आप बड़ी तस्वीर पर ध्यान केंद्रित कर सकते हैं।


यह आवश्यक घटकों को कॉन्फ़िगर करने, प्रमाणपत्र तैयार करने और यह सुनिश्चित करने जैसे जटिल कार्यों को स्वचालित करता है कि आपका क्लस्टर सर्वोत्तम प्रथाओं का पालन करता है।


Kubeadm उदाहरण

kubeadm कैसे काम करता है इसे बेहतर ढंग से समझने के लिए आइए कुछ उदाहरणों और कमांडों पर एक नज़र डालें।

1. नियंत्रण विमान को आरंभ करना

उदाहरण कमांड #1: ` kubeadm init

उपरोक्त कमांड का उपयोग कैसे करें यहां बताया गया है।

kubeadm init --pod-network-cidr=192.168.0.0/16


यह कमांड मास्टर नोड पर नियंत्रण विमान को आरंभ करता है। यह आवश्यक प्रमाणपत्र तैयार करता है, एपीआई सर्वर आदि सेट करता है, और अन्य महत्वपूर्ण घटक।


` -पॉड-नेटवर्क-सीआईडीआर` ध्वज क्लस्टर में पॉड नेटवर्क के लिए आईपी एड्रेस रेंज निर्दिष्ट करता है।

2. वर्कर नोड्स को जोड़ना

उदाहरण कमांड #2: ` kubeadm join


kubeadm join <master-node-ip>:<master-node-port> --token <token> --discovery-token-ca-cert-hash <hash>


यह कमांड एक वर्कर नोड को क्लस्टर से जोड़ता है। आपको टोकन और डिस्कवरी टोकन सीए प्रमाणपत्र हैश के साथ मास्टर नोड का आईपी और पोर्ट प्रदान करना होगा, जिसे नियंत्रण विमान आरंभीकरण के दौरान प्राप्त किया जा सकता है।

3. क्लस्टर को रीसेट करना

आदेश: ` kubeadm reset


kubeadm reset --force


यह कमांड एक क्लस्टर को रीसेट करता है, सभी स्थापित घटकों को हटाता है और नोड को उसकी पूर्व-कुबेरनेट्स स्थिति में लौटाता है। ` --force` ध्वज एक संपूर्ण रीसेट सुनिश्चित करता है।

4. कुबेरनेट्स संस्करण को अपग्रेड करना

कमांड: ` kubeadm upgrade


यहां उपरोक्त kubeadm कमांड का उपयोग करने का तरीका बताया गया है।

kubeadm upgrade plan


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


शीर्ष 20 सबसे आम Kubeadm कमांड

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

1. kubeadm init

kubeadm init --pod-network-cidr=192.168.0.0/16


उपरोक्त उदाहरण में, कमांड मास्टर नोड पर नियंत्रण विमान को आरंभ करता है, प्रमाणपत्र बनाता है और आवश्यक घटकों को स्थापित करता है। ` -पॉड-नेटवर्क-सीआईडीआर` ध्वज पॉड नेटवर्क आईपी एड्रेस रेंज निर्दिष्ट करता है।

2. कुबेदम शामिल हों

kubeadm join <master-node-ip>:<master-node-port> --token <token> --discovery-token-ca-cert-hash <hash>


उपरोक्त कमांड एक टोकन और डिस्कवरी टोकन सीए सर्टिफिकेट हैश का उपयोग करके निर्दिष्ट मास्टर नोड से कनेक्ट करके एक वर्कर नोड को क्लस्टर में जोड़ता है।

3. kubeadm रीसेट

kubeadm reset --force


उपरोक्त आदेश एक नोड को रीसेट करता है, सभी स्थापित कुबेरनेट्स घटकों को हटा देता है और इसे उसकी पूर्व-कुबेरनेट्स स्थिति में लौटा देता है। ` --force` ध्वज एक संपूर्ण रीसेट सुनिश्चित करता है।

4. kubeadm अपग्रेड

kubeadm upgrade plan


उपरोक्त कमांड एक अपग्रेड योजना प्रदान करता है, जो नियंत्रण विमान घटकों के लिए उपलब्ध अपग्रेड की जांच करता है।

5. कुबेदम टोकन

kubeadm token create


यह kubeadm कमांड क्लस्टर में नोड्स को जोड़ने के लिए उपयोग किए जाने वाले प्रमाणीकरण टोकन का प्रबंधन करता है। यह उदाहरण एक नया टोकन उत्पन्न करता है।

6. kubeadm config

kubeadm config print init-defaults


उपरोक्त कमांड kubeadm कॉन्फ़िगरेशन फ़ाइलों का प्रबंधन करता है। यह उदाहरण क्लस्टर आरंभीकरण के लिए डिफ़ॉल्ट कॉन्फ़िगरेशन को प्रिंट करता है।

7. क्यूबेडएम संस्करण

kubeadm version


उपरोक्त कमांड kubeadm के संस्करण को प्रिंट करता है।

8. kubeadm कॉन्फ़िग छवियाँ

kubeadm config images list


वर्तमान कुबेरनेट्स संस्करण के लिए आवश्यक छवियों की सूची मुद्रित करने के लिए उपरोक्त आदेश का उपयोग करें।

यह कमांड आपको मैन्युअल कंटेनर छवि प्रबंधन के लिए आवश्यक कंटेनर छवियों को निर्धारित करने में मदद करता है। कॉन्फ़िगरेशन छवियाँ खींचने के लिए ` सूची` को ` पुल` से बदलें।

9. kubeadm टोकन बनाएं

kubeadm token create --print-join-command


उपरोक्त कमांड एक नया टोकन उत्पन्न करता है जिसका उपयोग क्लस्टर में नोड्स को जोड़ने के लिए किया जा सकता है। ' --प्रिंट-जॉइन-कमांड ' ध्वज वर्कर नोड्स पर निष्पादित होने वाले जॉइन कमांड को प्रदर्शित करता है।

10. kubeadm टोकन सूची

kubeadm token list


उपरोक्त आदेश सक्रिय टोकन को उनके संबंधित निर्माण समय और समाप्ति के साथ सूचीबद्ध करता है।

11. kubeadm टोकन हटाएँ

kubeadm token delete <token_value>


किसी विशिष्ट टोकन को हटाने के लिए उपरोक्त आदेश का उपयोग करें, जिससे यह नोड जुड़ने के लिए अनुपयोगी हो जाएगा।

12. kubeadm कॉन्फ़िगरेशन माइग्रेट करें

kubeadm config migrate --old-config kubeadm.conf --new-config kubeadm.yaml


उपरोक्त कमांड एक कॉन्फ़िगरेशन फ़ाइल को पुराने संस्करण से नए संस्करण में स्थानांतरित करता है, जिससे कॉन्फ़िगरेशन का सुचारू उन्नयन संभव हो जाता है।

13. कुबेदम प्रमाणपत्र


kubeadm certs check-expirationkubeadm certs certificate-key


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

14. kubeadm init चरण

kubeadm init phase kubelet-start --config config.yaml


InitConfiguration फ़ाइल से, उपरोक्त कमांड क्यूबलेट फ़्लैग के साथ एक गतिशील वातावरण फ़ाइल बनाता है।

15. kubeadm सम्मिलित चरण

kubeadm join phase control-plane-prepare


उपरोक्त कमांड एक वर्कर नोड को नियंत्रण विमान से जोड़ने के दौरान एक विशिष्ट चरण को निष्पादित करता है। यह उदाहरण ` कंट्रोल-प्लेन-तैयार` चरण चलाता है, जो वर्कर नोड को कंट्रोल प्लेन नोड बनने के लिए तैयार करता है।

16. kubeadm kubeconfig

kubeadm kubeconfig user --client-name=foo --config=bar

kubeadm कॉन्फिग फ़ाइल बार का उपयोग करके foo नाम के एक अतिरिक्त उपयोगकर्ता के लिए kubeconfig फ़ाइल को आउटपुट करने के लिए उपरोक्त कमांड का उपयोग करें।

17. kubeadm रीसेट चरण

kubeadm reset phase preflight


उपरोक्त कमांड एक नोड की रीसेट प्रक्रिया के दौरान एक विशिष्ट चरण को निष्पादित करता है। यह उदाहरण ` preflight चरण चलाता है, जो कुबेरनेट्स घटकों को हटाने से पहले पूर्व-रीसेट जांच करता है।

18. kubeadm उन्नयन योजना

kubeadm upgrade plan


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

19. kubeadm अपग्रेड लागू

kubeadm upgrade apply v1.22.2


नियंत्रण विमान पर एक विशिष्ट कुबेरनेट्स संस्करण लागू करने के लिए उपरोक्त कमांड का उपयोग करें, इसके घटकों को निर्दिष्ट संस्करण में अपग्रेड करें।

20. kubeadm अपग्रेड नोड

kubeadm upgrade node


यह कमांड कंट्रोल प्लेन के संस्करण से मेल खाने के लिए वर्कर नोड पर kubelet और क्यूब-प्रॉक्सी को अपग्रेड करता है।


Kubeadm का उपयोग करके Kubernetes क्लस्टर कैसे बनाएं

kubeadm का उपयोग करके Kubernetes क्लस्टर बनाने के लिए, आपको यह सुनिश्चित करना होगा कि आपका वातावरण आवश्यक शर्तों को पूरा करता है।

यहां kubeadm का उपयोग करके कुबेरनेट्स क्लस्टर बनाने के बारे में चरण-दर-चरण मार्गदर्शिका दी गई है, जिसमें पूर्वापेक्षाएँ, विस्तृत निर्देश, उदाहरण और आदेश शामिल हैं।

आवश्यक शर्तें

  1. डॉकर स्थापित होने के साथ समर्थित लिनक्स वितरण (उदाहरण के लिए, उबंटू, सेंटओएस, या रेड हैट एंटरप्राइज लिनक्स) चलाने वाली दो या दो से अधिक मशीनें।

  2. प्रति मशीन 2 GiB या अधिक RAM की अनुशंसा की जाती है; इससे कम कुछ भी आपके सॉफ़्टवेयर के लिए सीमित जगह छोड़ता है।

  3. सभी मशीनों पर स्वैप स्थान अक्षम करें।

  4. प्रत्येक मशीन के लिए एक अद्वितीय होस्टनाम, मैक पता और product_uuid सेट करें।

  5. क्लस्टर की सभी मशीनों में पूर्ण नेटवर्क कनेक्टिविटी है। आप किसी सार्वजनिक या निजी नेटवर्क से जुड़ सकते हैं.

  6. अपने फ़ायरवॉल में आवश्यक पोर्ट (जैसे, 6443, 2379-2380, 10250, 10251, 10252) खोलें।


चरण 1: डॉकर और कुबेरनेट्स टूल इंस्टॉल करें

सभी मशीनों पर, अपने लिनक्स वितरण के लिए डॉकर गाइड का उपयोग करके डॉकर स्थापित करें।

सभी मशीनों पर निम्नलिखित कमांड का उपयोग करके ` kubeadm ,` kubelet , और ` kubectl इंस्टॉल करें:


sudo apt-get update && sudo apt-get install -y apt-transport-https curlcurl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.listsudo apt-get updatesudo apt-get install -y kubelet kubeadm kubectlsudo apt-mark hold kubelet kubeadm kubectl


चरण 2: कुबेरनेट्स नियंत्रण विमान को प्रारंभ करें

वांछित नियंत्रण विमान नोड पर, ` kubeadm init कमांड का उपयोग करके क्लस्टर को प्रारंभ करें:

sudo kubeadm init --pod-network-cidr=192.168.0.0/16


नोट: यदि आप किसी भिन्न पॉड नेटवर्क का उपयोग करने की योजना बना रहे हैं तो ` -pod-network-cidr` ध्वज को समायोजित करें।

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


चरण 3: kubectl के लिए क्लस्टर कॉन्फ़िगरेशन सेट करें

नियंत्रण विमान नोड पर, आवश्यक निर्देशिका बनाएं और kubeconfig फ़ाइल की प्रतिलिपि बनाएँ:


mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config


चरण 4: एक पॉड नेटवर्क ऐडऑन तैनात करें

नियंत्रण विमान नोड पर, एक पॉड नेटवर्क ऐड-ऑन तैनात करें। उदाहरण के लिए, आप केलिको का उपयोग कर सकते हैं:

kubectl apply -f https://docs.projectcalico.org/v3.21/manifests/calico.yaml


चरण 5: क्लस्टर में वर्कर नोड्स से जुड़ें

प्रत्येक वर्कर नोड पर, ` kubeadm join कमांड चलाएँ जो नियंत्रण विमान आरंभीकरण (चरण 2 से) के दौरान उत्पन्न हुआ था। यह आदेश आम तौर पर इस तरह दिखता है:

sudo kubeadm join <control_plane_IP>:6443 --token <token> --discovery-token-ca-cert-hash <hash>


चरण 6: क्लस्टर सत्यापित करें

नियंत्रण विमान नोड पर, ` kubectl का उपयोग करके क्लस्टर की स्थिति जांचें:

kubectl get nodes


बधाई हो! आपने ` kubeadm उपयोग करके सफलतापूर्वक Kubernetes क्लस्टर बनाया है। अब आप अपने एप्लिकेशन को क्लस्टर पर तैनात और प्रबंधित कर सकते हैं।


kubeadm के साथ क्लस्टर घटकों को कैसे प्रबंधित करें

kubeadm के साथ क्लस्टर घटकों को प्रबंधित करने के लिए, आप क्लस्टर को अपग्रेड करने, नोड्स जोड़ने या हटाने और नियंत्रण विमान को प्रबंधित करने जैसे कार्य करने के लिए विभिन्न कमांड का उपयोग कर सकते हैं।

यहां kubeadm के साथ क्लस्टर घटकों को प्रबंधित करने के तरीके के बारे में चरण-दर-चरण मार्गदर्शिका दी गई है, जिसमें कोड टिप्पणियों के साथ विस्तृत आदेश भी शामिल हैं।


चरण 1: क्लस्टर का उन्नयन

नियंत्रण विमान नोड पर कुबेरनेट्स के वर्तमान संस्करण की जाँच करें:

kubectl version --short


वांछित कुबेरनेट्स संस्करण से मिलान करने के लिए सभी नोड्स पर ` kubeadm , ` kubelet , और ` kubectl को अपग्रेड करें:

# Upgrade kubeadmsudo apt-get updatesudo apt-get install -y kubeadm=<desired_version># Upgrade kubelet and kubectlsudo apt-get updatesudo apt-get install -y kubelet=<desired_version> kubectl=<desired_version># Hold the packages to prevent automatic upgradessudo apt-mark hold kubeadm kubelet kubectl


नियंत्रण विमान नोड पर, अपग्रेड प्रक्रिया आरंभ करें:

sudo kubeadm upgrade plansudo kubeadm upgrade apply <desired_version>

Upgrade the kubelet configuration on all nodes:

sudo kubeadm upgrade node


अपग्रेड स्थिति सत्यापित करें:

kubectl get nodeskubectl version --short


चरण 2: वर्कर नोड्स जोड़ना

कंट्रोल प्लेन नोड पर, एक नया kubeadm जॉइन कमांड जनरेट करें:

sudo kubeadm token create --print-join-command


वर्कर नोड पर, उन्हें क्लस्टर में शामिल करने के लिए kubeadm join कमांड चलाएँ:

sudo kubeadm join <control_plane_IP>:6443 --token <token> --discovery-token-ca-cert-hash <hash>


नए कार्यकर्ता नोड्स की स्थिति सत्यापित करें:

kubectl get nodes


चरण 3: नोड्स हटाना

जिस नोड को आप हटाना चाहते हैं उसे हटा दें:

kubectl drain <node_name> --ignore-daemonsets


नियंत्रण विमान नोड पर, नोड हटाएँ:

sudo kubeadm reset


नियंत्रण विमान नोड पर, क्लस्टर से नोड हटाएँ:

kubectl delete node <node_name>


चरण 4: नियंत्रण विमान घटकों का प्रबंधन

नियंत्रण विमान घटकों को नियंत्रण विमान नोड पर अपग्रेड करें:

sudo apt-get update sudo apt-get install -y kubeadm=<desired_version> kubelet=<desired_version> kubectl=<desired_version> sudo kubeadm upgrade plan sudo kubeadm upgrade apply <desired_version> sudo systemctl restart kubelet


अपग्रेड स्थिति सत्यापित करें:

kubectl get nodes kubectl version --short

Drain the control plane node you want to remove:

kubectl drain <control_plane_node> --ignore-daemonsets


कंट्रोल प्लेन नोड पर, निम्नलिखित kubeadm कमांड का उपयोग करके कंट्रोल प्लेन घटकों को हटा दें।

sudo kubeadm reset


कंट्रोल प्लेन नोड पर, क्लस्टर से कंट्रोल प्लेन नोड हटाएं:

kubectl delete node <control_plane_node>


ध्यान दें: Kubeadm के साथ क्लस्टर घटकों को प्रबंधित करने में सावधानी की आवश्यकता होती है, क्योंकि यह क्लस्टर की स्थिरता और उपलब्धता को प्रभावित कर सकता है। सुनिश्चित करें कि आपके पास एक बैकअप योजना है और अपने सेटअप और आवश्यकताओं के लिए विशिष्ट विस्तृत निर्देशों के लिए आधिकारिक कुबेरनेट्स दस्तावेज़ का पालन करें।


Kubeadm सर्वोत्तम अभ्यास

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


Kubeadm का उपयोग केवल उन उत्पादन समूहों के लिए करें जिन्हें ऑटोस्केलिंग की आवश्यकता है

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


नियमित आधार पर बैकअप आदि

Kubeadm में क्लस्टर स्थिति को संग्रहीत करने के लिए डिफ़ॉल्ट रूप से मल्टी-आदि क्लस्टर नहीं है। कुछ गलत होने की स्थिति में आदि का नियमित बैकअप बनाएं।


मशीनों/नोड्स पर नज़र रखें

Kubeadm उन मशीनों को बंद नहीं कर सकता जो उपयोग में नहीं हैं।

इसलिए, kubeadm उपयोग करके Kubernetes क्लस्टर में लागत को अनुकूलित करने के लिए, आपको वर्कर नोड्स और उनके संसाधन उपयोग को ट्रैक करने के लिए एक बाहरी समाधान का उपयोग करने की आवश्यकता होगी।




यहाँ भी प्रकाशित किया गया।


इस लेख के लिए मुख्य छविहैकरनून के एआई इमेज जेनरेटर द्वारा प्रॉम्प्ट "कंटेनर्स" के माध्यम से तैयार की गई थी।