OpenVZ

OpenVZ ( Open Virtuozzo) adalah teknologi virtualisasi tingkat sistem operasi untuk Linux . Hal ini memungkinkan server fisik untuk menjalankan beberapa instance sistem operasi yang terisolasi, yang disebut wadah, server pribadi virtual (VPS), atau lingkungan virtual (VE).
OpenVZ dibandingkan dengan teknologi virtualisasi lainnya
Sementara teknologi virtualisasi seperti Vmwaredan Xen menyediakan virtualisasi penuh dan dapat menjalankan beberapa sistem operasi dan versi kernel yang berbeda, OpenVZ menggunakan kernel Linux tunggal dan karenanya hanya dapat menjalankan Linux. Semua wadah OpenVZ berbagi arsitektur dan versi kernel yang sama. Ini bisa menjadi kerugian dalam situasi di mana para tamu memerlukan versi kernel yang berbeda dari host. Namun, karena tidak memiliki overhead hypervisor sejati, ini sangat cepat dan efisien.
Alokasi memori dengan OpenVZ lunak karena memori yang tidak digunakan dalam satu lingkungan virtual dapat digunakan oleh orang lain atau untuk caching disk. Sementara versi lama OpenVZ menggunakan sistem file umum (di mana setiap lingkungan virtual hanya direktori file yang diisolasi, versi OpenVZ saat ini memungkinkan setiap wadah memiliki sistem file sendiri.
Kernel OpenVZ adalah kernel Linux, dimodifikasi untuk menambah dukungan untuk wadah OpenVZ. Kernel yang dimodifikasi menyediakan virtualisasi, isolasi, manajemen sumber daya, dan pos pemeriksaan. Pada vzctl 4.0, OpenVZ dapat bekerja dengan kernel Linux 3.x yang belum ditambal, dengan set fitur yang diperkecil.
Alokasi memori dengan OpenVZ lunak karena memori yang tidak digunakan dalam satu lingkungan virtual dapat digunakan oleh orang lain atau untuk caching disk. Sementara versi lama OpenVZ menggunakan sistem file umum (di mana setiap lingkungan virtual hanya direktori file yang diisolasi), versi OpenVZ saat ini memungkinkan setiap wadah memiliki sistem file sendiri.
Kernel OpenVZ adalah kernel Linux, dimodifikasi untuk menambah dukungan untuk wadah OpenVZ.
Kernel yang dimodifikasi menyediakan virtualisasi, isolasi, manajemen sumber daya, dan pos pemeriksaan. Pada vzctl 4.0, OpenVZ dapat bekerja dengan kernel Linux 3.x yang belum ditambal, dengan set fitur yang diperkecil.

Manajemen Sumber Daya

Manajemen sumber daya OpenVZ terdiri dari empat komponen: kuota disk dua tingkat, penjadwal CPU yang adil, penjadwal I / O disk, dan penghitung kacang pengguna (lihat di bawah). Sumber daya ini dapat diubah selama waktu menjalankan wadah, menghilangkan kebutuhan untuk reboot.

Kuota disk dua tingkat

Setiap kontainer dapat memiliki kuota disk sendiri, diukur dalam hal blok disk dan inode (kira-kira jumlah file). Di dalam wadah, dimungkinkan untuk menggunakan alat standar untuk menetapkan kuota disk per-pengguna dan per-grup UNIX.

Penjadwal I/O

Mirip dengan penjadwal CPU yang dijelaskan di atas, penjadwal I / O di OpenVZ juga dua tingkat, dengan menggunakan penjadwal I/O CFQ Jens Axboe di tingkat kedua. Setiap kontainer diberi prioritas I / O, dan scheduler mendistribusikan bandwidth I / O yang tersedia sesuai dengan prioritas yang ditetapkan. Dengan demikian tidak ada satu wadah pun yang dapat memenuhi saluran I / O.

Pengguna Beancounters

adalah seperangkat penghitung, batas, dan jaminan per-kontainer, yang dimaksudkan untuk mencegah satu kontainer memonopoli sumber daya sistem. Dalam kernel OpenVZ saat ini (RHEL6-based 042stab*) ada dua parameter utama ( ram dan swap, alias halaman fisik dan swappages), dan lainnya opsional 
Sumber daya lain kebanyakan adalah memori dan berbagai objek dalam-kernel seperti komunikasi antar-proses segmen memori bersama dan buffer jaringan. Setiap sumber daya dapat dilihat dari /proc/user_beancounters dan memiliki lima nilai yang terkait dengannya: penggunaan saat ini, penggunaan maksimum (untuk masa pakai wadah), penghalang, batas, dan penghitung gagal. Arti penghalang dan batas bergantung pada parameter; singkatnya, hal itu dapat dianggap sebagai batas lunak dan batas keras. Jika ada sumber daya yang mencapai batas, penghitung gagal untuk itu meningkat. Ini memungkinkan pemilik untuk mendeteksi masalah dengan memonitor/proc/user_beancounters dalam wadah.

Pos pemeriksaan dan migrasi langsung

Fitur migrasi langsung dan pos pemeriksaan dirilis untuk OpenVZ pada pertengahan April 2006. Ini memungkinkan untuk memindahkan wadah dari satu server fisik ke yang lain tanpa mematikan wadah. Proses ini dikenal sebagai checkpointing: wadah dibekukan dan seluruh kondisinya disimpan ke file pada disk. File ini kemudian dapat ditransfer ke komputer lain dan sebuah wadah dapat dibekukan (dipulihkan) di sana; penundaan kira-kira beberapa detik. Karena keadaan biasanya dipertahankan sepenuhnya, jeda ini mungkin tampak sebagai penundaan komputasi biasa.

Keterbatasan

Secara default, OpenVZ membatasi akses kontainer ke perangkat fisik nyata (sehingga membuat perangkat keras independen). Administrator OpenVZ dapat mengaktifkan akses kontainer ke berbagai perangkat nyata, seperti drive disk, port USB, perangkat PCI  atau kartu jaringan fisik 
Antarmuka pengguna grafis yang disebut EasyVZ telah dicoba pada tahun 2007, tetapi itu tidak berkembang melampaui versi 0,1. Hingga versi 3.4, Proxmox VE dapat digunakan sebagai lingkungan virtualisasi server berbasis OpenVZ dengan GUI, meskipun versi yang lebih baru beralih ke LXC.