Tools: libvirt and virsh/virt-manager

Prerequisites

Libvirt öntanımlı ağının çalıştığından emin olun

Libvirt ile bir sanal makine başlatmadan çnce, libvirt öntanımlı ağının başladığını doğrulayın. Bu ağ sanal makinenizin ağa bağlanabilmesi için etkin olmalıdır. Bu ağı başlatmak bir Linux köprüsü (genellikle virbr0), iptables kuralları, ve DHCP sunucusu olarak görev yapacak bir dnsmasq süreci oluşturur.

Libvirt öntanımlı ağının etkin olduğunu doğrulamak için, virsh net-list komutunu kullanın ve öntanımlı ağın etkin olduğunu doğrulayın:

# virsh net-list
Name                 State      Autostart
-----------------------------------------
default              active     yes

Ağ etkin değilse, şu şekilde başlatın:

# virsh net-start default

virt-manager X11 GUI’yi kullan

X11 uygulamaları çalıştırabilen bir makinede sanal makine imajı oluşturmayı planlıyorsanız, bunu yapmanın en kolay yolu virt-manager GUI’yi kullanmaktır, bu paket Fedora ve Debian tabanlı sistemlerde virt-manager paketinin kurulmasıyla elde edilir. Bu GUI misafirin grafik konsolunu görüntüleyebilmeniz ve etkileşime geçebilmeniz için gömülü bir VNC istemcisine sahiptir.

İmajı grafik ortamsız bir sunucuda inşa ediyorsanız, ve yerel makinenizde X sunucunuz varsa, GUI’ye erişebilmek için X11 yönlendirmeli ssh kullanarak virt-manager başlatabilirsiniz. Virt-manager doğrudan libvirt ile etkileşime geçtiğinden, genellikle root erişiminizin olması gerekir. Doğrudan root ile ssh çekebiliyorsanız (ya da libvirt ile etkileşim yetkisi olan bir kullanıcı ile), şunu yapın:

$ ssh -X root@server virt-manager

Sunucunuza ssh çekmek için kullandığınız hesabınızın libvirt çalıştırma izni yoksa, ama sudo yetkileri varsa, şunu yapın:

$ ssh -X user@server
$ sudo virt-manager

Not

Ssh sürecine -X bayrağını geçirmek ssh üzerinden X11 yönlendirmeyi etkinleştirir. Bu çalışmazsa, -Y bayrağıyla değiştirmeyi deneyin.

Sol üstteki Yeni bir sanal makine oluştur düğmesine tıklayın, veya Dosya ‣ Yeni Sanal Makine takip edin. Ardından yönergeleri takip edin.

_images/virt-manager.png

Sanal makine hakkında bilgileri belirtmenizi sağlayacak bir seri iletişim penceresi açılacaktır.

Not

Qcow2 imajlarını kullanırken, Kurulumdan önce yapılandırmayı özelleştir seçmelisiniz, disk özelliklerine gidin ve qcow2 biçimini özellikle seçin. Bu sanal makine disk boyutunun doğru olduğundan emin olmanızı sağlar.

virt-install kullanın ve yerel VNC istemcisiyle bağlanın

virt-manager kullanmak istemiyorsanız (örneğin bağımlılıklarını sunucunuza kurmak istemiyorsanız, çalışan bir X sunucunuz yoksa, SSH üzerinden X11 yönlendirme çalışmıyorsa) virt-install aracını kullanarak sanal makineyi libvirt aracılığıyla önyükleyebilir ve yerel makinenize kurulu VNC istemcisiyle grafik konsola bağlanabilirsiniz.

Because VNC is a standard protocol, there are multiple clients available that implement the VNC spec, including TigerVNC (multiple platforms), TightVNC (multiple platforms), RealVNC (multiple platforms), Chicken (Mac OS X), Krde (KDE), Vinagre (GNOME).

Aşağıdaki örnek qemu-img komutunu kullanarak boş bir imaj dosyası oluşturmayı, ve virt-install komutu ile bu imaj dosyasını kullanarak bir sanal makine başlatmayı gösteriyor. Root olarak:

# qemu-img create -f qcow2 /tmp/centos.qcow2 10G
# virt-install --virt-type kvm --name centos --ram 1024 \
  --disk /tmp/centos.qcow2,format=qcow2 \
  --network network=default \
  --graphics vnc,listen=0.0.0.0 --noautoconsole \
  --os-type=linux --os-variant=centos7.0 \
  --location=/data/isos/CentOS-7-x86_64-NetInstall-1611.iso

Starting install...
Creating domain...                     |    0 B     00:00
Domain installation still in progress. You can reconnect to
the console to complete the installation process.

KVM hipervizörü sanal makineyi libvirt ismiyle, centos, 1024 MB RAM ile başlatır. Sanal makinenin ayrıca /data/isos/CentOS-7-x86_64-NetInstall-1611.iso dosyasıyla ilişkili sanal bir CD-ROM sürücüsü ve qcow2 biçiminde /tmp/centos.qcow2 konumunda kayıtlı 10 GB sabit diski bulunur. Ağı libvirt öntanımlı ağını kullanacak şekilde yapılandırır. Tüm arayüzlerden dinleyen bir VNC sunucusu da bulunur, libvirt otomatik olarak bir VNC istemcisi açmaya veya metin konsolunu (--no-autoconsole) görüntülemeye çalışmaz. Son olarak libvirt CentOS 7 dağıtımı çalıştıran bir Linux misafiri için yapılandırmayı iyileştirmeye çalışır.

Not

Libvirt öntanımlı ağını kullanırken, libvirt sanal makinenin arayüzünü virbr0 isimli köprüye bağlar. Libvirt tarafından yönetilen bir dnsmasq süreci 192.168.122.0/24 alt ağında IP adresi dağıtır, ve libvirt bu alt ağda IP adresleri için NAT kuralları olan iptables içerir.

İzin verilen --os-variant seçenekleri aralığını görmek için osinfo-query os komutunu çalıştırın.

VNC bağlantı noktası numarasını almak için virsh vncdisplay vm-name komutunu kullanın.

# virsh vncdisplay centos
:1

Yukardaki örnekte, misafir centos VNC :1 numaralı görüntülemeyi kullanır, bu da 5901 TCP bağlantı noktasına denk gelir. Yerel makinenizde çalışan bir VNC istemcisi ile uzak makinede :1 görüntülemek için bağlanabilmeli ve kurulum sürecini devam ettirebilmelisiniz.