हर VPS एक ही तरह से नहीं बना होता। नीचे की वर्चुअलाइज़ेशन तकनीक तय करती है कि आपका सर्वर कितना आइसोलेटेड है, आप कौन सा सॉफ़्टवेयर चला सकते हैं और वह कैसा प्रदर्शन करता है। सबसे ज़्यादा दिखने वाले दो नाम KVM और OpenVZ हैं, साथ में LXC।
वर्चुअल सर्वर बनाने के दो तरीक़े
फ़ुल वर्चुअलाइज़ेशन (KVM) हर ग्राहक को अपने कर्नेल वाली एक संपूर्ण वर्चुअल मशीन देता है। हाइपरवाइज़र हार्डवेयर को बाँटता है, और आपका सर्वर असली कंप्यूटर की तरह व्यवहार करता है।
कंटेनर वर्चुअलाइज़ेशन (OpenVZ, LXC) होस्ट का कर्नेल सभी ग्राहकों में साझा करता है। हर कंटेनर अपनी फ़ाइलें और प्रोसेस देखता है, लेकिन पड़ोसियों वाले उसी कर्नेल पर चलता है।
आमने-सामने तुलना
| KVM | OpenVZ / LXC | |
|---|---|---|
| कर्नेल | आपका अपना | होस्ट के साथ साझा |
| आइसोलेशन | मज़बूत | कमज़ोर |
| Docker, WireGuard, कस्टम कर्नेल मॉड्यूल चलाना | हाँ | अक्सर सीमित या असंभव |
| Windows चलाना | हाँ | नहीं |
| RAM की गारंटी | निश्चित और आरक्षित | ओवरसोल्ड हो सकती है ("burstable") |
| ओवरहेड | छोटा | सबसे छोटा |
KVM सुरक्षित चुनाव क्यों है
- सॉफ़्टवेयर आप चुनते हैं। Docker, VPN, nftables जैसे फ़ायरवॉल और कर्नेल मॉड्यूल लोड करने वाले टूल बिना अनुमति माँगे काम करते हैं।
- असली मेमोरी। जो RAM आप ख़रीदते हैं वह आपकी मशीन को असाइन होती है। कंटेनर होस्ट कभी-कभी मौजूद मेमोरी से ज़्यादा बेच देते हैं और उम्मीद करते हैं कि ग्राहक सब इस्तेमाल नहीं करेंगे।
- बेहतर आइसोलेशन। पड़ोसी की वर्चुअल मशीन में किसी ख़राबी या हमले का आपकी मशीन को छूना बहुत कम संभव है।
- कोई भी ऑपरेटिंग सिस्टम। Linux डिस्ट्रीब्यूशन, BSD और Windows सब बिना बदलाव के चलते हैं।
कंटेनर कब भी समझदारी हैं
कंटेनर तेज़ी से शुरू होते हैं और बहुत कम बर्बाद करते हैं, इसीलिए होस्ट उन्हें बहुत सस्ते प्लान के लिए इस्तेमाल करते हैं और इसीलिए आप उन्हें Docker के ज़रिए अपने ही VPS के अंदर इस्तेमाल करते हैं। वे उन सरल वर्कलोड के लिए ठीक हैं जिन्हें कर्नेल से कुछ ख़ास नहीं चाहिए।
कैसे जाँचें कि आपके पास क्या है
systemd-detect-virt
lscpu | grep -i hypervisor
cat /proc/user_beancounters # exists only on OpenVZ
पहले कमांड में kvm का मतलब फ़ुल वर्चुअलाइज़ेशन है। अगर आख़िरी फ़ाइल मौजूद है, तो आप OpenVZ पर हैं।
अक्सर पूछे जाने वाले प्रश्न
क्या KVM, OpenVZ से बेहतर है?
ज़्यादातर उपयोगों के लिए हाँ। KVM हर VPS को अपना कर्नेल और मज़बूत आइसोलेशन देता है, इसलिए आप कोई भी OS और Docker चला सकते हैं। OpenVZ होस्ट का कर्नेल साझा करता है और ज़्यादा सीमित है।
क्या मैं OpenVZ पर Docker चला सकता हूँ?
अक्सर नहीं, या केवल पाबंदियों के साथ, क्योंकि कंटेनर होस्ट का कर्नेल साझा करते हैं। Docker के लिए KVM ज़्यादा सुरक्षित विकल्प है।
क्या KVM ज़्यादा महँगा है?
थोड़ा, क्योंकि संसाधन ज़्यादा सख़्ती से आवंटित होते हैं, लेकिन आइसोलेशन और संगतता आमतौर पर इसके लायक होती है।