Tanım
OpenVZ, tek bir Linux çekirdeği üzerinde birbirinden yalıtılmış çok sayıda konteyner çalıştıran, işletim sistemi seviyesinde bir sanallaştırma teknolojisidir. Her konteyner kendi dosya sistemi, kullanıcıları ve IP adresiyle bağımsız bir sunucu gibi görünür; ancak çekirdek tüm konteynerler arasında ortaktır.
OpenVZ nasıl çalışır?
OpenVZ, ana sunucudaki değiştirilmiş Linux çekirdeğini tüm konteynerlerle paylaşarak çalışır. Donanım taklidi yapılmadığı için ek yük düşüktür ve aynı donanımda çok sayıda konteyner barındırılabilir. Kaynak sınırları çekirdek seviyesindeki kotalarla uygulanır.
Bu yapının bedeli esneklik kaybıdır: konteyner içinden çekirdek sürümü değiştirilemez, çekirdek modülü yüklenemez ve yalnızca Linux dağıtımları çalıştırılabilir. Docker, bazı VPN çözümleri ve özel güvenlik duvarı modülleri gibi çekirdek özelliği isteyen yazılımlar sağlayıcı izin vermedikçe çalışmayabilir.
OpenVZ mi KVM mi?
Bugün yeni bir sanal sunucu için genellikle KVM tercih edilir, çünkü tam sanallaştırma daha güçlü yalıtım ve işletim sistemi serbestliği sağlar.
| Ölçüt | OpenVZ | KVM |
|---|---|---|
| Sanallaştırma türü | Konteyner (ortak çekirdek) | Tam sanallaştırma |
| Windows desteği | Yok | Var |
| Çekirdek seçimi | Yok | Var |
| Ek yük | Çok düşük | Düşük |
OpenVZ'nin ticari devamı Virtuozzo adıyla sürmektedir. Konteyner yaklaşımının modern örneği için LXC maddesine bakabilirsiniz; LIONFIN VPS sunucuları KVM kullanır.
OpenVZ sunucuda hangi sınırlamalarla karşılaşılır?
OpenVZ sunucuda en sık karşılaşılan sınırlamalar çekirdek erişimiyle ilgilidir. Swap alanı oluşturulamaz ya da yalnızca sağlayıcının belirlediği kadar kullanılabilir, sysctl ile bazı ağ parametreleri değiştirilemez, TUN/TAP aygıtı sağlayıcı açmadıkça VPN kurulamaz ve Docker çoğu zaman çalışmaz. Ayrıca bellek ölçümü klasik sanal makinelerden farklı yapıldığı için uygulamaların gördüğü bellek ile gerçek sınır arasında farklar oluşabilir. Bu nedenlerle yeni projelerde konteyner ihtiyacı varsa ya LXC ya da KVM üzerinde Docker tercih edilir.