Masaüstünüzde VirtualBox açıp bir Ubuntu sanal makinesi çalıştırdığınızda da, veri merkezindeki bir sunucuda Proxmox üzerinde otuz sanal makine döndürdüğünüzde de teknik olarak "sanallaştırma" yapıyorsunuz. Ama bu ikisi arasındaki mimari fark, bir bisiklet ile bir tırın arasındaki fark kadar büyüktür. İşte tip-1 ve tip-2 hipervizör ayrımı tam olarak bunu tarif eder: hipervizörün donanıma doğrudan mı yoksa bir işletim sistemi üzerinden mi eriştiğini.
Bu ayrımı bilmek akademik bir merak değil; doğrudan performans, güvenlik ve maliyet kararlarını etkiler. Test ortamınızı dizüstü bilgisayarınızda kurup üretime aynı yaklaşımla çıkmaya kalkarsanız, CPU'nuzun yarısını hiç kimsenin kullanmadığı bir katmana harcarsınız. Bu rehberde iki tipin nasıl çalıştığını, hangi ürünlerin hangi tarafa düştüğünü, performans farkının nereden geldiğini ve hangi senaryoda hangisini seçmeniz gerektiğini anlatacağım. Sanallaştırmanın genel mantığına hiç bakmadıysanız önce sanallaştırma nedir, türleri nelerdir yazısıyla başlamanızı öneririm.
Hipervizör Katmanı Ne İş Yapar#
Hipervizör, tek bir fiziksel makinenin CPU çekirdeklerini, RAM'ini, disk ve ağ arayüzlerini birden fazla misafir (guest) işletim sistemi arasında paylaştıran yazılımdır. Bunu yaparken her misafire, sanki tek başına bir donanıma sahipmiş gibi görünen sanal bir makine sunar. Misafir işletim sistemi kendi çekirdeğini yükler, kendi sürücülerini yükler ve kendi zamanlayıcısını çalıştırır; hipervizör ise arka planda kimin ne zaman gerçek CPU'ya çıkacağına karar verir.
Bu paylaştırmayı iki kritik işlemle yapar. Birincisi CPU zamanlaması: misafirin çalıştırdığı komutların çoğu modern donanımda doğrudan fiziksel CPU'da çalışır, çünkü Intel VT-x ve AMD-V uzantıları bunu mümkün kılar. Yalnızca ayrıcalıklı işlemler (donanıma erişim, sayfa tablosu değişiklikleri gibi) hipervizöre "tuzağa düşürülerek" (trap) devredilir. İkincisi bellek yalıtımı: hipervizör misafirin gördüğü fiziksel adresleri gerçek makine adreslerine çevirir; bunu da EPT (Intel) ya da NPT/RVI (AMD) donanım desteğiyle yapar, yani yazılımsal bir maliyet neredeyse kalmaz.
İşte tip-1 ve tip-2 ayrımı, bu tuzağa düşürme işleminin hangi katmanda karşılandığıyla ilgilidir. Tip-1'de tuzağı doğrudan hipervizörün kendisi karşılar; çünkü hipervizörün kendisi zaten makinedeki en ayrıcalıklı yazılımdır. Tip-2'de ise araya bir konak (host) işletim sistemi girer ve hipervizör bu işletim sisteminin bir uygulaması ya da çekirdek modülü olarak çalışır.
Tip-1 (Bare-Metal) Hipervizör Nasıl Çalışır#
Tip-1 hipervizör doğrudan donanımın üzerine kurulur. Sunucuyu açtığınızda BIOS/UEFI'den sonra yüklenen ilk şey odur; altında başka bir genel amaçlı işletim sistemi yoktur. Kendi minimal çekirdeğini, kendi sürücülerini ve kendi yönetim arayüzünü taşır. VMware ESXi, Microsoft Hyper-V (rol olarak etkinleştirildiğinde), Xen ve KVM tabanlı Proxmox VE bu sınıfa girer.
Buradaki en sık yapılan kavram hatası KVM ile ilgilidir. "KVM Linux üzerinde çalışıyor, o hâlde tip-2'dir" denir ama bu doğru değildir. KVM, Linux çekirdeğinin içine giren bir modüldür (kvm.ko ve kvm_intel.ko / kvm_amd.ko); yüklendiği anda Linux çekirdeğinin kendisi hipervizöre dönüşür. Yani araya fazladan bir katman girmez, çekirdek katmanının kendisi hipervizör olur. Bu yüzden KVM ve onu paketleyen Proxmox VE, pratikte ve performans olarak tip-1 kabul edilir. Modüllerin yüklü olduğunu şöyle doğrularsınız:
# KVM modülleri yüklü mü
lsmod | grep kvm
# Beklenen çıktı benzeri:
# kvm_intel 376832 6
# kvm 1146880 1 kvm_intel
# CPU donanım sanallaştırma desteği var mı (0'dan büyük olmalı)
egrep -c '(vmx|svm)' /proc/cpuinfo
# Cihaz düğümü açık mı
ls -l /dev/kvm
Eğer /dev/kvm yoksa ya da sayaç 0 dönüyorsa, sorun neredeyse her zaman BIOS/UEFI'de kapalı olan sanallaştırma desteğidir. Sunucu BIOS'unda Intel için "Intel VT-x" veya "Intel Virtualization Technology", AMD için "SVM Mode" ayarını açmanız gerekir. Bu ayar kapalıyken hipervizör ya hiç açılmaz ya da yazılımsal öykünmeye düşerek felaket bir performans verir.
Tip-2 (Hosted) Hipervizör Nasıl Çalışır#
Tip-2 hipervizör, halihazırda kurulu bir işletim sisteminin üzerine sıradan bir uygulama gibi kurulur. Windows'unuzda VirtualBox'ı, macOS'unuzda VMware Fusion'ı ya da Parallels'i çalıştırdığınızda tam olarak bunu yaparsınız. Hipervizör sanal makineleri yönetir ama donanıma erişmek için her seferinde konak işletim sisteminin izinlerinden ve sürücülerinden geçmek zorundadır.
Bunun günlük hayattaki karşılığı şudur: sanal makinenizde bir dosya diske yazıldığında, o yazma isteği önce misafir çekirdekten hipervizöre, oradan konak işletim sisteminin dosya sistemine, oradan konak sürücüsüne, en sonunda diske ulaşır. Tip-1'de bu zincir bir kat daha kısadır. Aradaki fark hafif iş yüklerinde fark edilmez; ama yoğun disk ya da ağ trafiğinde, özellikle çok sayıda küçük işlemde belirgin hâle gelir.
Tip-2'nin bir başka gerçeği de konak işletim sisteminin kendisinin kaynak tüketmesidir. Windows masaüstü, antivirüs, güncelleme servisi, arka plan uygulamaları — hepsi aynı RAM ve CPU havuzundan yer. Bir tip-1 hipervizörde ise konak katmanı genellikle birkaç yüz megabayt RAM ve ihmal edilebilir CPU tüketir; kalan her şey sanal makinelere gider. 64 GB RAM'li bir sunucuda bu fark tek başına 4-8 GB'a kadar çıkabilir.
İki Tipin Yan Yana Karşılaştırması#
Aşağıdaki tablo, saha deneyimiyle iki mimariyi karar verebileceğiniz kriterler üzerinden karşılaştırıyor:
| Kriter | Tip-1 (Bare-Metal) | Tip-2 (Hosted) |
|---|---|---|
| Donanıma erişim | Doğrudan | Konak işletim sistemi üzerinden |
| Tipik ürünler | Proxmox VE, ESXi, Hyper-V, Xen | VirtualBox, VMware Workstation/Fusion, Parallels |
| Konak kaynak tüketimi | Çok düşük (birkaç yüz MB RAM) | Yüksek (tam bir masaüstü OS) |
| I/O gecikmesi | Düşük | Katman fazlalığından dolayı daha yüksek |
| Saldırı yüzeyi | Küçük, minimal çekirdek | Konak OS'un tüm yüzeyi dahil |
| Çalışma modeli | 7/24 sunucu, uzaktan yönetim | Masaüstü, oturum açıkken |
| Canlı göç / HA | Destekler (küme kurulumuyla) | Genellikle desteklemez |
| Donanım geçişi (passthrough) | PCIe/GPU passthrough olgun | Sınırlı veya yok |
| Kurulum kolaylığı | Sunucuya işletim sistemi kurmak gibi | Uygulama kurmak kadar kolay |
| Tipik kullanım | Üretim, barındırma, sanal veri merkezi | Geliştirme, test, eğitim, laboratuvar |
Tablodaki "saldırı yüzeyi" satırı çoğu kişinin atladığı ama en önemli satırlardan biridir. Tip-2'de konak işletim sistemindeki herhangi bir zafiyet, üzerindeki tüm sanal makineleri riske atar; çünkü hipervizör o işletim sisteminin ayrıcalıklarıyla sınırlıdır. Tip-1'de ise yönetim yüzeyi bilinçli olarak küçük tutulur: bir tarayıcı, bir ofis paketi, bir medya oynatıcı yoktur. Üretim iş yükünde bu tek başına belirleyici bir sebeptir.
Performans Farkı Gerçekte Ne Kadar#
Pazarlama malzemelerinde "yüzde 30 daha hızlı" gibi rakamlar görürsünüz; gerçek hayatta fark iş yüküne göre çok değişir. Saf CPU hesaplaması yapan bir iş yükünde (örneğin bir sıkıştırma işlemi) iki tip arasında neredeyse hiç fark göremezsiniz, çünkü komutlar zaten donanımda doğrudan çalışır. Fark, hipervizör müdahalesi gerektiren her yerde ortaya çıkar: disk I/O, ağ paketleri, kesmeler (interrupt) ve bağlam değiştirme.
Kendi ortamınızda ölçmek istiyorsanız, sentetik testler yerine kendi iş yükünüze yakın bir test kurun. Disk için fio iyi bir başlangıçtır:
# 4K rastgele okuma/yazma karışımı — veritabanı benzeri profil
fio --name=randrw --ioengine=libaio --direct=1 \
--rw=randrw --rwmixread=70 --bs=4k \
--size=2G --numjobs=4 --runtime=60 --group_reporting
# Ardışık yazma — yedekleme/dosya sunucusu benzeri profil
fio --name=seqwrite --ioengine=libaio --direct=1 \
--rw=write --bs=1M --size=4G --runtime=60 --group_reporting
Buradaki --direct=1 bayrağı kritik: sayfa önbelleğini devre dışı bırakır, yoksa RAM hızını ölçüp diski ölçtüğünüzü sanırsınız. Ağ tarafında iperf3 ile misafirden misafire ve misafirden dışarıya ölçüm yapın; sanal ağ sürücüsünün doğru seçilip seçilmediğini burada anlarsınız. Tip-1 kurulumlarda misafir tarafında paravirtualize sürücüleri kullanmak (Linux için virtio-blk/virtio-net, Windows için VirtIO sürücü paketi) çoğu zaman tip seçiminden bile büyük fark yaratır — emüle edilmiş IDE disk ile virtio disk arasında birkaç kat performans farkı görebilirsiniz.
Bir başka önemli nokta bellek yönetimidir. Tip-2'de konak işletim sistemi RAM'i takas alanına (swap) atmakta özgürdür; bu da sanal makinenizin altındaki belleğin diske inmesi anlamına gelir ve performansı öngörülemez hâle getirir. Üretim ortamlarında bu davranış kabul edilebilir değildir, dolayısıyla tip-1 tercih edilir.
Hangi Senaryoda Hangisini Seçmelisiniz#
Karar aslında sandığınızdan basit. Şu sorulara cevap verin: makine 7/24 açık kalacak mı, üzerinde başkalarının iş yükü çalışacak mı, kesinti kabul edilemez mi? Üçüne de "evet" diyorsanız tip-1 dışında bir seçenek yoktur.
- Geliştirme ve test için tip-2 seçin. Dizüstü bilgisayarınızda üç farklı dağıtımı denemek, bir kurulum senaryosunu prova etmek, eğitim amaçlı laboratuvar kurmak için VirtualBox ya da benzeri bir araç fazlasıyla yeterlidir. Anlık görüntü (snapshot) alıp geri dönmek de kolaydır.
- Üretim iş yükü için tip-1 seçin. Web siteleri, veritabanları, uygulama sunucuları, e-posta altyapısı — hepsi tip-1 üzerinde çalışmalıdır. Kaynak yalıtımı, çalışma süresi ve yönetilebilirlik burada tartışılmaz.
- Yönetim yükünü hesaplayın. Tip-1 kurmak, bir sunucuya işletim sistemi kurmaya benzer; ağ, depolama ve yedekleme kararlarını sizin vermeniz gerekir. Bu yükü almak istemiyorsanız hazır bir VDS ya da bulut sunucu paketi zaten tip-1 üzerinde çalışan bir sanal makineyi size teslim eder.
- Donanım gereksinimini kontrol edin. GPU passthrough, NVMe passthrough ya da özel bir PCIe kartı kullanacaksanız pratikte tip-1 zorunludur; tip-2 hipervizörlerde bu yollar ya yoktur ya da çok kısıtlıdır. GPU VDS tarafındaki iş yükleri bunun tipik örneğidir.
- Ölçekleneceğinizi biliyorsanız baştan tip-1 kurun. İki makineden fazlasına çıkacaksanız küme, canlı göç ve yüksek erişilebilirlik gibi yetenekler devreye girer; bunlar yalnızca tip-1 dünyasında vardır. Kümeyi nasıl kuracağınızı Proxmox cluster kurulumu yazısında adım adım anlattım.
Kendi donanımınızı almak yerine hazır kaynak kiralamak isterseniz sanal sunucu paketleri de arka planda tip-1 hipervizör üzerinde çalışır; siz yalnızca misafir tarafını yönetirsiniz.
Sık Yapılan Hatalar ve Tuzaklar#
İç içe sanallaştırmayı üretimde kullanmak. Bir sanal makinenin içinde ikinci bir hipervizör çalıştırmak (nested virtualization) test için harikadır, üretim için değildir. Her katman kendi maliyetini ekler ve hata ayıklaması ciddi biçimde zorlaşır. Laboratuvar amaçlı kullanmak isterseniz nested sunucu paketleri bu senaryo için düşünülmüştür; ama üzerine gerçek müşteri trafiği koymayın.
BIOS'ta sanallaştırma kapalıyken tip-1 kurmaya çalışmak. Kurulum ekranı açılır, her şey yolunda görünür, sonra ilk sanal makine ya hiç açılmaz ya da yazılımsal öykünmeyle sürünür. egrep -c '(vmx|svm)' /proc/cpuinfo komutunun sıfırdan büyük döndüğünü kurulum öncesinde doğrulayın.
Fazla kaynak tahsis etmek (overcommit). Tip-1'de 32 GB RAM'li bir makineye toplamda 64 GB tahsis etmek teknik olarak mümkündür; ama misafirlerin hepsi aynı anda belleği kullanmaya kalkarsa hipervizör takasa düşer ve hepsinin performansı çöker. CPU'da bir miktar aşırı tahsis normaldir, bellekte olabildiğince kaçının.
Misafir tarafında paravirtualize sürücüleri kurmayı unutmak. Windows misafirlerde VirtIO sürücüleri kurulmadığında disk ve ağ emüle modda kalır; performansın neden kötü olduğunu haftalarca hipervizörde ararsınız. Kurulum sırasında sürücü ISO'sunu bağlamak dakikalar alır.
Yedeği hipervizör ile aynı diske almak. Tip-1 ya da tip-2 fark etmez; yedek aynı fiziksel diskteyse yedek değildir. Disk arızası hem üretimi hem yedeği aynı anda götürür. Ayrı bir hedef kullanın; Proxmox yedekleme ve geri yükleme yazısında bunun doğru kurgusunu anlattım.
Tip-2'yi sunucuda "geçici" diye kullanmak. Geçici çözümler kalıcı olur. Bir Windows Server üzerine kurulmuş VirtualBox'ta üretim veritabanı çalıştıran birden fazla kurumsal ortam gördüm; her birinde ilk büyük kesinti bu karardan çıktı.
Sıkça Sorulan Sorular#
KVM tip-1 mi tip-2 mi#
KVM tip-1 kabul edilir. Linux üzerinde çalıştığı için tip-2 gibi görünür ama KVM bir uygulama değil, çekirdeğin içine giren bir modüldür; yüklendiği anda Linux çekirdeğinin kendisi hipervizör hâline gelir. Yani misafir ile donanım arasına fazladan bir katman girmez. Bu yüzden Proxmox VE gibi KVM tabanlı platformlar performans olarak ESXi ile aynı ligde değerlendirilir.
Tip-1 hipervizör dizüstü bilgisayara kurulabilir mi#
Teknik olarak evet, pratikte genellikle iyi bir fikir değildir. Tip-1 kurduğunuzda makinede başka bir işletim sistemi kalmaz; yani dizüstü bilgisayarınızı günlük işlerde kullanamazsınız, çünkü sunucu hâline gelir. Ayrıca dizüstü donanımlarında kablosuz ağ kartı ve güç yönetimi desteği çoğu zaman eksiktir. Eğitim amaçlı bir laboratuvar istiyorsanız eski bir masaüstü kasa çok daha uygun olur.
İki hipervizör aynı makinede aynı anda çalışır mı#
Genellikle hayır. Donanım sanallaştırma uzantıları (VT-x/AMD-V) belirli bir anda tek bir hipervizör tarafından sahiplenilir; ikinci bir hipervizör açılmaya çalıştığında hata verir ya da yazılımsal moda düşer. Windows'ta Hyper-V rolü açıkken VirtualBox'ın yavaşlaması ya da hata vermesi tam olarak bu nedenledir. İkisini birlikte kullanmak istiyorsanız Hyper-V'yi kapatmanız gerekir.
Tip-2 hipervizörde sanal makine ne kadar yavaş çalışır#
Tek bir rakam vermek yanıltıcı olur çünkü fark iş yüküne bağlıdır. Saf CPU hesaplamasında fark neredeyse ölçülemez seviyededir; disk ve ağ yoğun iş yüklerinde ise gözle görülür biçimde geride kalır. Asıl belirleyici olan çoğu zaman hipervizör tipi değil, misafirde paravirtualize sürücü kullanıp kullanmadığınız ve konak makinenin diskinin türüdür.
Üretim sunucusunda hangi tip-1 hipervizörü seçmeliyim#
Açık kaynak ve maliyetsiz bir yol istiyorsanız KVM tabanlı Proxmox VE güçlü bir tercihtir; küme, yedekleme, canlı göç ve konteyner desteği tek arayüzde gelir. Kurumsal destek sözleşmesi ve mevcut VMware ekosistemi zorunluysa ESXi tarafına bakılır. Karar verirken ekibinizin hangi platformda deneyimli olduğunu da hesaba katın; işletim bilgisi lisans farkından daha pahalıdır.
Sanal makinemde donanım hızlandırma neden çalışmıyor#
En yaygın üç sebep şudur: BIOS/UEFI'de sanallaştırma desteğinin kapalı olması, aynı makinede başka bir hipervizörün uzantıları sahiplenmiş olması ve iç içe sanallaştırma senaryosunda dış hipervizörün bu özelliği misafire açmamış olması. Sırasıyla BIOS ayarını kontrol edin, lsmod | grep kvm ile modülleri doğrulayın ve bir bulut sunucu kullanıyorsanız sağlayıcınızın nested sanallaştırmayı destekleyip desteklemediğini sorun.
Kapanış#
Tip-1 ile tip-2 arasındaki fark tek cümleyle özetlenebilir: tip-1 donanımın üzerinde, tip-2 bir işletim sisteminin üzerinde çalışır. Bu tek mimari fark, kaynak tüketiminden saldırı yüzeyine, canlı göç yeteneğinden I/O gecikmesine kadar her şeyi belirler. Akılda tutmanız gereken dört pratik alışkanlık şudur: üretim iş yükünü her zaman tip-1'de çalıştırın, kurulumdan önce BIOS'ta sanallaştırma desteğini doğrulayın, misafirlerde paravirtualize sürücüleri mutlaka kurun ve belleği aşırı tahsis etmekten kaçının.
Kendi hipervizörünüzü kurup yönetmek istemiyor, doğrudan hazır ve tip-1 üzerinde çalışan bir sanal makine almak istiyorsanız VDS ve sanal sunucu paketlerimiz tam olarak bunu sunar; kaynakları kendinize ayırmak isterseniz dedicated sunucu üzerine kendi Proxmox kurulumunuzu yapabilirsiniz. Kurulum ve bakım tarafını devretmek isterseniz sunucu yönetimi hizmetimiz hipervizör katmanının işletimini sizin yerinize üstlenir.