मैं अभी भी एक छात्र हूं, लेकिन मैं संचालन के बारे में जानकार नहीं हूं, और मेरी अंग्रेजी अभी भी खराब है।
मेरा सवाल है: विकास परिचालन का विरोध क्यों करता है ? विकासशील परिचालन कब करता है?
मैं अभी भी एक छात्र हूं, लेकिन मैं संचालन के बारे में जानकार नहीं हूं, और मेरी अंग्रेजी अभी भी खराब है।
मेरा सवाल है: विकास परिचालन का विरोध क्यों करता है ? विकासशील परिचालन कब करता है?
जवाबों:
DevOps की बात यह है कि विकास को संचालन का विरोध नहीं करना चाहिए , इसके बजाय उन्हें एक दूसरे का समर्थन करना चाहिए।
परंपरागत रूप से, जलप्रपात की तैनाती और बड़े पैमाने पर अपडेट के कारण, अपर्याप्त परीक्षण, सर्वर के वातावरण को बदलने, सूची में और आगे बढ़ने के कारण विकास में कई तरह की समस्याएं पैदा होती हैं। अनिवार्य रूप से, ऑपरेशन टीम के लिए अपडेट बहुत बड़े थे ताकि प्रक्रिया में उत्पन्न होने वाली कुछ समस्याओं के बिना उन्हें प्रभावी ढंग से तैनात किया जा सके। ये समस्याएं हो सकती हैं कि आप क्यों मानते हैं कि विकास कार्यों का विरोध करता है ।
दूसरी ओर, DevOps अद्यतन आकार को कम करने, कठोर वातावरण को कम करने और आम तौर पर हर साल हैंडऑफ़ होने की मात्रा में वृद्धि करके विकास और संचालन के बीच आवेदन के हैंडऑफ़ में सुधार करने के लिए काम करता है। तैनाती की बढ़ती संख्या के साथ संचालन के लिए कम सिरदर्द आता है, क्योंकि उन्होंने उत्पादों को अद्यतन करने के लिए आवश्यक कार्य की एक बड़ी मात्रा को स्वचालित कर दिया है, या वे बेहतर पूर्वानुमान और अपडेट के लिए तैयार करते हैं।
Tldr: DevOps का लक्ष्य इस सिद्धांत को स्पष्ट करना है कि विकास एक मानसिकता बनाकर परिचालन का विरोध करता है जहां परिचालन और विकास एक साथ उत्पादों को बार-बार और आसानी से प्रतिलिपि प्रस्तुत करने के तरीके में तैनात करते हैं।
मुझे लगता है कि आपको पहले से ही कुछ व्यापक प्रतिक्रियाएं मिलीं, लेकिन आपने कहा कि आपकी अंग्रेजी बहुत अच्छी नहीं है, इसलिए मैं बहुत ही संक्षिप्त और समझने योग्य उत्तर देने की कोशिश करूंगा:
ये दो चीजें संघर्ष करती हैं। कहा जा रहा है कि विकास और संचालन को एक दूसरे का विरोध नहीं करना चाहिए। उन्हें यह सुनिश्चित करने के लिए एक साथ काम करना चाहिए कि दोनों लक्ष्यों को प्राप्त किया जा सकता है। यह DevOps का उद्देश्य है।
विकास और संचालन के बीच तनाव अक्सर प्रोत्साहन के दुरुपयोग और टीम के भीतर अनुकूलन करने के प्रयासों के कारण होता है।
डेवलपर्स को अक्सर उन मुद्दों की गति और मात्रा से आंका जाता है, जिनके माध्यम से वे कोड रिपॉजिटरी में विलय कर सकते हैं और उनका इनाम अक्सर उस कोड से बंधा नहीं होता है जो वास्तव में काम कर रहा है या सही ढंग से काम कर रहा है। बहुत कम स्केलिंग, प्रदर्शन और अन्य कारक।
संचालन को अक्सर पर्यावरण की स्थिरता और उत्पादन में कितनी अच्छी तरह कोड काम करता है, पर आंका जाता है, लेकिन जल्दी से बदलाव लाने के लिए प्रक्रिया की गुणवत्ता पर शायद ही कभी।
यह मुद्दा बनाता है जहां डेवलपर्स को बहुत सारे कोड बनाने के लिए प्रोत्साहित किया जाता है और इसे ऑपरेशन टीम को दीवार पर फेंक दिया जाता है और संचालन टीम को पर्यावरण की स्थिरता सुनिश्चित करने के लिए यथासंभव कम परिवर्तन को स्वीकार करने के लिए प्रोत्साहन है।
DevOps इस समस्या के समाधान का एक तरीका है:
अधिकांश संगठन अपने संगठन को कार्यात्मक भागों में तोड़कर जटिलता से निपटते हैं और मांग करते हैं कि प्रत्येक भाग खुद को कैसे सुधारें। इसे अक्सर "साइलो" दृष्टिकोण कहा जाता है।
यह समझना महत्वपूर्ण है कि यह साइलो दृष्टिकोण व्यवसाय की सफलता को क्यों अवरुद्ध करता है और अक्सर संगठन को बेहतर बनाने में विफल रहता है। और यह सिर्फ विकास और संचालन को प्रभावित नहीं करता है - यह गुणवत्ता आश्वासन टीम, वित्त, उत्पाद और परियोजना प्रबंधन जैसे बड़े संगठन के भीतर अन्य सभी कार्यात्मक सिलोस को प्रभावित करता है।
जैसा कि प्रत्येक कार्यात्मक साइलो के प्रबंधकों को लागत में कटौती या गति में सुधार करने की आज्ञा दी जाती है, उनकी प्रतिक्रिया अक्सर होती है:
इन विशिष्ट प्रतिक्रियाओं के साथ, किसी भी कार्यकारी को मामूली सुधार के प्रयास शुरू करने पर शायद ही कभी उत्साह के साथ बधाई दी जाती है। प्रबंधक अपने सुधारों को अंजाम देने के लिए आवश्यक संसाधनों पर अन्य कार्यात्मक क्षेत्रों के साथ खुद को भयंकर प्रतिस्पर्धा में पाते हैं। तो, कोई आश्चर्य नहीं कि कमांड में सुधार के लिए क्रॉस-फंक्शनल लड़ाइयों को तेज किया जाए!
यहां तक कि जब एक प्रबंधक एक सुधार परियोजना के अपने हिस्से को पूरा करता है, तो वह तब अन्य कार्यात्मक क्षेत्रों और अन्य संगठनों (आपूर्तिकर्ताओं, ठेकेदारों, आदि ...) से मिलता है जो अपना काम नहीं करते थे। यह परिणामों को कम या पूरी तरह से नकार देता है।
यह क्रॉस-फ़ंक्शनल तनाव सुधार प्रयासों तक सीमित नहीं है। यह दिन-प्रतिदिन निर्णय लेने और एक संगठन में प्रबंधन प्रभावशीलता के निर्णय के बहुत दिल में है। यहाँ एक वास्तविक जीवन उदाहरण है:
एक वित्त प्रबंधक से कहा गया, "सुधार करें।" उन्होंने काम पर रखने वाले ठेकेदारों को ब्लॉक करने का निर्णय लिया, जिनकी लागत बाजार में स्वीकृत मामूली कीमत से अधिक थी। उन्होंने नई नीति को लागू किया और इस साल $ 1 मिलियन डॉलर बचाने का दावा किया। डेवलपर्स और आईटी के साथ ठेकेदारों को काम पर रखने में असमर्थ होने के कारण उन्हें कंटेनर और कंटेनर ऑर्केस्ट्रेशन का उपयोग करने में मदद मिलती है क्योंकि ये ठेकेदार महंगे हैं। उसी कंपनी में आईटी ऑपरेशन मैनेजर ने गणना की कि उनके बुनियादी ढांचे में सुधार नहीं होने से कंपनी को हर महीने अतिरिक्त खर्च में 100,000 डॉलर से अधिक की लागत आ रही है। उस दर पर, ठेकेदारों को काम पर रखने की वार्षिक बचत वर्ष समाप्त होने से पहले ही खा ली गई थी।
आप कल्पना कर सकते हैं कि इन दो कार्यात्मक क्षेत्रों के बीच संबंध बिल्कुल लवली-डोवे नहीं था।
ये क्रॉस-फंक्शनल संघर्ष साइलो दृष्टिकोण द्वारा संचालित होते हैं, जहां संगठन स्वतंत्र रूप से सुधार में प्रत्येक साइलो को मापता है। यदि आप एक लागत केंद्र हैं, तो स्वाभाविक रूप से सुधार का मतलब है कि आपके साइलो के भीतर अधिक दक्षता या लागत में कमी।
संदर्भ के इस फ्रेम में, लागत को "योजक" नियम का पालन करने के रूप में देखा जाता है। संगठन की कुल लागत के बराबर प्रत्येक साइलो की लागत एक साथ जोड़ी गई। इसलिए, प्रबंधक अपने क्षेत्र में किसी भी लागत में कमी को "अच्छे" के रूप में देखते हैं, क्योंकि वे कंपनी के लिए बचत का सीधा अनुवाद देखते हैं। संदर्भ के इस फ्रेम में, पूरे संगठन में लागत और कचरे पर हमला करने के लिए हर जगह सुधार के प्रयास फैले हुए हैं।
एक महान उदाहरण जब विकास टीम / एजाइल काम करना शुरू कर देती है और हर तिमाही के बजाय हर दो सप्ताह में क्यूए और ऑपरेशंस पर कोड डालना शुरू कर देती है। क्यूए और ऑपरेशंस इस तरह के बदलाव के लिए तैयार नहीं हैं और इसे बंद करने के लिए दोषी ठहराया जाता है। फिर, यह विकास और संचालन में लोगों के बीच प्यार में बहुत योगदान नहीं देता है।