Saya menemukan bahwa tidak ada jawaban yang sederhana dan absolut untuk pertanyaan seperti milik Anda. Setiap solusi virtualisasi berperilaku berbeda pada tes kinerja spesifik. Juga, tes seperti disk I / O throughput dapat dibagi dalam banyak tes yang berbeda (baca, tulis, tulis ulang, ...) dan hasilnya akan bervariasi dari solusi ke solusi, dan dari skenario ke skenario. Inilah sebabnya mengapa tidak sepele untuk menunjuk satu solusi sebagai yang tercepat untuk disk I / O, dan inilah mengapa tidak ada jawaban absolut untuk label seperti overhead untuk disk I / O.
Semakin rumit ketika mencoba menemukan hubungan antara tes benchmark yang berbeda. Tak satu pun dari solusi yang saya uji memiliki kinerja yang baik pada tes operasi mikro. Misalnya: Di dalam VM satu panggilan tunggal ke "gettimeofday ()" mengambil, rata-rata, 11,5 kali lebih banyak siklus clock untuk diselesaikan daripada pada perangkat keras. Hypervisor dioptimalkan untuk aplikasi dunia nyata dan tidak berkinerja baik pada operasi mikro. Ini mungkin bukan masalah bagi aplikasi Anda yang mungkin lebih cocok dengan aplikasi dunia nyata. Maksud saya dengan operasi mikro aplikasi apa pun yang menghabiskan kurang dari 1.000 siklus clock untuk menyelesaikan (Untuk CPU 2,6 GHz, 1.000 siklus clock dihabiskan dalam 385 nanodetik, atau 3,85e-7 detik).
Saya melakukan pengujian benchmark yang luas pada empat solusi utama untuk konsolidasi pusat data untuk arsitektur x86. Saya melakukan hampir 3000 tes membandingkan kinerja di dalam VM dengan kinerja perangkat keras. Saya menyebut 'overhead' perbedaan kinerja maksimum yang diukur di dalam VM (s) dengan kinerja maksimum yang diukur pada perangkat keras.
Solusi:
- VMWare ESXi 5
- Microsoft Hyper-V Windows 2008 R2 SP1
- Citrix XenServer 6
- Virtualisasi Red Hat Enterprise 2.2
OS tamu:
- Microsoft Windows 2008 R2 64 bit
- Red Hat Enterprise Linux 6.1 64 bit
Info Tes:
- Server: 2X Sun Fire X4150 masing-masing dengan 8GB RAM, 2X Intel Xeon E5440 CPU, dan empat port Ethernet gigabit
- Disk: 6X 136GB SAS disk lebih dari iSCSI melalui gigabit ethernet
Perangkat Lunak Benchmark:
CPU dan Memory: Linpack benchmark untuk 32 dan 64 bit. Ini adalah CPU dan memori yang intensif.
Disk I / O dan Latency: Bonnie ++
Jaringan I / O: Netperf: TCP_STREAM, TCP_RR, TCP_CRR, UDP_RR dan UDP_STREAM
Operasi mikro: rdtscbench : Panggilan sistem, komunikasi pipa antar proses
Rata-rata dihitung dengan parameter:
CPU dan Memori: AVERAGE (HPL32, HPL64)
Disk I / O: AVERAGE (put_block, rewrite, get_block)
Jaringan I / O: AVERAGE (tcp_crr, tcp_rr, tcp_stream, udp_rr, udp_stream)
AVERAGE operasi mikro (getpid (), sysconf (), gettimeofday (), malloc [1M], malloc [1G], 2pipes [], simplemath [])
Untuk skenario pengujian saya, menggunakan metrik saya, rata-rata hasil dari empat solusi virtualisasi adalah:
Overhead lapisan VM, tamu Linux:
CPU dan Memori: 14,36%
Jaringan I / O: 24,46%
Disk I / O: 8,84%
Disk latensi untuk membaca: 2,41 kali lebih lambat
Waktu pelaksanaan operasi mikro: 10,84 kali lebih lambat
Overhead lapisan VM, tamu Windows:
Harap dicatat bahwa nilai-nilai itu bersifat umum, dan tidak mencerminkan skenario kasus tertentu.
Silakan lihat artikel lengkapnya: http://petersenna.com/en/projects/81-performance-overhead-and-comparative-performance-of-4-virtualization-solusi