Sekilas Xen

Komputer modern memiliki sumberdaya yang lebih dari cukup untuk menerapkan virtualisasi agar menampilkan banyak mesin virtual (virtual machine / VM), masing-masing menjalankan sistem operasi terpisah. Ada beberapa tantangan yang perlu diatasi untuk bisa menghasilkan pembagian sumberdaya perangkat keras suatu mesin sehingga mampu mendukung eksekusi simultan beberapa sistem operasi. Pertama, masing-masing mesin virtual harus diisolasi satu sama lain: Eksekusi salah satu mesin virtual tidak boleh mempengaruhi kinerja mesin virtual lainnya. Hal ini dapat terjadi bila masing-masing mesin virtual dimiliki oleh pengguna yang saling "tidak percaya" (tidak berbagi hak akses antara satu dengan lainnya). Kedua, implementasi mesin virtual perlu mendukung berbagai jenis sistem operasi yang berbeda sehingga dapat mengakomodir keanekaragaman aplikasi populer. Ketiga, penurunan kinerja karena virtualisasi haruslah cukup kecil/tidak signifikan.

Xen adalah monitor mesin virtual untuk x86 yang mendukung eksekusi beberapa sistem operasi "tamu" (sistem operasi yang dijalankan diatas mesin virtual) dengan isolasi sumberdaya dan kinerja optimal (mendekati kinerja sistem bila dijalankan pada perangkat keras yang setara). Xen merupakan perangkat lunak bebas yang dirilis berdasar lisensi GNU General Public License. Kami memiliki port fungsional Linux 2.6 yang berjalan diatas Xen, dan menggunakannya secara reguler untuk menjalankan berbagai aplikasi yang menuntut dukungan kinerja sistem operasi, misalnya MySQL, Apache dan PostgreSQL. Distribusi Linux apapun (!Redhat, SuSE, Debian, Mandrake) dapat berjalan tanpa modifikasi diatas port sistem operasi ini.

Tidak hanya Linux, anggota komunitas pengguna Xen juga telah mengkontribusikan port ke sistem operasi lain, misalnya NetBSD (Christian Limpach), FreeBSD (Kip Macy) dan Plan 9 (Ron Minnich).

Selain itu, Xen juga mendukung sistem operasi lain tanpa perlu di-port apabila CPU anda memiliki dukungan virtualisasi (VT atau Pacifica).

Instalasi pada etch

Dokumentasi upstream dapat diperoleh pada paket xen-docs-3.0 (di /usr/share/doc/xen-docs-3.0/user.pdf.gz). Selain itu, juga tersedia daring.

Dom0 (host)

Paket-paket xen-linux-system yang berhubungan adalah (Gunakan paket sesuai distribusi dan arsitektur mesin anda):

Jika anda perlu memodifikasi kernel dengan xen patch, salah satu cara untuk melakukannya dijelaskan pada ?DebianKernelCustomCompilation.

DomU (tamu)

Cara termudah untuk membuat suatu DomU adalah dengan menggunakan xen-tools (dan, bila piranti bantu ini tidak menghasilkan apa yang anda inginkan, Steve Kemp tanggap dan cepat dalam menerapkan saran-saran yang berguna).

Jika anda tidak ingin menggunakan xen-tools, ikuti panduan alternatif ini.

Xen mem-boot sistem operasi pada domU menggunakan kernel yang disimpan pada dom0, jadi anda hanya perlu menginstalasi paket linux-modules yang berkaitan di domU. Alternatifnya, anda dapat menggunakan pygrub untuk mem-boot kernel pada sistem berkas domU (apa ada panduan/dokumentasi untuk ini?).

Pada i386, pastikan anda menginstalasi libc6-xen.

Instalasi pada lenny

Dom0 (host)

Caranya mirip dengan Etch. Kernel yang digunakan adalah versi 2.6.26, varian -xen kernel ini menyertakan patch dari SuSE untuk dukungan dom0.

DomU (guest)

Installer Debian Lenny mendukung sepenuhnya instalasi guest 32 bit diatas Xen dengan menggunakan varian netboot/xen. Saat ini image baru tersedia di daily builds yang berisi kernel, installer ramdisk dan berkas contoh konfigurasi Xen. Untuk menginstalasi, edit berkasi konfigurasi sesuai kebutuhan anda kemudian jalankan guest dengan opsi "install=true", dan untuk saat ini, arahkan secara manual ke daily builds:

xm create -c xm-debian.cfg install=true \
  install-installer=http://people.debian.org/~joeyh/d-i/images/daily/

Lihat juga komentar pada berkas konfigurasi untuk mengetahui opsi instalasi lainnya.

Setelah guest terinstalasi, lakukan boot dengan:

xm create -c xm-debian.cfg

Karena Lenny hanya menyertakan dukungan 32 bit (PAE) kernel saat ini belum ada installer untuk guest 64 bit. Anda dapat terus menggunakan kernel Etch atau mengambil kernel upstream terkini yang menyertakan dukungan operasi 64 bit (2.6.27+).

Sebagai tambahan, selain dapat diinstalasi via Debian Installer, xen-tools juga dapat membuat domU Lenny seperti dijelaskan pada panduan Etch diatas.

Kernel default yang disertakan dalam Lenny merupakan kernel yang menggunakan versi paravirt_ops baru (2.6.26). Kernel ini tidak dapat berfungsi sebagai dom0 (kecuali varian -zen, yang menyertakan dukungan untuk dom0 tetapi memiliki beberapa masalah bila digunakan sebagai domU). Kernel ini juga tidak mendukung PCI passthrough pada suatu domU. Untuk menggunakan PCI passthrough, anda harus memakai kernel etch (2.6.18) sebagai dom0 dan domU.

Pada Lenny tidak ada lagi perbedaan antara varian Kernel untuk Xen dan non-Xen (kecuali dukungan domU). Debian installer akan menginstalasi varian -686-bigmem.

Menggunakan Debian-Installer

Halaman DebianInstaller/Xen berisi panduan cara menginstalasi Xen Dom0 dan Etch DomU dengan DebianInstaller. Sila lihat panduan ini untuk rincian langkah instalasi Lenny menggunakan Debian Installer.

Pemeliharaan Paket

Paket-paket Xen Debian dipelihara proyek pkg-xen. (milis pengembang)

Halaman Sekilas Paket Pengembang Debian menyediakan daftar paket source yang dipelihara tim tersebut.

Beberapa Error yang umum

dom0 otomatis reboot

error: CDROM boot failure

Anda mendapat error :

Hal ini disebabkan karena saat ini Xen belum dapat di-boot dari ISO image cdrom. Anda tidak dapat memakai tap:aio:/path/to/mycd.iso,hdc:cdrom,r atau file:/path/to/mycd.iso,hdc:cdrom,r.

Workaround: gunakan losetup untuk membuat loopback device dari ISO image cdrom, kemudian gunakan loopback device ini pada berkas konfigurasi Xen. Contoh:

Kemudian anda dapat memakai /dev/loop9 pada berkas konfigurasi xen (/etc/xen/foobar.cfg) :

lalu mem-boot/instalasi sistem operasi Guest-nya.

catatan: anda perlu untuk beralih kembali ke sintaks tap:aio:/path/to/mycd.iso,hdc:cdrom,r setelah instalasi selesai, karena loopback harus dibuat ulang saat anda me-reboot sistem host.

Info terkait