विषयसूची
यदि आप सॉफ्टवेयर उद्योग में या उसके आसपास काम करते हैं, तो आपने शायद वर्चुअल मशीनों के बारे में सुना होगा। यदि नहीं, तो आप सोच रहे होंगे कि वे क्या हैं और उनका उपयोग किस लिए किया जाता है।
एक सॉफ्टवेयर इंजीनियर के रूप में, मैं प्रतिदिन वर्चुअल मशीनों का उपयोग करता हूं। वे सॉफ्टवेयर विकास में शक्तिशाली उपकरण हैं, लेकिन उनके अन्य उपयोग भी हैं। वीएम के रूप में भी जाना जाता है, कई व्यवसाय उनके लचीलेपन, विश्वसनीयता और लागत-प्रभावशीलता के कारण उनका उपयोग करते हैं; वे भगोड़े सॉफ़्टवेयर परीक्षण से होने वाली आपदाओं को भी रोकते हैं।
आइए देखें कि वर्चुअल मशीन क्या हैं और उनका उपयोग क्यों किया जाता है।
वर्चुअल मशीन क्या है?
वर्चुअल मशीन एक ऑपरेटिंग सिस्टम (OS) का एक उदाहरण है, जैसे कि विंडोज, मैक ओएस, या लिनक्स कंप्यूटर के मुख्य ओएस के भीतर चल रहा है।
आमतौर पर, यह आपके डेस्कटॉप पर एक ऐप विंडो में चलता है। एक वर्चुअल मशीन में पूर्ण कार्यक्षमता होती है और यह एक अलग कंप्यूटर या मशीन की तरह कार्य करती है। संक्षेप में, एक वर्चुअल मशीन एक अन्य कंप्यूटर के अंदर चलने वाला एक वर्चुअल कंप्यूटर है जिसे होस्ट मशीन के रूप में जाना जाता है।
छवि 1: लैपटॉप पर चलने वाली वर्चुअल मशीन।
एक वर्चुअल मशीन इसमें हार्डवेयर (मेमोरी, हार्ड ड्राइव, कीबोर्ड या मॉनिटर) नहीं है। यह होस्ट मशीन से सिम्युलेटेड हार्डवेयर का उपयोग करता है। इस वजह से, कई वीएम, जिन्हें "अतिथि" भी कहा जाता है, एक ही होस्ट मशीन पर चलाए जा सकते हैं।
छवि 2: कई वीएम चलाने वाली होस्ट मशीन।
होस्ट अलग-अलग ऑपरेटिंग के साथ कई वीएम भी चला सकते हैंलिनक्स, मैक ओएस और विंडोज सहित सिस्टम। यह क्षमता हाइपरवाइजर नामक सॉफ्टवेयर पर निर्भर करती है (ऊपर चित्र 1 देखें)। हाइपरवाइजर होस्ट मशीन पर चलता है और आपको वर्चुअल मशीन बनाने, कॉन्फ़िगर करने, चलाने और प्रबंधित करने की अनुमति देता है। Oracle VirtualBox, VMware, Parallels, Xen, Microsoft Hyper-V, और कई अन्य जैसे एप्लिकेशन यही करते हैं: वे हाइपरवाइज़र हैं।
हाइपरवाइज़र लैपटॉप, पीसी, या सर्वर पर चल सकता है। यह स्थानीय कंप्यूटर या नेटवर्क पर वितरित उपयोगकर्ताओं के लिए वर्चुअल मशीन उपलब्ध कराता है।
विभिन्न प्रकार की वर्चुअल मशीन और वातावरण के लिए विभिन्न प्रकार के हाइपरविजर की आवश्यकता होती है। आइए उनमें से कुछ पर नज़र डालते हैं।
वर्चुअल मशीन के प्रकार
सिस्टम वर्चुअल मशीन
सिस्टम वीएम, जिन्हें कभी-कभी पूर्ण वर्चुअलाइजेशन कहा जाता है, एक हाइपरविजर द्वारा चलाए जाते हैं और प्रदान करते हैं एक वास्तविक कंप्यूटर सिस्टम की कार्यक्षमता। वे सिस्टम संसाधनों को प्रबंधित और साझा करने के लिए होस्ट के मूल ऑपरेटिंग सिस्टम का उपयोग करते हैं।
सिस्टम वर्चुअल मशीनों को अक्सर तेज़ या एकाधिक CPU, बड़ी मात्रा में मेमोरी, और डिस्क स्थान के टन के साथ एक शक्तिशाली होस्ट की आवश्यकता होती है। कुछ, जो व्यक्तिगत या लैपटॉप कंप्यूटरों पर चलते हैं, उन्हें उस कंप्यूटिंग शक्ति की आवश्यकता नहीं हो सकती है जिसकी बड़े उद्यम वर्चुअल सर्वर को आवश्यकता होती है; हालाँकि, यदि होस्ट सिस्टम पर्याप्त नहीं है तो वे धीमी गति से चलेंगे।
आभासी प्रक्रिया करेंमशीनें
प्रक्रिया वर्चुअल मशीनें एसवीएम से काफी अलग हैं—हो सकता है कि आपने उन्हें अपनी मशीन पर चलाया हो और आपको पता भी न हो। उन्हें एप्लिकेशन वर्चुअल मशीन या प्रबंधित रनटाइम वातावरण (MRE) के रूप में भी जाना जाता है। ये वर्चुअल मशीनें एक होस्ट ऑपरेटिंग सिस्टम के अंदर चलती हैं और एप्लिकेशन या सिस्टम प्रक्रियाओं का समर्थन करती हैं।
पीवीएम का उपयोग क्यों करें? वे विशिष्ट ऑपरेटिंग सिस्टम या हार्डवेयर पर निर्भर हुए बिना सेवाएं प्रदान करते हैं। उनके पास अपने स्वयं के छोटे ओएस हैं केवल उन संसाधनों के साथ जिनकी उन्हें आवश्यकता है। MRE एक अलग वातावरण में है; इससे कोई फर्क नहीं पड़ता कि यह विंडोज, मैक ओएस, लिनक्स, या किसी अन्य होस्ट मशीन पर चलता है। आपका कंप्यूटर। इसका उपयोग जावा अनुप्रयोगों को चलाने के लिए किया जाता है और संक्षेप में इसे जावा वर्चुअल मशीन या जेवीएम कहा जाता है। एक संपूर्ण कंप्यूटर सिस्टम। दो अलग-अलग प्रकार के हाइपरवाइजर हैं: बेयर मेटल हाइपरवाइजर और होस्टेड हाइपरवाइजर। आइए इन दोनों पर एक नज़र डालते हैं।
बेयर मेटल हाइपरवाइज़र
बीएमएच को नेटिव हाइपरवाइज़र भी कहा जा सकता है, और वे होस्ट के ऑपरेटिंग सिस्टम के भीतर चलने के बजाय सीधे होस्ट के हार्डवेयर पर चलते हैं। वास्तव में, वे होस्ट के ऑपरेटिंग सिस्टम, शेड्यूलिंग और का स्थान लेते हैंप्रत्येक वर्चुअल मशीन द्वारा हार्डवेयर उपयोग का प्रबंधन, इस प्रकार प्रक्रिया में "मध्यम व्यक्ति" (मेजबान का ओएस) को काट रहा है। सर्वर संसाधन। Microsoft Azure या Amazon Web Services इस प्रकार के आर्किटेक्चर पर होस्ट किए गए VM हैं। अन्य उदाहरण हैं KVM, Microsoft Hyper-V, और VMware vSphere।
होस्टेड हाइपरवाइज़र
होस्ट किए गए हाइपरवाइज़र मानक ऑपरेटिंग सिस्टम पर चलते हैं—किसी भी अन्य एप्लिकेशन की तरह जो हम अपनी मशीनों पर चलाते हैं। वे संसाधनों के प्रबंधन और वितरण के लिए होस्ट के OS का उपयोग करते हैं। इस प्रकार का हाइपरविजर व्यक्तिगत उपयोगकर्ताओं के लिए बेहतर अनुकूल है, जिन्हें अपनी मशीनों पर कई ऑपरेटिंग सिस्टम चलाने की आवश्यकता होती है।
इनमें Oracle VirtualBox, VMware वर्कस्टेशन, VMware Fusion, Parallels Desktop, और कई अन्य एप्लिकेशन शामिल हैं। आप हमारे लेख बेस्ट वर्चुअल मशीन सॉफ्टवेयर में होस्ट किए गए हाइपरविजर के बारे में अधिक विस्तृत जानकारी प्राप्त कर सकते हैं।
वर्चुअल मशीन का उपयोग क्यों करें?
अब जब आप वर्चुअल मशीन के बारे में बुनियादी समझ गए हैं, तो आप शायद कुछ उत्कृष्ट अनुप्रयोगों के बारे में सोच सकते हैं। लोगों द्वारा वर्चुअल मशीनों का उपयोग करने के कुछ प्रमुख कारण यहां दिए गए हैं।
1. किफ़ायती
वर्चुअल मशीन कई स्थितियों में किफ़ायती होती हैं। कॉर्पोरेट जगत में सबसे प्रमुख में से एक है। कर्मचारियों के लिए संसाधन प्रदान करने के लिए भौतिक सर्वर का उपयोग कर सकते हैंबहुत महंगा हो। हार्डवेयर सस्ता नहीं है, और इसे बनाए रखना और भी महंगा है।
एंटरप्राइज सर्वर के रूप में वर्चुअल मशीन का उपयोग अब आदर्श बन गया है। MS Azure जैसे प्रदाता के VMs के साथ, कोई प्रारंभिक हार्डवेयर ख़रीदी नहीं होती है और कोई रखरखाव शुल्क नहीं होता है। इन वीएम को सिर्फ एक घंटे के पैसे के लिए सेट, कॉन्फ़िगर और इस्तेमाल किया जा सकता है। उपयोग न होने पर उन्हें बंद भी किया जा सकता है और कोई लागत नहीं लगती है। अगर आपको कई ऑपरेटिंग सिस्टम या अलग-अलग हार्डवेयर कॉन्फ़िगरेशन में काम करने की ज़रूरत है, तो आप
एक होस्ट पर कई वर्चुअल मशीन का उपयोग कर सकते हैं—बाहर जाकर हर काम के लिए अलग कंप्यूटर खरीदने की ज़रूरत नहीं है।
<0 2. स्केलेबल और फ्लेक्सिबलचाहे वे एंटरप्राइज़ सर्वर हों या आपके लैपटॉप पर चलने वाले वीएम, वर्चुअल मशीन स्केलेबल हैं। अपनी आवश्यकताओं के अनुरूप संसाधनों को समायोजित करना आसान है। यदि आपको अधिक मेमोरी या हार्ड डिस्क स्थान की आवश्यकता है, तो बस हाइपरविजर में जाएं और वीएम को और अधिक रखने के लिए पुन: कॉन्फ़िगर करें। नया हार्डवेयर खरीदने की कोई आवश्यकता नहीं है, और प्रक्रिया को तेजी से पूरा किया जा सकता है।
3। त्वरित सेटअप
एक नया वीएम जल्दी से स्थापित किया जा सकता है। मेरे पास ऐसे मामले आए हैं जहां मुझे एक नए वीएम सेटअप की आवश्यकता थी, मेरे सहकर्मी को बुलाया जो उन्हें प्रबंधित करता है, और उन्हें एक घंटे से भी कम समय में उपयोग करने के लिए तैयार किया।
4। डिजास्टर रिकवरी
यदि आप डेटा हानि को रोकने की कोशिश कर रहे हैं और डिजास्टर रिकवरी के लिए तैयार हैं, तो वीएम एक हो सकता हैबहुत बढ़िया उपकरण। उनका बैक अप लेना आसान है और यदि आवश्यक हो तो विभिन्न स्थानों में वितरित किया जा सकता है। यदि Microsoft या Amazon जैसी कोई तीसरी पार्टी वर्चुअल मशीनों की मेजबानी करती है, तो वे ऑफ-साइट होंगी—जिसका अर्थ है कि यदि आपका कार्यालय जल जाता है तो आपका डेटा सुरक्षित है।
5। पुनरुत्पादन में आसान
अधिकांश हाइपरविजर आपको वीएम की कॉपी या छवि बनाने की अनुमति देते हैं। इमेजिंग आपको किसी भी स्थिति के लिए समान आधार VM के सटीक पुनरुत्पादन को आसानी से स्पिन करने देता है।
जिस वातावरण में मैं काम करता हूं, हम विकास और परीक्षण के लिए उपयोग करने के लिए प्रत्येक डेवलपर को एक वीएम देते हैं। यह प्रक्रिया हमें सभी आवश्यक उपकरणों और सॉफ़्टवेयर के साथ एक छवि को कॉन्फ़िगर करने की अनुमति देती है। जब हमारे पास एक नया डेवलपर शामिल होता है, तो हमें केवल उस छवि की एक प्रति बनानी होती है, और उनके पास काम करने के लिए आवश्यक सब कुछ होता है।
6। विकास/परीक्षण के लिए बिल्कुल सही
वर्चुअल मशीनों का उपयोग करने का एक सबसे अच्छा लाभ यह है कि वे सॉफ्टवेयर विकास और परीक्षण के लिए एक आदर्श उपकरण हैं। वीएम डेवलपर्स को एक मशीन पर कई प्लेटफॉर्म और वातावरण विकसित करने की अनुमति देते हैं। यदि वह VM दूषित या नष्ट हो जाता है, तो जल्दी से एक नया बनाया जा सकता है।
वे एक परीक्षक को प्रत्येक परीक्षण चक्र के लिए एक स्वच्छ नया वातावरण प्रदान करने की अनुमति देते हैं। मैंने उन परियोजनाओं पर काम किया है जहां हम स्वचालित परीक्षण स्क्रिप्ट सेट करते हैं जो एक नया वीएम बनाते हैं, नवीनतम सॉफ़्टवेयर संस्करण स्थापित करते हैं, सभी आवश्यक परीक्षण चलाते हैं, फिर परीक्षण पूरा होने के बाद वीएम को हटा दें।
वीएम शानदार ढंग से काम करते हैंउत्पाद परीक्षण और समीक्षाएं जैसे हम यहां SoftwareHow.com पर करते हैं। मैं अपनी मशीन पर चलने वाले वीएम में ऐप्स इंस्टॉल कर सकता हूं और अपने प्राथमिक वातावरण को अव्यवस्थित किए बिना उनका परीक्षण कर सकता हूं।
जब मेरा परीक्षण पूरा हो जाता है, तो मैं हमेशा वर्चुअल मशीन को हटा सकता हूं, फिर जब मुझे इसकी आवश्यकता हो तो एक नया बना सकता हूं। यह प्रक्रिया मुझे कई प्लेटफार्मों पर परीक्षण करने की अनुमति देती है, भले ही मेरे पास केवल एक विंडोज मशीन है।
अंतिम शब्द
जैसा कि आप देख सकते हैं, वर्चुअल मशीन एक लागत प्रभावी, बहुमुखी उपकरण है कई अनुप्रयोगों के लिए उपयोग किया जाना चाहिए। अब हमें परीक्षकों, डेवलपर्स और अन्य लोगों के लिए सर्वर एक्सेस प्रदान करने के लिए महंगे हार्डवेयर खरीदने, सेटअप करने और बनाए रखने की आवश्यकता नहीं है। वीएम हमें आसानी से और जल्दी से ऑपरेटिंग सिस्टम, हार्डवेयर और वातावरण बनाने की सुविधा देता है—किसी भी समय।