Kubernetes डिप्लॉयमेंट समझना
जानें कि डिप्लॉयमेंट आपके अनुप्रयोग की वांछित स्थिति का प्रबंधन कैसे करते हैं और क्रमिक अपडेट तथा रोलबैक कैसे सक्षम करते हैं।
Kubernetes डिप्लॉयमेंट समझना, CoddyKit पर डेवलपरों के लिए Docker और Kubernetes का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह डेवलपरों के लिए Docker और Kubernetes सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। डेवलपरों के लिए Docker और Kubernetes पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
कुबेरनेटिस डिप्लॉयमेंट से परिचय
कुबेरनेटिस डिप्लॉयमेंट की दुनिया में आपका स्वागत है! पॉड के बारे में सीखने के बाद आप सोच सकते हैं कि कई समान पॉड का विश्वसनीय ढंग से प्रबंधन कैसे किया जाए।
डिप्लॉयमेंट एक शक्तिशाली कुबेरनेटिस संसाधन है, जो आपके अनुप्रयोगों की वांछित स्थिति घोषित करने और उसका प्रबंधन करने में सहायता करता है।
डिप्लॉयमेंट क्यों आवश्यक हैं
कल्पना कीजिए कि आप एक वेब सर्वर चला रहे हैं। उच्च उपलब्धता और ट्रैफ़िक संभालने के लिए आपको उसकी कई प्रतियाँ (रेप्लिका) चाहिए। यदि कोई एक विफल हो जाए, तो उसकी जगह लेने के लिए आपको दूसरा चाहिए।
डिप्लॉयमेंट इन कार्यों को स्वचालित करते हैं:
- स्वयं-सुधार: विफल पॉड को अपने-आप बदलना।
- स्केलिंग: पॉड रेप्लिका की संख्या को आसानी से समायोजित करना।
- अपडेट: बिना सेवा बाधित किए क्रमिक अपडेट करना।
- रोलबैक: कुछ गलत होने पर पिछले संस्करणों पर लौटना।
वांछित स्थिति का प्रयोग
डिप्लॉयमेंट के पीछे की मूल अवधारणा उसकी वांछित स्थिति है। आप कुबेरनेटिस को बताते हैं कि आप अपने अनुप्रयोग को कैसा देखना चाहते हैं, और वह उसे वैसा बनाने का प्रयास करता है।
उदाहरण के लिए, यदि आप कहते हैं, "मैं संस्करण 1.21 वाले 3 Nginx पॉड चलाना चाहता हूँ," तो डिप्लॉयमेंट यह सुनिश्चित करेगा कि Nginx 1.21 वाले ठीक 3 पॉड चल रहे हों, भले ही उनमें से कुछ विफल हो जाएँ।
डिप्लॉयमेंट और ReplicaSets
आंतरिक रूप से, डिप्लॉयमेंट ReplicaSet नामक एक अन्य कुबेरनेटिस संसाधन का उपयोग करते हैं।
- ReplicaSet हर समय पॉड रेप्लिका की निर्दिष्ट संख्या चलती रहने का सुनिश्चित करता है।
- जब आप कोई डिप्लॉयमेंट बनाते हैं, तो यह अपने-आप एक ReplicaSet बना देता है।
- डिप्लॉयमेंट अपडेट करने पर यह एक नया ReplicaSet बनाता है और नए को बढ़ाते हुए पुराने को धीरे-धीरे कम करता है।
डिप्लॉयमेंट मैनिफ़ेस्ट बनाना
अधिकांश Kubernetes संसाधनों की तरह, डिप्लॉयमेंट्स को YAML का उपयोग करके परिभाषित किया जाता है। मुख्य फ़ील्ड में शामिल हैं:
apiVersion:apps/v1(डिप्लॉयमेंट्स के लिए)kind:Deploymentmetadata: डिप्लॉयमेंट की पहचान के लिए नाम और लेबल।spec:replicas: पॉड्स की वांछित संख्या।selector: डिप्लॉयमेंट अपने पॉड्स को कैसे खोजता है (लेबल का उपयोग करके)।template: पॉड की परिभाषा (बिल्कुल स्वतंत्र पॉड YAML की तरह!)।
उदाहरण: Nginx डिप्लॉयमेंट
आइए Nginx के लिए एक सरल डिप्लॉयमेंट बनाएँ। यह YAML, Nginx वेब सर्वर की 3 प्रतिकृतियाँ निर्दिष्ट करता है।
आमतौर पर आप इसे nginx-deployment.yaml के रूप में सहेजकर kubectl apply -f nginx-deployment.yaml का उपयोग करके लागू करेंगे।
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.21.6
ports:
- containerPort: 80डिप्लॉयमेंट की स्थिति जाँचना
डिप्लॉयमेंट लागू करने के बाद, आप kubectl कमांड का उपयोग करके इसकी स्थिति जाँच सकते हैं:
kubectl get deployments: आपके डिप्लॉयमेंट्स का सारांश दिखाता है।kubectl get pods -l app=nginx: आपके Nginx डिप्लॉयमेंट द्वारा प्रबंधित पॉड्स देखें।kubectl describe deployment nginx-deployment: घटनाओं और संबंधित ReplicaSets सहित विस्तृत जानकारी प्राप्त करें।
निर्बाध ऐप अपडेट
डिप्लॉयमेंट्स की सबसे अच्छी सुविधाओं में से एक क्रमिक अपडेट है। इससे आप बिना सेवा बाधित किए अपने एप्लिकेशन का संस्करण अपडेट कर सकते हैं।
जब आप अपने डिप्लॉयमेंट के YAML में इमेज या कॉन्फ़िगरेशन बदलते हैं, तो Kubernetes:
- अपडेट किए गए संस्करण वाले नए पॉड्स बनाता है।
- नए पॉड्स के तैयार होने पर पुराने पॉड्स को धीरे-धीरे समाप्त करता है।
इससे यह सुनिश्चित होता है कि अपडेट की पूरी प्रक्रिया के दौरान आपका एप्लिकेशन उपलब्ध रहे।
क्रमिक अपडेट करना
आइए अपने Nginx डिप्लॉयमेंट को नए संस्करण में अपडेट करें। आप अपनी nginx-deployment.yaml फ़ाइल संपादित करके इमेज को nginx:1.22.1 में बदलेंगे।
फिर बदलाव लागू करें: kubectl apply -f nginx-deployment.yaml। Kubernetes क्रमिक अपडेट करेगा!
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.22.1 # Changed from 1.21.6
ports:
- containerPort: 80बदलाव वापस करना
कभी-कभी कोई अपडेट गलत हो जाता है। डिप्लॉयमेंट्स आपको आसानी से पिछले स्थिर संस्करण पर रोलबैक करने की सुविधा देते हैं।
Kubernetes आपके डिप्लॉयमेंट्स के संशोधनों का इतिहास रखता है। आप इस इतिहास को देख सकते हैं और आवश्यकता पड़ने पर पहले की स्थिति पर वापस जा सकते हैं, जिससे खराब डिप्लॉयमेंट्स का प्रभाव कम हो जाता है।
kubectl rollout history deployment nginx-deployment: पिछले संशोधन देखें।kubectl rollout undo deployment nginx-deployment --to-revision=1: किसी विशिष्ट संशोधन पर वापस जाएँ।
डिप्लॉयमेंट ज्ञान-जाँच
आपने Kubernetes डिप्लॉयमेंट्स की क्षमता के बारे में सीख लिया है!
निम्नलिखित में से कौन-सी क्षमता Kubernetes डिप्लॉयमेंट द्वारा सीधे प्रदान नहीं की जाती है?
डिप्लॉयमेंट पावर-अप!
बधाई हो! आपने Kubernetes डिप्लॉयमेंट्स को सफलतापूर्वक समझ लिया है।
हमने ये विषय कवर किए:
- डिप्लॉयमेंट्स क्या हैं और एप्लिकेशन प्रबंधित करने के लिए वे क्यों महत्वपूर्ण हैं।
- वांछित स्थिति की अवधारणा और डिप्लॉयमेंट्स द्वारा ReplicaSets का उपयोग।
- डिप्लॉयमेंट्स बनाना, जाँचना, अपडेट करना और रोलबैक करना।
अब हम जानेंगे कि Kubernetes Services का उपयोग करके अपने एप्लिकेशन को पहुँच योग्य कैसे बनाया जाए!
एआई शिक्षक के साथ डेवलपरों के लिए Docker और Kubernetes सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 12
- पाठ
- 48
अक्सर पूछे जाने वाले प्रश्न
क्या “Kubernetes डिप्लॉयमेंट समझना” पाठ निःशुल्क है?
हाँ—“Kubernetes डिप्लॉयमेंट समझना” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और डेवलपरों के लिए Docker और Kubernetes पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। डेवलपरों के लिए Docker और Kubernetes पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“Kubernetes डिप्लॉयमेंट समझना” में मैं क्या सीखूँगा?
जानें कि डिप्लॉयमेंट आपके अनुप्रयोग की वांछित स्थिति का प्रबंधन कैसे करते हैं और क्रमिक अपडेट तथा रोलबैक कैसे सक्षम करते हैं। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ डेवलपरों के लिए Docker और Kubernetes का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या डेवलपरों के लिए Docker और Kubernetes शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर डेवलपरों के लिए Docker और Kubernetes शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।
“Kubernetes डिप्लॉयमेंट समझना” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस डेवलपरों के लिए Docker और Kubernetes पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर डेवलपरों के लिए Docker और Kubernetes पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- Kubernetes डिप्लॉयमेंट समझना
- सर्विस के साथ अनुप्रयोगों को उपलब्ध कराना
- अनुप्रयोगों का स्केलिंग और स्व-उपचार
- क्रमिक अपडेट और रोलबैक