Ürün belgeleriSanallaştırma ve VDS
Linux VDS'te libvirt ile KVM sanal makineleri oluşturun
Linux VDS içinde KVM konukları çalıştırın: libvirt'i kurun, NAT ağını başlatın, bulut imajından cloud-init ile Ubuntu sanal makinesi oluşturup SSH ile bağlanın.
- İleri
- 30 dk okuma
- Güncellendi
Bu sayfada
İç içe sanallaştırması olan bir Linux VDS, libvirt ile yönetilen kendi KVM sanal makinelerini çalıştırabilir. Bu; yalıtılmış test ortamları, CI makineleri veya laboratuvarlar için kullanışlıdır. Bu rehber Ubuntu'nun resmi bulut imajından bir Ubuntu konuk oluşturur; cloud-init SSH anahtarınızı ona yerleştirir, böylece tıklanacak bir kurulum yoktur. VDS ve iç içe sanallaştırma rehberindeki kontrol ve paket kurulumunun üzerine kuruludur.
Başlamadan önce
kvm-okkomutunun (paketcpu-checker)KVM acceleration can be usedyazdığı bir Ubuntu veya Debian VDS, nested dedicated ya da dedicated sunucu.sudoyetkili bir kullanıcı ve kendi bilgisayarınızda bir SSH anahtar çifti; bkz. SSH anahtarları./var/lib/libvirt/imagesaltında konuklar için boş disk alanı.
1. adım: Araçları kurun
sudo apt update
sudo apt install qemu-system-x86 qemu-utils libvirt-daemon-system virtinst
sudo usermod -aG libvirt $USERGrup üyeliğinin uygulanması için oturumu kapatıp yeniden açın.
Doğrulama: virsh list --all izin hatası vermeden çalışır.
2. adım: Varsayılan ağı başlatın
libvirt'in default ağı konuklara 192.168.122.0/24 içinde adres ve internete NAT verir:
virsh net-list --all
sudo virsh net-start default
sudo virsh net-autostart defaultDoğrulama: virsh net-list, default ağını active ve autostart yes olarak gösterir.
3. adım: Bulut imajını indirin
Ubuntu 24.04 bulut imajını ve sağlama toplamı listesini indirin, dosyayı denetleyin:
cd /var/lib/libvirt/images
sudo wget https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img
sudo wget https://cloud-images.ubuntu.com/noble/current/SHA256SUMS
sha256sum -c SHA256SUMS --ignore-missingDoğrulama: denetim noble-server-cloudimg-amd64.img: OK yazar.
4. adım: Konuğun diskini oluşturun
İmajı yeni konuk için kopyalayın ve büyümesi için yer verin; cloud-init ilk açılışta dosya sistemini büyütür:
sudo cp noble-server-cloudimg-amd64.img vm1.qcow2
sudo qemu-img resize vm1.qcow2 20G5. adım: Sanal makineyi oluşturun ve başlatın
libvirt'in Ubuntu 24.04 için bildiği işletim sistemi adını bulun:
sudo apt install libosinfo-bin
osinfo-query os | grep -i ubuntu24Konuğu oluşturun, diski içe aktarın ve genel SSH anahtarınızı cloud-init'e verin. Önce genel anahtarınızı sunucuya kopyalayın (örneğin ~/id_ed25519.pub olarak):
virt-install --name vm1 --memory 2048 --vcpus 2 --disk /var/lib/libvirt/images/vm1.qcow2 --import --osinfo ubuntu24.04 --network network=default --cloud-init clouduser-ssh-key=$HOME/id_ed25519.pub --graphics none --noautoconsole--import bir kurulum çalıştırmak yerine sanal makineyi mevcut diskin etrafında kurar; clouduser-ssh-key ise imajın varsayılan kullanıcısı ubuntu olarak oturum açmanızı sağlar.
Doğrulama: virsh list, vm1 sanal makinesini running olarak gösterir.
6. adım: Konuğa bağlanın
İlk açılış için bir dakika bekleyin, ardından konuğun adresine bakın ve sunucudan bağlanın:
virsh domifaddr vm1
ssh ubuntu@192.168.122.50Kendi bilgisayarınızdan sunucu üzerinden tek komutla atlayın:
ssh -J siz@203.0.113.10 ubuntu@192.168.122.50SSH henüz çalışmıyorsa seri konsolu virsh console vm1 ile açın ve Ctrl + ] ile çıkın.
7. adım: Günlük yönetim
virsh list --all
virsh shutdown vm1
virsh start vm1
virsh autostart vm1virsh autostart konuğu sunucu her açıldığında başlatır. Bir konuğu ve diskini silmek için virsh destroy vm1 ve virsh undefine vm1 --remove-all-storage çalıştırın.
Sorun giderme
virt-install KVM'nin kullanılamadığını söylüyor veya yavaş emülasyona düşüyor. Sanallaştırma uzantıları görünmüyor; bkz. iç içe sanallaştırma sorunları.
virt-install bir işletim sistemi adının gerektiğini bildiriyor veya adı tanımıyor. Sunucunuzda osinfo-query os komutunun listelediği bir ad kullanın; eski sistemler yalnızca eski Ubuntu sürümlerini bilebilir.
virsh domifaddr hiçbir şey göstermiyor. Konuk hâlâ açılıyor ya da cloud-init ağı henüz yapılandırmadı. Bekleyin veya açılış çıktısını virsh console vm1 ile kontrol edin.
Bağlanırken Permission denied (publickey). clouduser-ssh-key ile verilen dosya genel anahtarınız değildi ya da yanlış kullanıcıyla bağlandınız. Konuğu doğru anahtarla yeniden oluşturun ve ubuntu olarak bağlanın.
Konuğun interneti yok. Varsayılan ağın etkin olduğunu (virsh net-list) ve sunucu güvenlik duvarınızın virbr0 için yönlendirmeye izin verdiğini kontrol edin.
Sonraki adımlar
- Çok sayıda konuk için web arayüzü: Debian 13'e Proxmox VE.
- Bir konuğun web sitesini yayınlayın: Caddy ters vekil.
Sık sorulan sorular
Sanal makineleri yönetmek için grafik masaüstü gerekir mi?
Hayır. virsh ve virt-install SSH üzerinden çalışır. Grafik bir araç tercih ederseniz kendi Linux bilgisayarınızdaki virt-manager sunucuya SSH ile bağlanabilir.
Konuklar internete nasıl çıkar?
libvirt'in varsayılan ağı üzerinden; bu ağ konuklara DHCP ile özel adresler verir ve sunucunun genel adresinin arkasında NAT uygular.
Bir konuğun web hizmetini nasıl herkese açarım?
Sunucuda Caddy veya Nginx gibi bir ters vekil (reverse proxy) çalıştırın ve siteyi konuğun özel adresine yönlendirin. Diğer portlar için sunucudaki güvenlik duvarı kurallarıyla yönlendirme yapın.
Windows konukları çalıştırabilir miyim?
Evet; bir kurulum ISO'sundan virt-install'un --cdrom seçeneği ve SSH tüneli üzerinden VNC gibi grafik bir konsolla. Bu rehberdeki adımlar kurulum gerektirmediği için bir Linux bulut imajı kullanır.