Örnek: Fedora imajı

Bu örnek bir Fedora imajını nasıl yükleyeceğinizi gösterir ve Fedora 25’e odaklanır. Fedora kurulum süreci sürümden sürüme farklılık gösterebileceğinden, kurulum adımları farklı bir Fedora sürümü kullanıyorsanız farklı olabilir.

Fedora kurulum ISO’su indirin

  1. Fedora indirme sitesini ziyaret edin.

  2. Fedora Sunucu ISO imajı için Fedora Sunucu İndirme sayfasına gidin.

  3. İndirmek istediğiniz ISO imajını seçin.

    Örneğin, Kurulum İmajı iyi bir seçimdir çünkü eksik paketleri kurulum sırasında internetten indiren küçük bir imajdır.

Kurulum sürecini başlatın

Kurulum sürecini ya virt-manager ya da virt-install komutu ile daha önce açıklandığı şekilde başlatın. virt-install komutunu kullanırsanız VNC istemcinizi sanal makineye bağlamayı unutmayın.

Şunları varsayın:

  • Sanal makinenizin adı fedora; bu isme virsh komutlarını kullanarak imaj durumuna müdahele etmek istediğinizde ihtiyaç duyacaksınız.

  • Ağ kurulum ISO imajını /tmp dizinine kaydettiniz.

virt-install komutunu kullanırsanız, komutlar şöyle görünmelidir:

# qemu-img create -f qcow2 /tmp/fedora.qcow2 10G
# virt-install --virt-type kvm --name fedora --ram 1024 \
  --disk /tmp/fedora.qcow2,format=qcow2 \
  --network network=default \
  --graphics vnc,listen=0.0.0.0 --noautoconsole \
  --os-type=linux --os-variant=fedora23 \
  --location=/tmp/Fedora-Server-netinst-x86_64-25-1.3.iso

Kurulum adımını geçin

Kurulum programı başladıktan sonra, istediğiniz dili seçin ve kurulum özetine geçmek için :guilabel:`Devam et`e tıklayın. Öntanımlıları kabul edin.

Ethernet durumunu gözden geçirin

Ethernet ayarının AÇIK olduğundan emin olun. Ek olarak, IPv4 Ayarlama Yöntemi``nin öntanımlı değer olan ``Otomatik (DHCP) olduğundan emin olun.

Makine Adı

Yükleyici bir makine adı seçmenize izin verir. Öntanımlı (localhost.localdomain) iyidir. Daha sonra kurduğunuz cloud-init paketi yeni bir sunucu bu imajı kullanarak hazırlandığında makine adını ayarlar.

Diskleri bölümlendirin

Diskleri bölümlendirmek için farklı seçenekler bulunur. Öntanımlı kurulum LVM bölümleri kullanır, ve üç bölüm oluşturur (/boot, /, swap), bu yeterlidir. Alternatif olarak / konumuna bağlı tek bir ext4 bölümü de oluşturabilirsiniz, bu da yeterlidir.

Emin değilseniz, kurulum için öntanımlı bölümleme şemasını kullanın. Bir şemanın diğerlerine göre doğuştan iyi olduğu söylenemez ancak dinamik olarak genişletmek istedğiniz bölümü listenin sonuna bırakmanız herhangi bir bölümün sınırlarına girmeden genişleyebilmesini sağlar.

Kurulacak yazılımı seçin

Kurulum adımını öntanımlı seçeneklerle geçin. Yapılacak en basit şey Asgari Kurulum kurulumunu seçmektir, bu da bir SSH sunucu kurar.

Root parolasını ayarlayın

Kurulum sırasında, sorulduğunda root parolasını ayarlamayı unutmayın.

CD-ROM’u ayırın ve yeniden başlatın

Kurulum bitene kadar bekleyin.

virsh komutunu kullanarak bir diski çıkarmak için, libvirt CD-ROM’un daha önce bağlı olduğu aynı hedefe boş bir disk eklemenizi gerektirir, bu hda olabilir. Uygun hedefi virsh dumpxml vm-image komutuyla doğrulayabilirsiniz.

# virsh dumpxml fedora
<domain type='kvm' id='30'>
  <name>fedora</name>
...
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source file='/tmp/Fedora-Server-netinst-x86_64-25-1.3.iso'/>
      <backingStore/>
      <target dev='hda' bus='ide'/>
      <readonly/>
      <alias name='ide0-0-0'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
...
</domain>

Sunucudan aşağıdaki komutları çalıştırarak diski çıkartın ve root olarak virsh kullanarak yeniden başlatın. virt-manager kullanıyorsanız yukardaki komutlar çalışacaktır, ama ayrıca GUI kullanarak da ayırma ve yeniden başlatmayı elle durdurup başlatarak yapabilirsiniz.

# virsh attach-disk --type cdrom --mode readonly fedora "" hda
# virsh reboot fedora

ACPI sunucusunu kurun

Hipervizörün bir sunucuyu yeniden başlatabilmesi ya da kapatabilmesi için, acpid sunucusunu misafir sistemde kurmalı ve çalıştırmalısınız.

Fedora misafirine root olarak giriş yapın ve ACPI servisini kurup sistem ön yüklenirken açılacak şekilde yapılandırmak için şu komutları çalıştırın:

# dnf install acpid
# systemctl enable acpid

cloud-init’i metaveriyi getirmesi için yapılandırın

Sunucu başlarken çeşitli görevleri yerine getirmek için metaveri servisiyle iletişime geçmelidir. Örneğin, sunucu ssh açık anahtarını almalı ve kullanıcı veri betiğini çalıştırmalıdır. Sunucunun bu işlemleri yaptığından emin olmak için cloud-init paketini kurun.

cloud-init``paketi otomatik olarak açık anahtarı metaveri sunucusundan çeker ve anahtarı hesaba ekler. Fedora misafirin şunu çalıştırarak ``cloud-init kurun:

# dnf install cloud-init

Hesap dağıtımdan dağıtıma değişir. Fedora tabanlı sanal makinelerde, hesap fedora olarak adlandırılır.

cloud-init tarafıdan kullanılan hesap ismini /etc/cloud/cloud.cfg dosyasını düzenleyerek farklı kullanıcı içeren bir satır ekleyerek değiştirebilirsiniz. Örneğin, cloud-init``i ``admin isimli bir hesaba anahtar koyacak şekilde yapılandırmak için , yapılandırma dosyasında aşağıdaki sözdizimini kullanın.

users:
  - name: admin
    (...)

Bölümlerin yeniden boyutlandırılmasına izin vermek için cloud-utils-growpart kurun

Kök bölümün düzgün yeniden boyutlandırılması için, cloud-utils-growpart paketini kurun, bu paket cloud-init kullanarak diskin yeniden boyutlandırılmasını sağlayan uygun araçları içerir.

# dnf install cloud-utils-growpart

Zeroconf rotasını kapatın

Sununcunun metaveri servisine erişebilmesi için, öntanımlı zeroconf rotasını kapatmalısınız:

# echo "NOZEROCONF=yes" >> /etc/sysconfig/network

Konsolu yapılandırın

nova console-log komutunun Fedora’da düzgün çalışması için, şu adımları yapmanız gerekebilir:

  1. /etc/default/grub dosyasını düzenleyin ve GRUB_CMDLINE_LINUX seçeneğini düzenleyin. rhgb quiet alanını silin ve seçeneğe console=tty0 console=ttyS0,115200n8 ekleyin. Örneğin:

    ...
    GRUB_CMDLINE_LINUX="rd.lvm.lv=fedora/root rd.lvm.lv=fedora/swap console=tty0 console=ttyS0,115200n8"
    
  2. Değişiklikleri kaydetmek için aşağıdaki komutu çalıştırın:

    # grub2-mkconfig -o /boot/grub2/grub.cfg
    Generating grub configuration file ...
    Found linux image: /boot/vmlinuz-4.10.10-200.fc25.x86_64
    Found initrd image: /boot/initramfs-4.10.10-200.fc25.x86_64.img
    Found linux image: /boot/vmlinuz-0-rescue-c613978614c7426ea3e550527f63710c
    Found initrd image: /boot/initramfs-0-rescue-c613978614c7426ea3e550527f63710c.img
    done
    

Sunucuyu kapatın

Sunucu içinden, root olarak şunu çalıştırın:

# poweroff

Temizlik (MAC adres ayrıntılarını kaldır)

İşletim sistemi sunucu sürecinde sanal Ethernet kartının MAC adresini /etc/sysconfig/network-scripts/ifcfg-eth0 gibi konumlarda kaydeder. Ancak imaj her ön yüklendiğinde, sanal Ethernet kartı farklı MAC adresine sahip olacaktır, yani bu bilgi yapılandırma dosyasından silinmelidir.

Mac adresi referanslarının silinmesi gibi çeşitli temizlik işlerini yapan virt-sysprep adlı bir araç bulunur. Bir sanal makine imajını yerinde temizler:

# virt-sysprep -d fedora

libvirt alanı tanımını kaldır

Artık imajı İmaj servisine yükleyebileceğinize göre, bu sanal makine imajını libvirt tarafından yönetme ihtiyacınız kalmadı. libvirt’i bilgilendirmek için virsh undefine vm-image komutunu kullanın:

# virsh undefine fedora

İmaj tamamlandı

qemu-img create komutuyla oluşturduğunuz temel imaj dosyası yüklenmeye hazır. Örneğin openstack image create komutuyla /tmp/fedora.qcow2 imajını İmaj servisine yükleyebilirsiniz. Daha fazla bilgi için, python-openstackclient komut listesine göz atın.