devops automation how is automation applied devops practice
DevOps में स्वचालन:
पिछले ट्यूटोरियल में हमने इसका महत्व सीखा DevOps में स्रोत नियंत्रण । यहाँ, इस ट्यूटोरियल में हम DevOps में ऑटोमेशन के बारे में जानेंगे।
स्वचालन DevOps अभ्यास के लिए अंतिम आवश्यकता है और 'सब कुछ स्वचालित करें' DevOps का प्रमुख सिद्धांत है। DevOps में, ऑटोमेशन किक डेवलपर्स जनरेशन मशीन पर कोड जनरेशन से शुरू होता है जब तक कि कोड को धक्का नहीं दिया जाता है और उसके बाद भी उत्पादन में एप्लिकेशन और सिस्टम की निगरानी करने के लिए।
सुझाव पढ़ना => जानकारीपूर्ण DevOps ट्यूटोरियल श्रृंखला
संपूर्ण DevOps पाइपलाइन जिसमें निरंतर एकीकरण, निरंतर परीक्षण और निरंतर तैनाती शामिल है, जिसमें लाइव में एप्लिकेशन प्रदर्शन की निगरानी स्वचालित है।
स्वचालित बुनियादी ढांचे की स्थापना और विन्यास और सॉफ्टवेयर परिनियोजन DevOps अभ्यास का मुख्य आकर्षण है। कुछ घंटों की अवधि में डिलीवरी करने के लिए और प्लेटफॉर्मों पर लगातार डिलीवरी करने के लिए DevOps का अभ्यास स्वचालन पर बहुत अधिक निर्भर है।
इस प्रकार, DevOps में स्वचालन से गति, अधिक सटीकता, स्थिरता, विश्वसनीयता बढ़ जाती है और प्रसव की संख्या बढ़ जाती है। अंतत:, DevOps में स्वचालन निर्माण, तैनाती और निगरानी से सब कुछ ठीक करता है।
वीडियो भाग 2 ब्लॉक 3: DevOps स्वचालन- 16 मिनट 40 सेकंड
आइए इस ट्यूटोरियल में विस्तार से DevOps प्रैक्टिस में स्वचालन के महत्व को समझते हैं।
यहां, हम चर्चा करेंगे:
- DevOps के अभ्यास में स्वचालन कैसे लागू किया जाता है?
- स्वचालन की आवश्यकता और भूमिका?
- स्वचालित करने के लिए क्या?
- उपकरण और रूपरेखा, निरंतर परीक्षण?
मैं स्वचालन के बारे में बात करने से थोड़ा डरता हूं। क्योंकि, मैं कभी भी स्वचालन के बारे में कितना बात करता हूं, मेरे अनुसार, यह कभी भी पूरा नहीं होता है।
कहने की जरूरत नहीं है, स्वचालन केवल मैनुअल कार्यों से दूर हो रहा है। लोग सांसारिक दिनचर्या के कार्यों में अपनी भागीदारी को कम करना चाहते हैं और अपने समय और बुद्धिमत्ता का उपयोग कुछ नए या अभिनव में करना चाहते हैं।
कहा कि, DevOps में स्वचालन की भूमिका बहुत महत्वपूर्ण है और ग्राहक को लगातार मूल्य प्रदान करने में बहुत महत्वपूर्ण है।
आइए एक साथ उत्तर देते हैं, कैसे स्वचालन स्वचालन में लागू किया जाता है साथ ही क्या स्वचालित करने के लिए क्योंकि इन दोनों सवालों का जवाब एक साथ मिलता है।
स्वचालित करने के लिए क्या?
मुझे नहीं लगता कि इस स्वचालन युग में इस प्रश्न के उत्तर के लिए बहुत स्पष्टीकरण की आवश्यकता है। हम कहीं भी जाते हैं, हम उन चीजों को देखते हैं जो स्वचालित हो रही हैं, या तो न्यूनतम या बिल्कुल भी मानवीय हस्तक्षेप नहीं है। तो, DevOps इसका अपवाद नहीं है।
एक पारंपरिक सॉफ्टवेयर विकास पद्धति में, यह सिर्फ विकास टीम और उनकी गतिविधियाँ थीं जो स्वचालित रूप से, विशेष रूप से परीक्षण करने के लिए उपयोग की जाती थीं। ऐसा हुआ करता था, कि स्वचालन का मतलब है परीक्षण और स्वचालित परीक्षण के मामले, वह भी केवल कार्यात्मक परीक्षण के मामले, लेकिन प्रदर्शन और सुरक्षा जैसे गैर-कार्यात्मक परीक्षण भी नहीं।
और कोई भी अन्य गतिविधि विशेष रूप से स्वचालित होने के लिए उपयोग की जाने वाली गतिविधियों का विरोध नहीं करती है। विशाल क्लस्टर पर मैनुअल तैनाती की विफलता जिसमें 8 सर्वर शामिल थे और इससे होने वाला नुकसान बहुत अच्छा है उदाहरण तैनाती में शामिल जटिलता और यह स्पष्ट रूप से Devops गतिविधियों के लिए स्वचालन की आवश्यकता की व्याख्या करता है।
वाह क्या सर्वर पर खेलने के लिए
मैंने खुद को देखा है, कि नेटवर्क और वातावरण को कॉन्फ़िगर करने के लिए, एक विशाल वेतन पैकेज का भुगतान करके अत्यधिक कुशल और बुद्धिमान लोगों को काम पर रखने वाले संगठन, जो अपनी बुद्धि, संबंधित क्षेत्र में ज्ञान, अपने अनुभव और विशेषज्ञता के आधार पर करते थे, जो था एक पूर्ण मैनुअल काम।
मैनुअल कॉन्फ़िगरेशन हमेशा त्रुटि-प्रवण होता है जैसा कि सभी जानते हैं। आमतौर पर मैन्युअल सेट अप के मामले में क्या होता है, एक समय के बाद, बार-बार एक ही काम को बार-बार करने के बाद, ये स्मार्ट लोग, नेटवर्क कॉन्फ़िगरेशन इन गतिविधियों से ऊब जाते हैं और गलतियों के कारण समाप्त हो जाते हैं। लापरवाही के लिए।
आप जानते हैं कि वे बहुत शानदार हैं और ये गतिविधियाँ उनके लिए बहुत सरल और अटूट होंगी और उन्हें हर दिन नई चुनौतियों की ज़रूरत होगी, न कि इस उबाऊ काम की।
इसलिए, बुनियादी ढांचे के हिस्से को नियंत्रित करने वाले सॉफ़्टवेयर इंस्टॉलेशन और संस्करण के लिए स्वचालन की शुरुआत एक बहुत बड़ी उपलब्धि बन गई और समय की बचत के अलावा बहुत सी मानवीय त्रुटियों को कम कर दिया और किसी भी सामान्य व्यक्ति को ऐसा करने की अनुमति दी, जिससे कुशल श्रमिकों पर निर्भरता दूर हो गई।
इसके अलावा, अगर कोई नया वातावरण स्थापित किया जाना है, तो प्रक्रियाओं के चारों ओर दौड़ना, जैसे एक नया वातावरण स्थापित करने के लिए टिकट बढ़ाना, आईटी टीम इसे स्थापित करने में पीछे से काम कर रही है, इन सभी बाधाओं को हटा दिया जाता है।
इस प्रकार, व्यक्तिगत टीम के सदस्यों को कार्यों को करने के लिए सशक्त किया जाता है। स्वचालन द्वारा प्राप्त की जा रही गति, विश्वसनीयता और स्थिरता की कल्पना करें। इसलिए, स्वचालन में बहुत वृद्धि हुई है, उत्पादन के लिए डिलीवरी की संख्या।
इसलिए अब DevOps अभ्यास में, ऑपरेशन टीम ने भी अपने सभी कार्यों में स्वचालन शुरू कर दिया है, जो DevOps की सफलता की कुंजी बन गया है।
वास्तव में, DevOps अभ्यास में, स्वचालन किक डेवलपर्स पीढ़ी पर कोड पीढ़ी से शुरू होती है जब तक कि कोड उत्पादन के लिए बाहर नहीं होता है और उसके बाद भी लाइव में एप्लिकेशन की निगरानी करता है। यह एक विशिष्ट DevOps चक्र है।
डेवलपमेंट और ऑप्स टीम कोड और इनवायरमेंट कॉन्फिगरेशन को सोर्स कंट्रोल में चेक करती है, जहां से ऑटोमेशन बिल्ड को ट्रिगर करने, यूनिट टेस्ट केस और अन्य बेसिक कोड क्वालिटी, कवरेज टेस्ट केस, सिक्योरिटी-रिलेटेड टेस्ट केस आदि के लिए चलती है।
एक बार जब कोड इसके साथ होता है, तो कोड स्वचालित रूप से संकलित हो जाता है, संस्करण नियंत्रण में संग्रहीत हो जाता है और स्वचालित रूप से आगे के परीक्षण के लिए और अंततः उत्पादन रिलीज के लिए आगे के वातावरण पर तैनात हो जाता है।
हम निर्माण के ट्रिगर से शुरू होने वाले विकास के प्रत्येक चरण में स्वचालन को देख सकते हैं, यूनिट परीक्षण, पैकेजिंग, निर्दिष्ट वातावरण पर तैनात करना, बिल्ड सत्यापन परीक्षण, धूम्रपान परीक्षण, स्वीकृति परीक्षण मामलों को अंजाम देना और अंत में तैनाती करना। अंतिम उत्पादन वातावरण पर।
यहां तक कि जब हम परीक्षण मामलों को स्वचालित करते हैं, तो यह केवल इकाई परीक्षण नहीं है, बल्कि स्थापना परीक्षण, एकीकरण परीक्षण, उपयोगकर्ता अनुभव परीक्षण, यूआई परीक्षण आदि हैं।
DevOps संचालन टीम को, विकास गतिविधियों के अलावा, उनकी सभी गतिविधियों को स्वचालित करने के लिए करता है, जैसे कि सर्वरों का प्रावधान, सर्वरों को कॉन्फ़िगर करना, नेटवर्क को कॉन्फ़िगर करना, फायरवॉल को कॉन्फ़िगर करना, उत्पादन प्रणाली में एप्लिकेशन की निगरानी करना।
इसलिए इसका उत्तर देने के लिए कि स्वचालित क्या है, यह ट्रिगर, संकलन और निर्माण, तैनात करना या स्थापित करना, एक कोडित स्क्रिप्ट के रूप में स्थापित इंफ्रास्ट्रक्चर को स्वचालित करना, पर्यावरण को कोडित स्क्रिप्ट के रूप में कॉन्फ़िगर करना, परीक्षण का उल्लेख करने के लिए अनावश्यक, जीवन के बाद के जीवन की निगरानी की निगरानी करना है। लॉगिंग मॉनिटरिंग, मॉनिटरिंग अलर्ट, लाइव करने के लिए नोटिफिकेशन को पुश करना और किसी भी त्रुटि और चेतावनी आदि के मामले में लाइव से अलर्ट प्राप्त करना।
अंततः परियोजना से संबंधित सभी दस्तावेजों को स्वचालित करना।
तो, मैं कह सकता हूँ कि DevOps भाषा में स्वचालन का अर्थ है, निरंतर एकीकरण, निरंतर परीक्षण, निरंतर तैनाती और निरंतर वितरण। हम उनमें से प्रत्येक का आने वाले भागों में विस्तार से अध्ययन करेंगे।
कुल मिलाकर, DevOps विकास और संचालन की हर गतिविधि को सक्षम बनाता है, जहां भी संभव हो, जो भी स्वचालित हो, जो भी दोहराए जाने योग्य हो, जहां भी सटीकता की मांग की जाती है, जो भी लंबे समय तक स्वचालित होता है।
फिर भी, अगर हम स्वचालन के लिए उपयोग किए जाने वाले उपकरणों का उल्लेख नहीं करते हैं, तो स्वचालन पर चर्चा अधूरी है।
तो, एक सही ढांचे और स्वचालन उपकरण का चयन DevOps में स्वचालन के लिए महत्वपूर्ण आवश्यकता है।
बाजार में बहुत सारे उपकरण उपलब्ध हैं, दोनों खुले स्रोत और लाइसेंस प्राप्त उपकरण हैं, जो पूरे वितरण पाइपलाइन के अंत को समाप्त करने का समर्थन करता है, जिसमें ऑप्स टीम द्वारा की गई गतिविधियां, प्रोविजनिंग मशीन, स्वचालित सर्वर कताई, नेटवर्क कॉन्फ़िगर करना, फायरवॉल शामिल हैं। और यहां तक कि सॉफ्टवेयर के प्रदर्शन की निगरानी करना।
इसके अलावा, कुछ संगठनों ने अपने स्वयं के ढांचे को विकसित किया है ताकि देवओप्स की अंतिम प्रक्रिया को समाप्त करने के लिए एकीकृत किया जा सके जो कोड कमिटमेंट से लेकर कोड तैनाती तक शुरू होता है जिसमें प्रलेखन भी शामिल है जो एक एकल एकीकृत उपकरण है और टीम को संबंधित चीज़ों के लिए रूपरेखा के बाहर जाने की ज़रूरत नहीं है। प्रोग्राम करने के लिए, यह संस्करण नियंत्रण, परीक्षण केस लेखन, समीक्षा, परीक्षण केस परिणाम डंपिंग, विश्लेषण आदि हो।
जैसे: कठपुतली, Azure संसाधन प्रबंधक, शेफ आदि,
DevOps में स्वचालन के लाभ
Android के लिए शीर्ष 10 संगीत डाउनलोडर
हमने पहले रिलीज को देखा है, उत्पादन में लगने वाले स्वचालन के अभाव में और हाल ही में फुर्तीले होने के साथ, यह दुबला, डरावना या सुरक्षित है, और स्वचालन के प्रतिशत में सुधार होने के साथ, रिलीज की समय-सीमा कुछ महीनों के लिए कम हो जाती है या सप्ताह।
लेकिन कुछ ही घंटों में रिलीज को तेज करने के लिए ऑटोमेशन बिल्कुल जरूरी है। इसलिए, मुझे लगता है कि जब तक हम पूरे पाइपलाइन में जगह नहीं बनाते हैं, तब तक इस तरह के त्वरित और लगातार रिलीज करना असंभव है।
तो, स्पष्ट रूप से, अगर हम देवो के उद्देश्यों को प्राप्त करना चाहते हैं, तो उच्च गुणवत्ता और मूल्य अक्सर और तेजी से वितरण के माध्यम से ग्राहकों को दिया जाता है, सब कुछ स्वचालित है।
स्पष्ट रूप से, हम अब तक जानते हैं कि स्वचालन मैन्युअल त्रुटियों को दूर करता है, एक व्यक्ति पर निर्भरता, तेजी से प्रदर्शन करता है, और सटीकता प्राप्त करता है जिससे स्थिरता और विश्वसनीयता प्राप्त होती है। इसलिए, सब कुछ स्वचालित करने से उच्च गुणवत्ता वाले वितरण के उद्देश्य को सक्षम बनाता है, लगातार रिलीज और तेजी से रिलीज को सक्षम करता है।
संक्षेप में, स्वचालन,
- मैन्युअल त्रुटियों को दूर करता है
- टीम के सदस्य सशक्त होते हैं
- निर्भरता दूर हो गई
- विलंबता दूर की
- प्रसव की संख्या नहीं बढ़ाता है
- लीड समय को कम करता है
- रिलीज की आवृत्ति बढ़ाता है
- तेजी से प्रतिक्रिया प्रदान करता है
- गति, विश्वसनीयता और स्थिरता को सक्षम करता है
इसलिए, संक्षेप में, DevOps में स्वचालन अंततः निर्माण, तैनाती और निगरानी से सब कुछ ठीक कर देता है।
PREV ट्यूटोरियल | अगले ट्यूटोरियल
अनुशंसित पाठ
- DevOps में वितरण की छोटी वृद्धि का महत्व
- DevOps में स्रोत नियंत्रण या संस्करण नियंत्रण (वीडियो ट्यूटोरियल भाग 2 - ब्लॉक 2)
- DevOps ट्यूटोरियल: DevOps के लिए अंतिम गाइड (25+ ट्यूटोरियल)
- Agile Manifesto (भाग 2 - ब्लॉक 1) पर आधारित DevOps अभ्यास
- DevOps टेस्टिंग ट्यूटोरियल: QA टेस्टिंग को कैसे प्रभावित करेंगे DevOps?
- क्लाउड में DevOps कार्यान्वयन के लिए AWS कोडकॉमिट ट्यूटोरियल
- SeeTest ऑटोमेशन ट्यूटोरियल: मोबाइल टेस्ट ऑटोमेशन टूल गाइड
- DevOps में सतत वितरण