प्रदर्शन में एक्सईएन बनाम केवीएम


36

एक ही हार्डवेयर, एक्सएन या केवीएम पर तेज क्या है?

मैं काम करने के लिए एक वर्चुअलाइजेशन तकनीक लेने की कोशिश कर रहा हूं, जो सबसे अच्छा प्रदर्शन देता है।

यहाँ कुछ बेंचमार्क हैं जो मुझे इस विषय पर मिले: http://virt.kernelnewbies.org/XenVsKVM

वे प्रदर्शन में महत्वपूर्ण अंतर के साथ केवीएम को एक विजेता के रूप में दिखाते हैं - जो इस विचार के खिलाफ जाता है कि केवीएम एक टाइप -2 हाइपरविजर है, और परिभाषा के अनुसार यह टाइप -1 हाइपरवाइजर (जैसे एक्सएन) की तुलना में धीमा होना चाहिए - या कम से कम यह कि क्या वेब पर लेख कहते हैं।

इस विषय पर कोई विचार?


यह तुलना बहुत खराब लगती है क्योंकि यह KVM + 1xVM और Xen + 1VM की तुलना करती है ... यदि आपके पास केवल वीएम पर वर्चुअलाइजेशन होने की बात है?
एंटोनी बेनकेमॉन

KVM टाइप 2 हाइपरवाइजर नहीं है। यह निश्चित रूप से टाइप -1 है, और यह निश्चित रूप से एक्सएन की तुलना में हार्डवेयर के करीब है। तो हाँ, ठीक उसी स्थिति को देखते हुए, केवीएम को बेहतर प्रदर्शन करना चाहिए, विशेष रूप से आधुनिक सदाबहार ड्राइवरों के साथ
डायनासी

यदि आप इसे 2017 में पढ़ रहे हैं (किसी ने इस प्रश्न का एक तुच्छ संपादन किया है) तो महसूस करें कि यह प्रश्न और इसके उत्तर आठ साल पुराने हैं । KVM बनाम Xen परिदृश्य अब बहुत अलग है।
थोमसट्रेटर

जवाबों:


33

वह बेंचमार्क केवल मूल OS की गति की तुलना किसी एकल अतिथि OS से कर रहा है। शायद ही यह वास्तविक दुनिया का परीक्षण है। मुझे नहीं लगता कि मैं इस पर ज्यादा भार डालूंगा। KVM शिविर के अधिकांश लोगों का तर्क है कि कर्नेल और उपयोगकर्ता स्थान के बीच Xen को बहुत अधिक अवरोधों और हॉप्स की आवश्यकता होती है, लेकिन अधिकांश वास्तविक दुनिया के बेंचमार्क से जो मैंने देखा है कि वास्तव में एहसास नहीं हुआ है और लगता है कि Xen थोड़ा तेज है केवीएम की तुलना में।

क्षमा करें, मेरे पास इस लिंक को वापस करने के लिए कोई लिंक नहीं है। लेकिन मैं कहूंगा कि KVM तेजी से सुधार कर रहा है और लगता है कि फीचर सेट और स्थिरता पर जल्दी पकड़ रहा है।

जैसा कि दृष्टिकोण बेहतर है। एक्सईएन शिविर का तर्क होगा कि एक सच्चे हल्के वजन वाले हाइपरवाइजर को सुरक्षित और तेज करने के लिए वर्चुअलाइजेशन की आवश्यकता होती है। एक्सईएन भी कुछ विक्रेताओं द्वारा फर्मवेयर में समर्थित होना शुरू कर रहा है जो कि अच्छा भी है। KVM शिविर तर्क देगा कि KVM सरल है और लिनक्स एक अच्छा हाइपरवाइजर होने में सक्षम है।

अंत में यह अभी भी स्पष्ट नहीं है कि आखिरकार किस दिशा में जीत होगी। ज़ेन निश्चित रूप से एक सिर की शुरुआत है और पहले से ही एक अच्छा बाजार हिस्सा है। लेकिन यह मेनलाइन कर्नेल में नहीं है, फिर भी। उम्मीद है कि जल्द ही बदल जाएगा और पिछले कुछ महीनों में कर्नेल सूची पर इस बारे में निश्चित रूप से बात हुई है। रेड हैट अब केवीएम कैंप में है और इसे पसंद के वर्चुअलाइजेशन प्लेटफॉर्म के रूप में आगे बढ़ाया जाएगा। Red Hat Linux 5.4 जो शीघ्र ही सामने आ रहा है, यह इसे शामिल करने वाला पहला होगा। तो संभावना है कि उन दुकानों को आकर्षित करेगा जो अभी तक लुढ़का नहीं है या एक वर्चुअलाइजेशन प्लेटफॉर्म के लिए प्रतिबद्ध नहीं है।

जहां तक ​​उपकरण जाते हैं, तो Xen और KVM दोनों libvirt और QEMU और उनसे जुड़े उपकरण का उपयोग करते हैं। इसलिए वे पुण्य-प्रबंधक जैसे कई उपकरणों को साझा करते हैं।

हम काम पर Xen का उपयोग करते हैं, और यह हमारे लिए अच्छा काम करता है। लेकिन मैं कुछ USB अग्रेषण और PCI passthrough मुद्दों के कारण KVM में देख रहा हूँ जिन्हें मैं Xen के साथ हल करने में असमर्थ रहा हूँ। मुझे यकीन नहीं है कि केवीएम इस पर कोई बेहतर है, लेकिन मुझे लगता है कि मैं एक बार कोशिश करने के बाद पता लगाऊंगा। एक बात जो मैंने अपने USB मुद्दों पर शोध में देखी है, वह यह है कि KVM का दस्तावेज़ीकरण Xen के मुकाबले अधिक मूल्यांकन योग्य और व्यवस्थित है। लेकिन कोई सही वर्चुअलाइजेशन प्लेटफॉर्म नहीं है, इसलिए आपको यह पता लगाने की आवश्यकता होगी कि आपके लिए क्या मायने रखता है।


किसी भी विचार अगर भविष्य में वही होगा? जैसा कि Redhat 5.4 देशी KVM समर्थन के साथ जल्द ही आ रहा है, मैं जानना चाहूंगा कि मुझे 1/2 वर्ष में Xen से KVM पर स्विच करने की क्या आवश्यकता होगी। धन्यवाद।
सिनारेनिटी

1
मैं भविष्य के बारे में कोई अनुमान नहीं लगा सकता। लेकिन इनमें से कोई भी प्लेटफॉर्म गायब नहीं होने वाला है। RedHat ने कहा है कि वे Xen के साथ-साथ KVM का समर्थन करने के लिए प्रतिबद्ध हैं। केवल समय ही बताएगा कि यह कैसे खेलता है। लेकिन मुझे 6 महीने में बदलने की चिंता नहीं होगी। शायद कुछ वर्षों में ओपनसोर्स वर्चुअलाइजेशन प्लेटफार्मों में एक स्पष्ट नेता होगा।
3Dinfluence

दिलचस्प है कि आप USB समर्थन के लिए KVM में जाने पर ध्यान दें - मुझे USB 2.0 समर्थन की कमी के कारण दूर जाने के बारे में सोचना होगा! मैं आपके पोस्ट से अनुमान लगा रहा हूं कि Xen ज्यादा बेहतर नहीं है।
jkp

1
@jkp मैं अपने बुनियादी ढांचे के कुछ अन्य टुकड़ों को बदलने का इंतजार कर रहा था। जो अभी पूरा हुआ था। इसलिए आने वाले हफ्तों में मैं केवीएम के करीब दिखने में सक्षम हो सकता हूं। हालाँकि मेरे मामले में हार्डवेयर IOMMU (VTd) का समर्थन नहीं करता है। इसलिए मुझे यकीन नहीं है कि केवीएम में जाने से मदद मिलेगी। XEN को pci pststhrough के लिए IOMMU समर्थन की आवश्यकता होती है। लेकिन KVM libvirt का उपयोग करके USB और PCI तत्व passthrough का समर्थन करता है। इसलिए मैं उम्मीद कर रहा हूं कि IOMMU के बिना काम करेंगे। अभी एक्सईएन के तहत एक ही तरीका है कि मुझे पता है कि यूएसबी के माध्यम से यूएसबी पास करना पीसीआईघड़ी नियंत्रक है, लेकिन इस बिंदु पर जानकारी दिनांकित हो सकती है।
डी इन्फ्लुएंस

1
@ 3dinfluence: मुझे लगता है कि आपको गलतफहमी हो सकती है कि USB और PCI सपोर्ट कैसे लागू किया जाता है - libvirt इनमें से कोई भी काम खुद नहीं करता है, यह केवल VM हाइपरवाइजर की अंतर्निहित क्षमताओं को कॉन्फ़िगर करने का एक तरीका प्रदान करता है। इस मामले में क्षमताओं को KVM कर्नेल मॉड्यूल और Qemu उपयोगकर्ता स्थान कोड के संयोजन द्वारा प्रदान किया जाता है।
jkp

7

मैं व्यक्तिगत रूप से आपके द्वारा उपयोग की जा रही आभासी मशीनों के लिए प्रयोज्य, समर्थन, विश्वसनीयता और उपयुक्तता के आधार पर वर्चुअलाइजेशन का चयन करूंगा।

एक्सपी नेटवर्किंग डेटा ट्रांसफर दरें वास्तविक हार्डवेयर जितनी ही अच्छी लगती हैं, लेकिन मैंने एक्सईएन और वीएलएन्स और मल्टीपल ईथरनेट कार्ड्स के साथ कुछ लड़ाईयां भी की हैं। मुझे KVM का कोई अनुभव नहीं है, लेकिन मैं यह भी सुझाव दूंगा कि आप VMware ESX (i) पर भी विचार करें।


1
Vmware सर्वर IO का प्रदर्शन बहुत खराब है। अगर आपको vmware es esx का उपयोग करना है।
को-डॉस

6

एफडब्ल्यूआईडब्ल्यू: जवाब पूरी तरह से आपकी जरूरतों पर निर्भर करता है, अभी और भविष्य में।

हां, मुझे पता है कि यह एक जवाब नहीं है। दुर्भाग्य से, यह सच है। वर्चुअलाइजेशन की आपकी पसंद आपके द्वारा बाद में की जाने वाली हर चीज को प्रभावित करेगी, इसलिए आपको खुद से कुछ सवाल पूछने की जरूरत है।

(१) क्या ९ ६% मूल प्रदर्शन और ९ ६% मूल प्रदर्शन (हवा से निकाले गए आंकड़े) के बीच का अंतर वास्तव में आपके लिए महत्वपूर्ण है?

(1 ए) यदि कोई एचडी एक्सेस के साथ बेहतर करता है (जो वास्तव में इसका अर्थ है कि आप या तो एक महान डेटाबेस का उपयोग कर रहे हैं, या आप अतिरिक्त रैम बर्दाश्त नहीं कर सकते हैं), और दूसरा नेटवर्किंग के साथ बेहतर करता है, जो आपके लिए अधिक महत्वपूर्ण है ?

(२) क्या आप समाधान के साथ उपलब्ध कराए गए उपकरणों का उपयोग कर रहे हैं?

(३) क्या तथ्य यह है कि हाल के लिनक्स कर्नेल के मूल निवासी (एक प्रकार का) है, और दूसरा नहीं, इससे कोई फर्क पड़ता है?

(3a) क्या अब आप, या आप कभी भी ... एर ... क्या आपको कभी वर्चुअलाइजेशन के तहत एक अलग ओएस चलाने की आवश्यकता होगी? यह विंडोज होना जरूरी नहीं है। यह FreeBSD, या यहां तक ​​कि हाइकु, या जो कुछ भी हो सकता है। (एक्सएन शायद यहां जीतता है, लेकिन मेरा सुझाव है कि आप जांच करें।)

बड़ी तस्वीर को देखते हुए, मैं केवीएम को लिनक्स के सोलारिस ज़ोन के जवाब के रूप में देखता हूं। (मेरे पास सोलारिस ज़ोन नहीं होंगे, लेकिन मैं समानांतर देखता हूं।) मैं कई ओएस के लिए समर्थन के साथ एक परिपक्व हाइपरवाइज़र तकनीक के रूप में एक्सईएन देखता हूं, लेकिन फिर अगर आपको कई ओएस की आवश्यकता नहीं है, तो यह इतना मायने नहीं रखता है।

पूरी तरह से ईमानदार होने के लिए, आप कहीं भी गलत तरीके से नहीं जा सकते (ऊपर दिए गए विवरण)। मैं एक्सईएन को पसंद करता हूं, क्योंकि मैं कैंब्रिज गया था; लेकिन फिर, अगर मैंने आरएच के लिए काम किया, तो मैं शायद केवीएम पसंद करूंगा।


6

आप निम्न प्रस्तुति में इस विषय पर बहुत ही रोचक जानकारी प्राप्त करेंगे: एक्सएम और केवीएम की मात्रात्मक तुलना

जिस व्यक्ति ने ऐसा किया है, वह एक एक्सपी विशेषज्ञ है, लेकिन तुलना काफी उचित लगती है।


प्रस्तुति के लिए धन्यवाद, यह पढ़कर लगता है कि जबकि सीपीयू और नेटवर्क आईओ पर एक्सएन सबसे ऊपर है, एचडी आईओ पर केवीएम सबसे ऊपर है। लेकिन इस संख्या को पढ़ते हुए ( virt.kernelnewbies.org/XenVsKVM ), ऐसा लगता है कि KVM ने हर तुलना के लिए हाथ जीत लिया। कोई भी विचार जहां सच्चाई है? :)
SyRenity

मेरा मानना ​​है कि मेरी प्रस्तुति अधिक यथार्थवादी लगती है। यह उस समय एक से अधिक वीएम चलाता है। परीक्षण प्रोटोकॉल वास्तविकता के करीब लगता है।
एंटोनी बेनकेमोन

+1 रोचक प्रस्तुति! लगता है कि एक्सएन बेहतर अलगाव है।
जोनास

5

मैं यहाँ एक अंग पर जा रहा हूँ, लेकिन मुझे नहीं लगता कि कच्ची प्रदर्शन सबसे महत्वपूर्ण मीट्रिक है जब यह इस तरह की तकनीकों की बात आती है।

मुझे लगता है कि एक विश्वसनीय बुनियादी ढांचे का समर्थन करने के लिए प्रयोज्य और इंटरफ़ेस महत्वपूर्ण है, साथ ही साथ उपकरण भी। यह मुझे लगता है कि एक्सवी के पास मौजूदा अनुप्रयोगों का अधिक मजबूत सेट है जो कि केवीएम की तुलना में इसका समर्थन करता है। यह मामला नहीं हो सकता है, क्योंकि मेरे पास इसे वापस करने के लिए कोई सबूत नहीं है।

आप जो भी साथ जाते हैं, तय करें कि आपके लिए सबसे अच्छा समाधान क्या है, और पूरे पैकेज को देखें, न कि केवल कच्चे प्रदर्शन को।


आपको RHEV पर एक नज़र डालने की आवश्यकता है - प्रबंधन बहुत सरल और उपयोगकर्ता के अनुकूल है।
डायसैनी

2

केवीएम स्थापित करने में बहुत कठिनाई या आसानी वितरण-निर्भर है। एक ज़ेन-केंद्रित वितरण लेने से एक्सएन आसान हो जाएगा। KVM- केंद्रित वितरण चुनने से KVM को आसान बनाया जाएगा।

उपकरण प्रश्न कुछ हद तक अप्रासंगिक है क्योंकि दोनों libvirt का उपयोग करते हैं। इसका मतलब है कि आप ज्यादातर मामलों में दोनों के लिए एक ही प्रबंधन उपकरण का उपयोग करते हैं।


1

2017 के अंत में, अमेज़ॅन जो पूर्व में सबसे बड़ा एक्सएन उपयोगकर्ता था, ने घोषणा की कि वह अपने सभी नए सी 5 उदाहरण प्रकारों के लिए केवीएम का उपयोग करेगा । मेरे ज्ञान का सबसे अच्छा करने के लिए, केवल क्लाउड प्रदाता सॉफ्टलेयर को बड़े एक्सएन उपयोगकर्ताओं के रूप में छोड़ दिया गया है। लिनोड ने 2015 में स्विच किया, और प्रमुख प्रदर्शन में सुधार की सूचना दी

यथार्थवादी और अप-टू-डेट प्रदर्शन तुलना करना मुश्किल है, लेकिन दोनों समाधानों के बीच इतना बड़ा अंतर नहीं लगता है जितना आपको लगता है। उपयोग के मामले के आधार पर, एक्सएन और भी तेज हो सकता है। KVM के अन्य लाभ हैं, लिनक्स कर्नेल का हिस्सा है और RedHat द्वारा अपनाया गया है, जो प्रासंगिक भी हैं। उदाहरण के लिए, यह उत्तर इस बात पर विस्तृत करता है कि Google Google कंप्यूट इंजन के लिए केवीएम क्यों चुनता है।

फिर भी, तथ्य यह है कि लगभग सभी क्लाउड प्रदाता, विशेष रूप से Google और अमेज़ॅन, केवीएम को चुन रहे हैं, एक्सएम पर एक मजबूत तर्क है कि विशिष्ट कार्यभार के लिए, केवीएम प्रदर्शन के मामले में बहुत अच्छा विकल्प है।


नोट: अमेज़ॅन KVM के संशोधित संस्करण का उपयोग करता है, न कि मूल निवासी का। और मैं यह नहीं कहूंगा कि उनके पास विशिष्ट कार्यभार हैं, शायद उनके पास वास्तव में भारी और असामान्य कार्यभार है, imho
ALex_hha

@ALex_hha मेरा क्या मतलब है कि उन्हें एक ऐसी तकनीक का चयन करना होगा जो उन अनुप्रयोगों के लिए सबसे अच्छा काम करे जो उनके ग्राहक चलाएंगे। इस अर्थ में, उन्हें एक सेटअप ढूंढना होगा जो विभिन्न उपयोग के मामलों में तेज है। लेकिन मैं मानता हूं कि एम्बेडेड सिस्टम की तरह अन्य परिदृश्य भी हैं, जहां एक्सईएन अधिक अनुकूल रूप से तुलना कर सकते हैं।
फिलिप क्लेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.