KVM - Live Migration
Technology

Arsitektur KVM (Part 2)

Penjelasan prinsip dasar KVM telah dijelaskan pada artikel ini.

Arsitektur KVM Part 1 di sini.

Live Migration

KVM - Live Migration
Live Migration

KVM mendukung Live Migration, yaitu kemampuan untuk memin­dah­kan mesin virtual yang sedang berjalan kepada host fisik lain tanpa interupsi kepada layan­an hypervisor. Kondisi ini diilustrasikan dengan gambar di samping. Live Migration transparan kepada pengguna akhir, mesin virtual tetap menyala, koneksi jaringan tetap aktif, dan aplikasi pengguna tetap berjalan saat mesin virtual dipindahkan ke host fisik baru. Live Migration juga mendukung penyim­pan­an status mesin virtual saat itu ke dalam cakram agar dapat disimpan dan dimulai lagi pada lain waktu.

Guest Support

KVM mendukung berbagai macam sistem operasi guest, mulai dari sistem operasi umum seperti Linux dan Windows sampai platform seperti OpenBSD, FreeBSD, OpenSolaris, Solaris x86 dan MS DOS. Pada penawaran oleh Red Hat, KVM telah disertifikasi oleh Microsoft’s Server Virtualization Validation Program (SVVP) untuk meyakinkan pengguna yang menggunakan Microsoft Windows Server pada Red Hat Enterprise Linux dan Red Hat Enterprise Virtualization Hypervisor (RHEV-H) bahwa mereka akan mendapatkan dukungan komersial penuh dari Microsoft.

Device Drivers

KVM mendukung virtualisasi hybrid, yaitu kondisi di mana paravirtualized driver dipasang pada sistem operasi guest agar mesin virtual dapat menggunakan antarmuka I/O teroptimasi daripada perangkat yang diemulasi untuk memberikan I/O dengan performa tinggi pada jaringan dan block devices. Hypervisor KVM menggunakan standar VirtIO yang dibangun oleh IBM dan Red Hat bekerja sama dengan komunitas Linux yang mendalami paravirtualized drivers.VirtIO merupakan antarmuka independen untuk memba­ngun device driver, memungkinkan suatu set device driver yang sama untuk digunakan pada banyak hypervisor sehingga membuat interoperabilitas guest yang lebih baik. Saat ini banyak hypervisor yang menggunakan antarmuka proprietary untuk paravir­tu­aliz­ed device drivers. Artinya, guest images menjadi tidak portabel di antara platform hypervisor. Karena semakin banyak vendor yang mengadopsi framework VirtIO, guest images menjadi lebih mudah dipindahkan antarplatform dan menurunkan pengujian sertifikasi dan overhead.

Driver VirtIO sudah termasuk dalam kernel Linux modern (2.6.25 dan setelahnya), termasuk dalam Red Hat Enterprise Linux 4.8+, 5.3+ dan tersedia untuk Red Hat Enterprise Linux 3. Red Hat telah mengembangkan driver VirtIO untuk guest Microsoft Windows untuk jaringan teroptimasi dan I/O cakram yang telah disertifikasi oleh Microsoft’s Windows Hardware Quality Labs (WHQL).

Kinerja dan Skalabilitas KVM

KVM mewarisi performa dan skalabilitas Linux, mendukung mesin virtual sampai dengan 16 CPU virtual dan RAM 256 GB. KVM juga mendukung sistem host dengan 256 inti prosesor dan RAM lebih dari 1 TB. Dengan kinerja sampai dengan 95-135% dibandingkan dengan bare metal untuk beban kerja perusahaan dunia nyata seperti SAP, Oracle, LAMP, dan Microsoft Exchange; lebih dari satu juta pesan per detik dan keterlambatan 200 mikrodetik pada mesin virtual yang berjalan pada server standar; dan rasio konsolidasi paling tinggi dengan lebih dari 600 mesin virtual menjalankan beban kerja perusahaan pada server tunggal, KVM memungkinkan beban kerja aplikasi terpopuler untuk divirtualisasi.

Penjadwalan dan Kontrol Sumber Daya yang Lebih Baik

Pada model KVM, mesin virtual (Windows atau Linux) adalah suatu proses Linux. Mesin virtual dijadwalkan dan dikelola oleh kernel Linux standar. Selama beberapa tahun belakangan, komunitas telah mengembangkan kernel Linux inti sampai pada titik di mana kernel ini memiliki industri fitur terdepan, stabilitas kinerja, keamanan, dan ketangguhan perusahaan. Kernel Linux Red Hat mendukung pengaturan prioritas relatif untuk setiap proses, termasuk mesin virtual. Prioritas ini untuk ukuran agregat CPU, memori, jaringan, dan cakram  pada mesin virtual yang diberikan, dan menyediakan infrastruktur Quality of Service (QoS) level pertama untuk mesin virtual.

Penjadwal Linux modern berkembang dengan perbaikan yang mampu mengizinkan kontrol yang lebih detail kepada sumber daya yang dialokasikan kepada proses Linux dan akan mengizinkan penjaminan suatu QoS untuk proses tertentu. Karena pada KVM mesin virtual adalah proses Linux, perbaikan kernel akan berkembang pula ke mesin virtual secara alami di bawah paradigma arsitektural KVM. Spesifiknya, perbaikan yang mencakup CFS, kontrol grup, namespace jaringan, dan ekstensi real-time­ akan membentuk infrastruktur level kernel inti untuk QoS, level layanan, dan akuntansi untuk mesin-mesin virtual.

Kernel Linux berisi penjadwal proses canggih yang disebut completely fair scheduler (CFS) untuk menyediakan fasilitas penjadwalan proses yang lebih canggih berdasarkan pengalaman pemasangan sistem besar. Penjadwal CFS telah dikembangkan untuk memasukkan manajer sumber daya CGroups (control groups) agar proses (pada kasus ini adalah mesin virtual) diberikan bagian dari sumber daya sistem seperti memori, CPU, dan I/O. Tidak seperti penjadwal mesin virtual lainnya yang memberikan proporsi sumber daya pada mesin virtual berdasarkan bobotnya, cgroups memungkinkan tidak hanya kapasitas maksimal saja yang dapat diset, namun juga kapasitas minimumnya. Dengan demikian, sumber daya pada mesin virtual akan terjamin, namun hal ini mengizinkan mesin virtual untuk menggunakan sumber daya yang lebih apabila tersedia. Namespace jaringan mirip dengan infrastruktur level kernel yang mengizinkan kontrol lebih mendetail dan menjamin SLA jaringan minimal untuk mesin virtual yang diberikan. Fitur-fitur canggih pada kernel tersebut memungkinkan manajemen sumber daya dan kontrol pada semua level: CPU, memori, jaringan, dan I/O.

Keterlambatan yang Lebih Rendah dan Determinisme yang  Lebih Tinggi

Untuk memanfaatkan penjadwal proses dan fitur manajemen sumber daya pada kernel yang menjamin CPU, memori, jaringan, dan SLA IO cakram untuk setiap mesin virtual, kernel Linux juga menonjolkan ekstensi real-time. Ekstensi ini memungkinkan keterlambatan yang lebih rendah untuk aplikasi pada mesin virtual, dan derajat determinisme yang lebih tinggi. Hal ini penting untuk misi beban kerja kritis. Di bawah model yang beroperasi, proses kernel yang membutuhkan waktu CPU lebih lama dipecah menjadi komponen yang lebih kecil dan dijadwalkan/diproses oleh kernel. Mekanisme ini diletakkan pada tempat yang mengizinkan interupsi dari mesin virtual untuk lebih diprioritaskan daripada proses kernel panjang yang mengonsumsi lebih banyak CPU. Oleh karena itu, permintaan dari mesin virtual akan diproses lebih cepat sehingga menurunkan keterlambatan pemrosesan aplikasi secara signifikan dan meningkatkan determinisme.

sumber: KVM Whitepaper dari Red Hathttp://www.redhat.com/resourcelibrary/whitepapers/doc-kvm

2 tanggapan untuk “Arsitektur KVM (Part 2)”

Ada komentar?

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.