Windows Sanal Makinelere oVirt Guest Agent Driver Kurulumu ve Yapılandırması

oVirt üzerine Windows bir sunucu kurulurken “Network Interfaces”, “e1000” ve “Disks”, “IDE” olarak gelmektedir. Aksi bir yapılandırma yaparsanız sunucunuz açılmayacaktır. Bu durum ayrıca makinanın performansınıda etkilemektedir. Bu nedenle “Network Interfaces”, “VirtIO” ve “Disks”, “VirtIO-SCSI” yapmalısınız. Böylelikle makineniz düzgün bir performansta çalışacaktır.

Bu yapılandırmayı yapabilmeniz için ise Windows sunucuyu kurduktan sonra oVirt Guest Agent Driver(oVirt-toolsSetup)’ını kurmalısınız. İlk önce oVirt-tools-setup.iso (https://resources.ovirt.org/pub/ovirt-4.2/iso/oVirt-toolsSetup/) dosyasının ilgili versiyonunu indirip, makineye CD Drive olarak bağladıktan sonra tipik *.exe kurulumu gerçekleştirmelisiniz. Kurulum bittikten sonra,

Network ayarını e1000’den VirtIO’ya çekin.

Disk ayarlarını ise IDE’den VirtIO-SCSI yapın.

oVirt Debian/Ubuntu Guest Agent Kurulumu ve Yapılandırması – Sorun Çözüldü

oVirt ortamına kurduğunuz Debian/Ubuntu makineler için aşağıdaki komutu çalıştırarak ovirt-guest-agent servisini kurabilirsiniz.

> sudo apt install ovirt-guest-agent -y

Fakat servis durumunu kontrol ettiğinizde aşağıdaki gibi hata aldığınızı göreceksiniz.

Aşağıdaki yönergeleri izleyerek hataları giderip, servisi sağlıklı bir şekilde çalıştırabilirsiniz.

İlk önce “ovirt-guest-agent.service” servis dosyasını edit edip, “User=root” olarak değiştirelim(servisin root haklarında çalışmasının, güvenlik tarafındaki oluşturabileceği sıkıntılara şimdilik değinmiyorum).

> sudo vi /lib/systemd/system/ovirt-guest-agent.service

User=root

Ardından aşağıdaki komutu çalıştırın.

> systemctl daemon-reload

Akabinde aşağıdaki komutla device’leri listeleyebilirsiniz. Çünkü “ovirt-guest.agent.0” aygıtını kullanacağız.

> ll /dev/virtio-ports/

Şimdi “ovirt-guest-agent.conf” dosyasını aşağıdaki gibi yapılandıralım.

> sudo vi /etc/ovirt-guest-agent.conf

[virtio]
# device = /dev/virtio-ports/com.redhat.rhevm.vdsm
device = /dev/virtio-ports/ovirt-guest-agent.0

Son olarak aşağıdaki komutları sırasıyla çalıştırın. İşlem bu kadar.

> sudo systemctl enable ovirt-guest-agent.service

> sudo systemctl start ovirt-guest-agent.service

> sudo systemctl status ovirt-guest-agent.service

Ovirt Internal Admin Şifresini değiştirme – Changing the Password for admin@internal(ovirt admin@internal password change)

Aşağıdaki komut ile internal admin kullanıcısının detaylarını görebilirsiniz. Yukarıdaki ss’de de durumu gözlemleyebilirsiniz.

> ovirt-aaa-jdbc-tool user show admin

Şifreyi reset’lemek için ise aşağıdaki komutu kullanabilirsiniz. Sorun olması durumunda (–force) parametresini kullanabilirsiniz.

> ovirt-aaa-jdbc-tool user password-reset admin

Ardından Engine servisini yeniden başlatmalısınız.

> systemctl restart ovirt-engine.service

Ovirt/RHEV 4.2 Engine LDAP Yapılandırma – Bölüm 7

Engine login olduktan sonra, aşağıdaki komutla ilgili yapılandırma paketin varlığını kontrol edelim.

> rpm -qa | egrep -i ovirt-engine-extension-aaa-ldap-setup

Eğer paket yoksa aşağıdaki komut ile kurulumu gerçekleştirelim.

> yum install ovirt-engine-extension-aaa-ldap-setup

Şimdi aşağıdaki komut ile yapılandırmaya başlayaşlım.

> ovirt-engine-extension-aaa-ldap-setup

Komutu girdikten sonra aşağıdaki gibi sizden belirtilen çeşitlerdeki LDAP‘lardan bağlantı sağlayacağınız LDAP‘ın ilgili numarasını girmenizi beklemektedir. Ben FreeIPA kullandığım için 6 numarayı seçip devam ediyorum.

Ardından DNS sunucu kullanacakmısınız diye soruyor, single server(1) seçip devam ediyorum. Eğer sizin ortamınızda birden fazla varsa diğer DNS sunucularınızı da belirtebilirsiniz.

startTLS ve Insecure seçip devam ediyorum.

LDAP bağlantısı için belirlediğim kullanıcı ile beraber search user DN bilgilerini EKSİKSİZ ve DOĞRU bir şekilde girip, base DN(fatlan.com gibi)’ide girdikten sonra, yes diyerek tekrar devam ediyorum.

Ardından GUI de görünecek name‘yi (fatlan.com gibi) girip devam ediyorum.

İsterseniz burda test için belirlediğiniz user ile test edebilirsiniz.

Daha sonra Done diyerek işlemleri sonlandırıyorum.

En son olarak Engine servisini restart etmeniz gerekiyor.

> systemctl restart ovirt-engine.service

Ardında Engine GUI de giriş yapabiliriz. Aşağıdaki gibi kullanıcı yetkili değil diye uyarı veriyor, aslında login olabildiniz fakat daha önceden kullanıcıya herhangi bir role atanmadığı için bu uyarıyı veriyor. Local admin ile ilglil kullanıcıya role tanımladığınızda GUI ona göre açılacaktır.

Bölüm 8: http://www.fatlan.com/ovirt-rhev-4-2-engine-ssl-yapilandirma-bolum-8/

Ovirt/RHEV 4.2 Engine Network(NIC) Infrastructure Ekleme ve Yapılandırma – Bölüm 6

İlk bölümdeki görselde, ağ alt yapısını tasarlamıştık ve bu tasarımda network alt yapısını da belirtmiştik. O bölümü hatırlatarak işlemlere devam edelim.

Tasarımda 4 ayrı NIC kullandık;

1. Network interface “management

2. Network interface “storage

3. Network interface “hostnet

4. Network interface “migration

managemetinterface’sini sunucuları kurarken, yönetmek için atamıştık zaten. Ardından sunucuların storage erişmesi, iscsi ve nfs kullanacağımız için nic’in birini de host’ta “storageinterface’sini tanımlayıp erişimlerini yaptık ve storage diskleri ekledik. Yapımızda iscsi ve nfs vlan ağında olduğundan fiziksel interface’ye “storage_iscsi” ve “storage_nfs” adından iki mantıksal vlan interface’yi oluşturduk. Aslında nfs’i vlan olarak Engine tarafında da yapabilirdik fakat iscsi kısmı yapmak zorundayız ki storage’deki lun‘ları host’lara disk olarak ekleyebilelim ve Engine’yi kurabilelim. Engine host üzerinde yapılandırılan networkler üzerinden de erişim sağlayabilir. Bu arada host tarafında nic’leri bonding, vlan ve bridge olarak’ta tanımlayıp kullanabilirsiniz. Aynı şekilde Hosted Engine’de de bonding, vlan yapabiliriz.

hostnet” ve “migrationnic‘lerini Hosted Engine tarafında şimdi beraber yapılandıracağız. “hostnetVM’lerin internete çıkışı ve birbiriyle iletişimi için, “migration”da Vm makineleri hostlar arasında taşıma/göç ettirme için kullanacağız.

Önemli NOT : Bonding hakkında. Bonding yapılandırması host/sunucu tarafında ayrı, Hosted Engine tarafında ayrı fiziksel NIC’ler için yapılandırmalıdır. Çünkü host tarafında yapılandırılan bonding’i Engine görebiliyor ve gösterebiliyor fakat eklediğiniz mantıksal interface’leri atama yaptığınızda kullanmanıza izin vermeyip, eklerken hata veriyor. Kısaca ilgili NIC’ler için host tarafında yapılandırma olduğu için kullanmanıza izin vermiyor. Bu yüzden Engine’de bonding kullanacaksanız ki Engine’de sağ klik ile çok basit bir şekilde eklenebiliyor, ilgili fiziksel nic’lere host tarafında herhangi bir yapılandırma yapılmamış olması gerekiyor. Ben başka bir yapılandırma için iki fiziksel nic’i Engine tarafında XOR protokolü kullanarak çok basit bir şekilde yapılandırarak, esnek bir yapı elde ettim.

Şimdi “hostnet” ve “migrationnic‘lerini Hosted Engine tarafında tek tek yapılandırıp kullanıma hazırlayalım.

Önce mantıksal nic’lerimizi ekleyelim. Biz ilk önce “hostnet”i ekleyip, aktif edeceğiz. Sonra “migration” interfacesini ekleyip, aktif edeceğiz. Bunun için Engine login olduktan sonra “Network/Networks/New” diyerek ekleme işlemine başlıyoruz.

Ardından ilgili Data Center’ı seçip “Name” kısmına interface ismini verin. Network Parameters kısmında yer alan bilgilerde size uygun olan bilgileri de girmeniz gerekiyor. Biz “hostnet”i VM’lerin çıkış interface’si olarak kullanacağımızdan “VM network” parametresini enable ettik. Belirlediğimiz subnet herhangi bir Vlan’a dahil olmadığı için Vlan tag’ini enable işaretlemedik. Sizin belirlediğiniz subnet switch’leriniz de vlan dahilinde ise bu kısımda vlan numarasını belirlemelisiniz. Son olarak OK tıklayıp, ekleme işlemini bitirin.

Ve oluşturduğunu aşağıdaki gibi görelim. Henüz var olan tüm host‘larımıza tanıtmadığımız için aktif değil ve bu yüzden kırmızı görünüyor.

Şimdi sırasıyla “hostnet”i var olan host’larımıza tanıtalım ve aktif etmiş olalım.

Compute/Hosts” sekmesine geldikten sonra ilk host’umuzun üzerine tıklayıp ayrıntılar kısmına girelim. Oradan “Network Interfaces” sekmesine gelip “Setup Host Networks” butonuna tıklayın.

Ardından aşağıdaki ss’den de anlaşılacağı üzere sağdaki Logical Networks’te görünen “hostnetnic’ini sürükleyip, belirlediğiniz ilgili fiziksel nic’e bağlayın.

Yukarıdaki siyah kutucukta görünen kalem işaretini tıkayın ve aşağıdaki gibi ip yapılandırma penceresine gelin, ip yapılandırdıktan sonra,

DNS Configuration sekmesine gelin ve dns ip’sini verdikten sonra OK tıklayın.

Şimdi aynı işlemi ikinci host’umuza yapalım, bizde toplamda iki host vardı siz bütün hostlarınızda yapmalısınız. Şimdi ikinci host’umuzda da “Setup Host Networks” butonuna tıklayın.

Aynı şekilde fiziksel nic’e, logical nic’i bağlayın.

Kalem işaretini tıklayıp ikinci host için ip yapılandırmasını yapalım.

DNS yapılandırmasını yapıp, OK tıklayalım.

Ve “Compute/Cluster/Default/Logical Network” bölümünden mantıksal nic’lerimizi listelediğimizde “hostnet”in yeşil yandığını yani aktif olduğunu görebiliyoruz.

Şimdi sıra geldi ikinci mantıksal interface’miz olan “migrationnic’ine. Aynı şekilde “Network/Networks/New” diyerek aşağıdaki gibi nic’i oluşturalım. Bu kısımda “VM networkenable sekmesini tıklamıyorum çünkü bu interface’yi VM’ler çıkış için kullanmayacak. Tabanda Engine VM’leri migration yapmak için bu nic’i kullancağı için “Name” belirleyip OK tıklıyorum.

Tekrar “Compute/Cluster/Default/Logical Network” listelediğimizde “migrationnic’inin geldiğini fakat kırmızı yani aktif olmadığını görelim.

Yukarıdaki ss’lerde gösterdiğimiz gibi yapınızdaki tüm host’ların tek tek “Setup Host Networks” bölümünden, “migrationinterface’sini fiziksel interface’ye bağladıktan sonra aşağıdaki gibi aktif olacaktır.

NoT2 :migrationinterface’si için ip yapılandırması YAPMIYORUZ yani ip vermiyoruz.

Aslında şu anda nic ekleme işleminiz tamamlandı fakat bu nic’ler için roller atayacağız. Bu roller ilgili logical nic’lere belirli özel iş yükleri atayacak. Şöyle ki “Compute/Cluster/Default” bölümünden “Logical Networks” sekmesine gelin ve aşağıdaki görselden de anlaşılacağı üzere ”Manage Networks” tıklayın.

Ardından aşağıdaki ss’den de anlaşılacağı üzere logical nic’lerimize spesifik roller atayalım. Migration Network rolünü “migrationinterface’sine, Default Route olarak ben “hostnet” kullanmak istediğimden ona atıyorum, diğer iki rol management interface‘sinde kalabilir. OK deyip işlemleri bitiriyorum.

Son olarak nic’leri “Compute/Cluster/Default/Logical Network” listelediğimde nic’lere atanmış rolleri de görebiliyorum. İşlem bu kadar.

NoT3 : Evet işlemlerimiz bitti fakat nic’lerimizin tüm host’larda sağlıklı bir şekilde çalıştığından emin olmak yani sync olduğunu görmek için “Network/Networks/hostnet” bölümü Hosts sekmesi ve “Network/Networks/migration” bölümü Hosts sekmesinden aşağıdaki ss’lerde işaretlediğim kırmızı alanda “Out-of-sync” kısmının aşağıdaki gibi tertemiz olması lazım, aksi halde zaten orada kırmızı bir işaretçi çıkıp size bir sorun olduğunu söylecektir. Böyle bir durumda network yapılandırmalarınızı gözden geçirin, eğer bir sorun yoksa “Sync All Networks” butonunu kullanın.

Bölüm 7: http://www.fatlan.com/ovirt-rhev-4-2-engine-ldap-yapilandirma-bolum-7/

Ovirt/RHEV 4.2 Kurulumu Hostlara NFS Iso/Export Ekleme – Bölüm 5

Ovirt/RHEV yapısında ISO ve EXPORT olarak NFS alan istemektedir.

ISO alanı sanal makinaları kurmak için kullanılacak olan *.iso dosyalarının barındırılacağı alandır.

EXPORT alanı ise sanal makineleri yedekleme, taşıma, kopyalama ya da dışarı aktarma amaçlı kullanılan alandır.

Konuyu daha fazla uzatmadan nasıl yapacağımıza bakalım.

Herşeyden evvel şunu belirtmem gerekir ki NFS alanlarını eklemeden önce Storage’den açtığınız NFS alanlara yetkilendirmeyi doğru bir şekilde yapmalısınız, aksi takdirde NFS alanını eklerken “permission denied” uyarısını alırsınız. Örnek yetkilendirmeyi aşağıdaki ss’de gösterdim.

Şimdi ilk olarak “Storage/Domains” sekmesinden “New Domain” butonuna tıklayın.

Ardından “Domain Function”ı “ISO” olarak, “Storage Type”ı “NFS” olarak aşağıdaki gibi seçip yolu “ip_adresi/dizin_yolu” şeklinde girip “OK” butonuna basın. İşlem bu kadar.

EXPORT alanını da aynı şekilde belirtip “OK” tıklayın. Bu kısımda da işlem tamam.

NoT : Storage alanlarını sıfırdan ekler iseniz “New Domain” butonunu kullanmalısınız. Fakat daha önce eklemiş ve sistemden kaldırmış yada başka bir uygulama tarafından daha önce kullanılmış ise “Import Domain” sekmesini kullanmalısınız. Aksi takdirde hata mesajı alıp, alanı ekleyemeyeceksiniz.

Bölüm 6 : http://www.fatlan.com/ovirt-rhev-4-2-engine-networknic-infrastructure-ekleme-ve-yapilandirma-bolum-6/

Ovirt/RHEV 4.2 Kurulumu Hostlara ISCSI LUN Ekleme – Bölüm 4

Engine login olduktan sonra “Storage” sekmesinden “Domains” bölümüne gidin ve “New Domain” butonuna tıklayın.

NoT : Bu kısımda bizim oluşturduğumuz iscsi lun’lar yeni oluşturulmuş olup, daha önce herhangi bir uygulama tarafından kullanılmamıştır. Biz bu lab ortamı için sıfır lun oluşturduk ve bu yüzden “New Domain” butonunu kullanarak lun ekleme işlemini yapacağız.

Fakat bu lun daha önce herhangi bir uygulama tarafından kullanılmış olsaydı ya da bizim bu Ovirt uygulamamız tarafından da kullanılmış olup herhangi bir nedenle lun silinmiş olsaydı “Import Domain” kısmını kullanarak ekleme işlemini yapacaktık. Çünkü lun daha önce kullanıldığı içinde veri barındırmasa dahi daha önce kullanıldığına dair bilgi saklıyorsa yada sakladığından Ovirt daha önce kullanıldığına dair bilgi verecek yada db den sildim gibi uyarılar verip lun’u eklemeyecektir. Bu nedenle bu tarz durumlarda “Import Domain” kullanılmalıdır, eğer lun sıfır değil ise.

Ardından eklemek istediğiniz lun’lara, bizde bir tane kaldı, “Name” kısmını belirttikten sonra “Add” diyerek aktif edin. Daha sonra “OK” diyerek ekleme işlemini tamamlayın.

Ve “Storage” bölümünden lun’larımızı görüntülediğimizde, geldiğini görebiliyoruz.

Bölüm 5 : http://www.fatlan.com/ovirt-rhev-4-2-kurulumu-hostlara-nfs-iso-export-ekleme-bolum-5/

Ovirt/RHEV 4.2 Kurulumu Hostların Power Management Yapılandırması – Bölüm 3

Hostları ekleme sırasında son kısımlarda aldığımız power management uyarısını bu bölümde ele alacağız. Power management yapılandırması hostlar için ilo ekranına yada host’un konsol ekranına düşmeden kapatıp, açma ve yeniden başlatma gibi özellikleri kazandıracak agent’ı(fences agent) aktif edeceğiz.

Aşağıda görüldüğü üzere hostları listelediğimizde üzerlerinde ünlem(!) işareti var ve power management’ın yapılandırılmadığı uyarısını veriyor.

Şimdi hostları tek tek seçip “Edit” tıklıyoruz. Ardından “Enable Power Managementcheck ettikten sonra, “Add Fence Agent” kısmındaki artı işaretine tıklıyoruz.

Daha sonra sunucuların (ilo, idrac, BMC vs.) ip adresi, kullanıcı ve şifre bilgisini yazıyoruz. Ben “Type” olarak “ipmilan” ile yapılandırıyorum, “option” kısmına da “lanplus=1key value’sini verip, bağlantıyı “Test” ediyorum ve başarılı olduğunu görüyorum. OK ile işlemi tamamlıyorum.

 

Son durum aşağıdaki gibi, OK diyerek tamamlıyorum.

İşlem bu kadar. Artık hostları listelediğinizde ünlem işareti olmayacak ve host için power seçenekleri aktif olacak.

Bölüm 4 : http://www.fatlan.com/ovirt-rhev-4-2-kurulumu-hostlara-iscsi-lun-ekleme-bolum-4/

OVİRT(RHEV) 4.2 Kurulum ve Yapılandırması – Host Ekleme – Bölüm 2

Makalemizin ikinci bölümüyle beraber artık tüm işlemlerimizi hosted engine üzerinden yapacağımızı adım adım göreceğiz. Şimdi sırada ortama hypervisor olarak host ekleme var. Host ekleme işleminin sırasıyla nasıl yapılacağına bakacağız.

İlk olarak engine login olun.

Ardından “Compute – Hosts” kısmına gelin ve “New” butonunu tıklayın.

Daha sonra “General” sekmesinde;

– “Host Cluster”ı seçin, genelde Default olur. Fakat ismini siz daha sonra özelleştirebilirsiniz.

– “Name” ve “Hostname” kısmına host için verdiğiniz domain name’yi girin.

– “SSH Port” bölümüne port numarasını yazın.

– Authentication kısmındaki “Password” kısmına sunucuya login olduğunuz user’ın şifre bilgisini yazın.

Son olarak “Hosted Engine” sekmesine gelin ve “Choose hosted engine deployment action” seçeneğini “Deploy” olarak belirledikten sonra “OK” tıklayın.

Bu kısımda “Power Management” yapılandırılmadığına dair uyarı verecek, “OK” diyerek işlemi başlatın daha sonra nasıl yapılandırılacağına bakacağız. Bu arada “Power Management” yapılandırması Engine üzerinden sunucuyu kapatma, açma ve yeniden başlatma gibi yetenekler kazandırmasına olanak tanıyacak olan bir agent’tir(fences agent).

Kırmızı alanla işaretlediğimiz kısıma tıkladığınızda “Deploy” edildiği sürece tanık olabilirsiniz.

Ve ardından hostları listelediğimizde geldiğini görebiliyoruz. Siz ortamınızdaki tasarımınızda gerekli olan kaynak durumuna göre tüm hostlarınızı aynı yöntemle ortama dahil edebilirsiniz.

Bölüm 3 : http://www.fatlan.com/ovirt-rhev-4-2-kurulumu-hostlarin-powermanagement-yapilandirmasi-bolum-3/

OVİRT(RHEV) 4.2 Kurulum ve Yapılandırması – Bölüm 1

RHEV(Red Hat Enterprise Virtualization) yada Ovirt Açık Kaynak Kodlu KVM temelinde hypervisor olarak kullanılan, ölçeklenebilen sanallaştırma platformudur. İki ürünün temeli aynı fakat Ovirt(https://ovirt.org/) RHEV’in forklanmış hali olup tamamen ücretsizdir.

Konuyu tamamen adım adım ele alan ve bölümlerden oluşan makale serisi ile baştan sona böyle bir sanal bulut ortamını elde edebilmek için Ovirt yapısını inceleyeceğiz. İşlemlere başlamadan önce istediğimiz yapının bir çizgisini yukarıda paylaşıyorum. Kafanızda durum şekillenmesi için çizgiyi paylaştım, siz daha basit yapıda da kurabilirsiniz. Örneğin tek nic yada internal disk gibi.

Node1: 192.168.22.10

Node2: 192.168.22.20

HostedEngine: 192.168.22.15

gibi, engine için ayrı management ip vermek gerekiyor. Çünkü yönetimi engine aracılığı ile yapacağız, bir nevi vcenter gibi düşünebilirsiniz.

İstediğimiz ortamın yukarıdaki gibi olmasını planlıyoruz.

Ovirt’i iki şekilde kurabiliriz.

1. Manuel olarak terminal üzerinden ilk önce CentOS kurup, ardından gerekli paketleri indirip daha sonra da barematel üzerine engine setup ederek yapabilirsiniz.

Manual kurulum linkleri : https://ovirt.org/download/

https://www.ovirt.org/documentation/install-guide/Installation_Guide/

https://www.ovirt.org/documentation/install-guide/chap-Installing_oVirt/

2. Ovirt için hazırlanmış özelleştirilmiş iso paketi ile kurulum gerçekleştirebilirsiniz ki CentOS sunucunun özelleştirilmiş halidir ve repoları ona göre otomatik yapılandırılmış gelir, ayrıca hosted engine vm olarak kurulup yönetim sağlanmaktadır. Biz bu yöntemi kullanarak kurulum gerçekleştireceğiz.

İso paket linki : https://resources.ovirt.org/pub/ovirt-4.2/iso/ovirt-node-ng-installer-ovirt/4.2-2018100407/

İso dosyasını host’lara mount ettikten sonra aşağıdaki karşılama ekranından “Install oVirt Node” diyerek işleme devam edelim.

Aşağıda görüldüğü üzere normal CentOS kurulum gibi Anaconda ekranı, o yüzden buranın üzerinde fazla durmayacağım. Bu bölümün kurulumunu yapıp sunucuyu reboot edin.

NoT1 : Kurulum bittikten sonra gerekli erişimler için hostların network yapılandırmasını yapmalısınız. Update’ni geçebilirsiniz. Bu arada “yum” ile paket kurmak istediğinizde hata alabilirsiniz. Çünkü repolar Ovirt için özelliştirilmiş olacaktır. Onun dışındaki repolar disable gelecektir. Bu yüzden paketlerde kurulum yapamazsanız “yum” komutunu aşağıdaki gibi kullanabilirsiniz. Tek seferlik paket kurulumu için enable modu.

Ayrıca “/etc/hosts” ve “/etc/resolv.conf” dosyalarını yapılandırıp, search domain.com ibaresinide ekleyin. DNS, SSH Keypair ve NTP(ntp olarak chrony servisi kullanılmaktadır, yapılandırma dosyasına ilgili ntp server’ı girdikten sonra servisi yeniden başlatmak yeterlidir) yapılandırmalarının yapılmış olması gerekmektedir.

> yum install –enablerepo=”base” CentOS-Base.repo “paketadı” -y

> yum install –enablerepo=”epel” epel.repo “paketadı” -y

NoT2 : Hosted Engine kurulumunu terminal ekranından da yapabilirsiniz. Fakat biz GUI kullanarak yapacağız. Bu arada HostedEngine storage üzerine kurmak zorundasınız.

Komut satırından kurulum linki : https://ovirt.org/documentation/how-to/hosted-engine/

Devam edelim. Sunucu reboot olduktan sonra aşağıdaki paketi terminal ekranından kurun. Daha sonra GUI ekranında fazlaca beklememiş olursunuz.

> yum install ovirt-engine-appliance -y

Hosted Engine kurulumuna geçmeden önce storage ayarlarını yapmamız gerekiyor. Host’ta saklayacağımız vm ler için iscsi protokolünü kullarak data01 ve data02 adında iki adet lun bağlayacağız, daha sonra HostedEngine bağlanacak. Ovirt’in istediği, nfs protokolü ile de iso ve export adında iki adet volume HostedEngine bağlayacağız. Nfs’leri host’a bağlamak zorunda değilsiniz. Hatta bağlamayın çünkü Nfs’ler HostedEngine bağlanacak. Dikkat etmeniz gereken Nfs’ler için yazma ve okuma haklarının unix için tam olması gerekiyor yoksa HostedEngine bağlanma sırasında “permission” hatası alırsınız.

Konu ile alakalı cause linki : https://support.hpe.com/hpsc/doc/public/display?docId=mmr_kc-0108935

ISCSI’leri terminal üzerinden bağlayacağız çünkü UI tarafında bu işlem yapılamıyor ama daha sonra node’lerin gui’sinde görüntülüyebileceksiniz. Aslında bu protokollerin dışında FC(fiber channel) yada Gluster storage protokolleri de kullanılabilir ama şuan için bizim konumuz dışında.

İscsi yapılandırması:

Storage tarafında ilgili SVMs, LUNs, Volumes ve network ayarlarını yapıp data01, data02, iso ve export bölümlerini açtıktan sonra iscsi’nin hostlara erişimi için “Initiators” ve “Initiator Group” erişimlerini vermelisiniz. Storage tarafına detaylıca girmiyorum konu genişleyip, dağılmaya başlar.

Not3 : Sunucunun “InitiatorName” elde etmek için aşağıdaki komutu kullanabilirsiniz.

> cat /etc/iscsi/initiatorname.iscsi

İscsi hedef tespiti için aşağıdaki komut ile discover işlemini yapalım. İlgili ip’lere bağlı erişimi olan tüm hedefleri listeleyecektir.

> iscsiadm -m discovery -t st -p 10.10.30.5

Çıktı: 10.10.30.5:3260,1030 iqn.1992-08.com.netapp:sn.2626a89cce1111e66c5200a098d9e8ba:vs.18

Şimdi var olan tüm iscsi hedeflerine login olmak için aşağıdaki komutu çalıştırın.

> iscsiadm -m node -l

Ayrıca http://www.fatlan.com/linux-sunucular-uzerinde-iscsi-yapilandirmasi/ adresinden iscsi yapılandırma komutlarına bakabilirsiniz.

Ardından “fdisk -l” ile bağlanan diskleri görüntüleyebilirsiniz.

Daha sonra da “multipath -l” ile de iscsi ile takılan disklerin multipath bağlantısını görüntüleyebilirsiniz.

Not4 : Host tarafında ISCSI bağlantıları için yaptığınız bond, vlan ve diğer network yapılandırmalarından sonra, NetworkManager’ı kapatmanız gerekmektedir. Aksi halde Engine tarafında hatalar alıp, nic kopmalarıyla beraber, ip’nizin kaybolması gibi durumlarla karşılaşabilirsiniz.

Host’ta Datastorage’de işlemleri tamamladıktan sonra HostedEngine kuruluma geçelim, bunun için tabi ilk önce Ovirt host’a login olalım.

Kurulum ekranında network kısmında management için verdiğiniz ip’yi tarayıca da 9090 ile çağırıp işlemlere devam edelim. Örnek olarak 192.168.22.10:9090 yada domain name gibi…

Bu ekran hostun yönetimi için açılan web panelidir. Sunucuyu konsol yerine burdan UI üzerinden rahatça yönetebilirsiniz. Biz HostedEngine kurulumunu bu ekrandan yapacağız. Bu ekrana sunucuya verilen kullanıcı adı ve şifresi ile login olacaksınız.

Aslında bu GUI ekranında terminalde yaptığınız birçok işlemi gerek kalmadan görsel ekranda da yapabilirsiniz. Iscsi bağlantınızı host’larda gerçekleştirdikten sonra bu ekranda da görünecektir, etkileşimli olarak yapılan işlemler yansıyacaktır.

Ovirt node’ye login olduktan sonra Storage ile çalışacağımız için Virtualization – Hosted Engine sekmesine gidip start veriyoruz. Hyperconverged sekmesi ile şuan ilgilenmiyoruz çünkü bu kısım internal diskler ile glusterfs file sistemi yedekli node’ler ile kullanmaktadır. Gluster için; OS in disklerini Raid 1, Gluster‘ın kullanacağı disklerini Raid 5 olarak iki Raid grup yapabilirsiniz.

Bu kısmda hosted engine için yukarıda belirdediğimiz ip’ye karşılık gelen domaini dns sunucumuzda daha önceden tanımlamıştık. Örnek bulut.fatlan.com gibi.

Engine VM FQDN kısmına o domaini yazıyoruz.

Belirlenen ip’yi dhcp’den ya da static olarak verip, gateway ve dns bilgilerini de giriyoruz.

Manage olacak bridge interface’mizide seçtikten sonra host’un root pass bilgisini giriyoruz.

En son olarak virtual CPU ve Memory kısımların da default’ta bırakıp Next ile devam edelim.

Bu kısımda ki Engine Credentials kısmı önemli. Çünkü Bu kısımdan HostedEngine login olabileceğiniz şifreyi belirliyorsunuz.

Notification kısmı şuan için çok zaruri değil, defaultta bırakabilirsiniz daha sonra da değiştirebilirsiniz.

Ardından config’ler hazır halde Prepare VM demenizi beklemektedir. Tıklayıp devam edin.

NoT4 : HostedEngine atadığınız ip gateway’ine ping atabilmelidir ve network’sel erişimde kısıtlı olmamalıdır aksi halde aşağıdaki ss’lerden belirttiğim hataları alırsınız ve çok sizi çok uğraştırır.

Terminalde;

GUI’de;

Prepare VM dedikten sonra aşağıdaki gibi başarılı bir kurulum uyarısı alacaksınız, Next ile devam edin.

Şimdi Engine’nin barınacağı datastore için iscsi ayarlarını yapmamız gerekiyor. Diğer store’leri engine kurulduktan sonra yapacağız.

Storage type iscsi seçip,

Portal ip address kısmına iscsi hedefimizin ip adresini yazıyoruz, eğer hedefinizde user ve şifre varsa onu da girin bende olmadığı için girmiyorum.

Ardından Retrieve Target List butonuna tıklayın.

Retrieve Target List butonuna bastıktan sonra aşağıdaki gibi hedefleriniz gelecektir. Seçiminizi yapıp Next ile devam edin.

Ardından aşağıdaki gibi yeşil Finish ekranı sizi karşılıyorsa Hosted Engine kurulumu başarılı bir şekilde gerçekleştirildi demektir.

Tekrar Hosted Engine deploy ettiğimiz Ovirt Node ekranına dönecek olursak aşağıdaki gibi deploy işleminin başarılı ve sunucunun çalıştığını anlayabiliriz.

Şimdi kurduğumuz hosted engine login olalım. Default kullanıcı adı “admin”, password de deploy sırasında verdiğiniz şifre olacak.

Artık bundan sonra ki işlemlerimize hosted engine’de devam edeceğiz. Datacenter ekleme, Cluster ekleme, Host ekleme, Storage ekleme, Vm oluşturma gibi vesaire işlemleri bu ekranda yapacağız.

Bölüm 2 : http://www.fatlan.com/ovirtrhev-4-2-kurulum-ve-yapilandirmasi-host-ekleme-bolum-2/

KVM – qcow2 Disk Dosyası Boyutunu Küçültme (Reduce – Shrink Qcow2 Disk Files)

Şimdiki yazımızda KVM hipervisor katmanında guest’ler(vm – sanal makineler) için başınıza gelebilecek bir durumdan bahsedeceğiz. Malumunuz KVM hostlarınızda disk dosyalarınız(qcow2) diskte belli bir alanı kaplamaktadır. Fakat zamanla guestteki disk alanı hosttaki barındığı disk alanını doldurup hatta üzerinede çıkabilmektedir. Aslında VM diski filesystem tabanında düzenli alanlarla kullanmadığı yada dağınık yazdığı için yani bu durum adreslemeyle alakalı; dolu göstermektedir. Aslında windows’ta defrag yöntemi gibi diyebiliriz. Bu durumda sanal makine otomatik olarak “Pause” duruma düşecek ve hizmet veremeyecek duruma gelecektir. Bu duruma düşmeden yada düştükten sonra aşağıdaki yöntemlerle qcow2 disk dosyalarını boyutunu hipervisor katmanında aslında kullanılmadığı halde kullanıyor gibi gösterdiği alanları yeniden düzenleyerek küçültecektir.

İlk yöntem olarak “virt-sparsify” komutunu kullanarak etkili ve verimli bir şekilde disk dosyanızın boyutunu küçültebilirsiniz.

NoT1 : “virt-sparsify” komutunu kullanabilmek için libguestfs-tools paketini öncesinde kurmalısınız.

NoT2 : İşlemleri vm kapalıyken yapın.

İşlem yapılmadan önce aşağıdaki komutla disk dosyasının boyutunu görelim.

> du -ha

Ardından “virt-sparsify” komutu ile istediğimiz küçültme işlemini gerçekleştirelim.

> virt-sparsify –in-place diskdosyanız.qcow2

Daha sonra tekrar “du -ha” komutunu çalıştıralım ve boyuttaki azalmayı görelim.

Ikinci yöntem olarak gene “virt-sparsify” komutunu convert yöntemi ile kullanalım.

> virt-sparsify diskdosyanız.qcow2 –convert qcow2 yeniisimdiskdosyanız.qcow2

Sonra “du -ha” komutu

Son olarak üçüncü yöntem ise,

Aşağıdaki yöntem ile Guest’in içinde “dd” komutu kullanarak kalan boş alana “zero” basıyoruz.

> dd if=/dev/zero of=/MyDump

Daha sonra MyDump dosyasını siliyoruz.

> rm -f /MyDump

Son olarak “qemu-img” komutu ile işlemi gerçekleştiriyoruz ama öncesinde fırsatınız varsa disk dosyasının yedeğini almanızda fayda var.

> qemu-img convert -O qcow2 ilgilidosyaismi.qcow2 yeni_ilgilidosyaismi.qcow2

Kaynaklar

http://libguestfs.org/virt-sparsify.1.html

https://pve.proxmox.com/wiki/Shrink_Qcow2_Disk_Files

How to install KVM on Ubuntu 16 – Ubuntu üzerine KVM kurulumu, Yapılandırması ve Sanal Makine oluşturulması

KVM Çekirdek tabanlı sanal makine Linux çekirdeği için geliştirilen ve onu bir üstsisteme dönüştüren bir sanallaştırma altyapısıdır.

Kurulumdan önce sunucumuza login olup, cpu muzun destekleyip desteklemediğini anlamak için aşağıdaki komutlar yardımıyla cpu bilgilerini kontrol edelim.

Bu komutun çıktısı olarak “CPU(s):” değeri 0 ise dekteklemiyor, 1 veya 1 den fazla bir değer ise destekliyor manasına gelir.

> egrep -c ‘(svm|vmx)’ /proc/cpuinfo

yada

> lscpu

Aşağıdaki komutla da çekidek modüllerinin yüklü olup, olmadığını kontrol edebilirsiniz.

> lsmod | grep kvm

Şimdi kuruluma geçebiliriz. Aşağıdaki komut ile gerekli tüm paketleri kurup, KVM ortamımızı hazır hale getirelim.

> sudo apt-get install qemu-kvm libvirt-bin bridge-utils virt-manager

Yukarıdaki kurulum komutundan sonra sorunsuz bir kurulum gerçekleştiğini, aşağıdaki komutla doğrulayın.

> kvm-ok

Ardından sunucuyu reboot edin.

> brctl show komutuyla da sonradan gelen sanal interface(NIC) i görüntüleyebilirsiniz.

Default’ta Virtual Machine(qcow2) lerin saklandığı dizindir.

/var/lib/libvirt/images/

Not1 : Eğer qcow2 formatında ki diskin yerini bilmiyorsanız aşağıdaki komut(komut ilgili vm in disklerini bulunduğu dizin ile beraber listeler) size nerde olduğunu söyleyecektir.

> virsh domblklist Ubuntu18

Default’ta Virtual Machine images lar için, kurulum iso larının saklandığı dizindir.

/var/lib/libvirt/boot/

Default’ta Virtual Machine özelliklerinin(ram,cpu,disk vs.) xml formatında tutulduğu yerdir.

/etc/libvirt/qemu

Not2 : Aşağıdaki komut ise ilgili makinanın xml formatında tutulduğu özellikleri(ram,cpu,disk vs.) ekrana bastırır.

> virsh dumpxml Ubuntu18

Aşağıdaki iki komutla da mevcuttaki sanal makinaları görüntüleyebilirsiniz.

> virsh -c qemu:///system list

yada

> virsh list –all

Virtual Machine lerinizi GUI olarak yönetmek, oluşturma ve silme gibi işlemler için virt arayüzünü kullanabilirsiniz. Komut aşağıdaki gibidir.

NoT3 : Bunu yapabilmek için öncesinde sunucuya ssh bağlantısı yaparken, -X parametresini kullanarak bağlanmalısınız(ssh -X root@192.168.1.100). Ayrıca Windows (Putty de x11 enable edilmelidir) için Xming uygulaması, Mac için ise Xquartz uygulaması kurulu ve çalışır olması gerekiyor.

NoT4 : Bu arada bir bilgi daha vermem gerekir. Eğer Linux kullanıcısı iseniz yani client makinanız Linux ise sunucuya virt-manager paketini kurmadan, client makinanızda virt-manager var ise ordan File-Add Connection diyerek sunuya bağlanıp yönetebilirsiniz.

> sudo virt-manager

Yada sunucuya ait konsolu direk olarak aşağıdaki komutla alabilirsiniz.

NoT5 : Bunu yapabilmek için öncesinde kullanıcı makinasına virt-viewer paketini kurmalısınız(ubuntu/debian için ’apt install virt-viewer’, Redhat/CentOS için ‘yum install virt-viewer’).

> sudo virt-viewer -c qemu:///system Ubuntu18

Komutlar aracılığı ile sunucuyu yönetimi için aşağıda bir kaç komut paylaşacağım.

Sunucuyu başlatır.

> virsh start Ubuntu18

Sunucuyu kapatır.

> virsh shutdown Ubuntu18

Sunucuyu yeniden başlatır.

> virsh reboot Ubuntu18

Sunucunun özelliklerini değiştirmek için kullanılır(xml dosyasını değiştirir).

> virsh edit Ubuntu18

Sununun barındığı host açıldığında, bu vm de otomatik olarak başlatma seçeneğidir.

> virsh autostart Ubuntu18

Sununun barındığı host açıldığında, bu vm de otomatik olarak başlatma seçeneğini devre dışı bırakır.

> virsh autostart –disable Ubuntu18

Şimdi “virt-install” komtuna bakalım, bu komut aracılığı ile komut satırı üzerinden makine oluşturabilirsiniz. Alltaki komutta örnek komut ile bu işlemi sağlayabilirsiniz. Ben bir çok parametreyi kullandım ama siz tüm parametleri kullanmak zorunda değilsiniz. Zaten kullanmadığınız parametreler yerine default değerler atanacaktır. Tabi sonrasında siz bu değerleri değiştirebilirsiniz. Komutu yürüttükten sonra gui açılıp size kuruluma yönlendirecektir.

> sudo virt-install –virt-type=kvm –name ubuntu-cli –ram 2048 –vcpus=2 –os-variant=Ubuntu16.04 –cdrom=/var/lib/libvirt/boot/ubuntu-18.04-live-server-amd64.iso –network=bridge=eth0,model=virtio –graphics spice –disk path=/var/lib/libvirt/images/ubuntu-cli.qcow2,size=40,bus=virtio,format=qcow2

Şimdi de “virt-clone” komutundan bahsedelim. Adında da anlaşılacağı üzere clone almak için kullanılan komuttur. Kullanımı aşağıdaki gibidir. Fakat vm kapalı durumda iken clone alabilirsiniz, yoksa uyarı verecektir. “Clone ‘Ubuntu18.clone’ created successfully.” uyarısını almalısınız.

> virt-clone –original=Ubuntu18 –name=Ubuntu18.clone –file=/var/lib/libvirt/images/Ubuntu18.clone

Aşağıdaki komut ise vmdk formatındaki bir vm i qcow2 formatına çevirip KVM host unuzda çalıştırmanızı sağlar.

> qemu-img convert -O qcow2 ubuntu.vmdk ubuntu.qcow2

Bir sonraki makalemizde KVM ortamında nasıl yedek alıp sonra aldığımız o yedeği nasıl geri yükleyip, çalışır hale getireceğiz ona bakacağız.

Centos Clone Sonrası Yapılması Gereken İşlemler (bringing up interface eth0 device eth0 does not seem to be present delaying initialization)

VMWare ESX/ESXİ ortamınızda CentOS sunucular için Clone aldığınızda aşağıda belirttiğim bir kaç basit adımı yapmanız gerekmektedir. Eğer bu işlemleri yapmayı atlarsanız network adaptörünüz up duruma geçmeyecektir ve aşağıdaki hatayı alacaksınız. Diğer bir değişle aşağıdaki hatayı alıyorsanız bilinki o makine clon bir sunucudur ve muhtemelen aşağıdaki adımlar atlanmıştır.

Hata : “bringing up interface eth0 device eth0 does not seem to be present delaying initialization

bringing up interface eth0 device eth0 does not seem to be present delaying initialization

Yapılması gerekenler ise;

1. rm komutu ile 70-persistent-net.rules dosyasını silin. Bu dosya ethetnet kartınızın bilgilerinin saklandığı dosyadır. Örnek çıktı aşağıdaki gibidir.

// # PCI device 0x14e4:0x1680 (tg3)

SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”b5:ac:6c:84:31:r5″, ATTR{dev_id}==”0x0″, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”eth0″ //

# rm /etc/udev/rules.d/70-persistent-net.rules

2. vi yada alternatif bir editör ile network(ip,subnet,gateway,hwaddr) ayarlarının bulunduğu dosyadan HWADDRESS adres satırını silin.

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

3. Sunucunuzun hostname‘ini değiştirin

hostname

Tüm bu işlemleri yaptıktan sonra sunucuyu reboot edin ve işlem tamamdır ve ayrıca hata da kaybolacaktır. Tabi clone sunucuda ip vs. değiştirdiğinizi kabul ediyorum. =)

VirtualBox kullananlar varsa eğer, clone alırken aşağıdaki gibi “Reinitialize the MAC address of all network cards” seçeneğini check(aktif) ederse mac adresi, clone sunucu için otomatik olarak değişecektir ve yukarıdaki 1. seçenek otomatik olarak yapılmış olacaktır. VirtualBox için 2 ve 3 seçeneği yapıp restart edebilirsiniz.

cemacde

RVTools Nedir, RVTools Kurulumu Ve RVTools Kullanımı

RVTools Vmware ortamında VCenter’a bağlanıp ortamınız, hostlarınız, sanal sunucularınız daha doğrusu tüm sanallaştırma platformunuzun yapısı hakkında bilgileri rapor dökümü olarak elde edebileceğiniz ücretsiz bir yazılımdır.

Programı ve güncel versiyonunu http://www.robware.net/ adresinden indirebilirsiniz. Şimdi kurulumuna bir göz atalım.

İndirdiğimiz güncel versiyonlu(3.8) RVTools uygulamasını çift tıklayarak kuruluma başlayalım.

rvt2

Ardından ‘I Agree’ seçip Next ile devam edelim.

rvt3

Tekrar Next tıklıyoruz.

rvt4

Kurulum lokasyonunu belirledikten sonra sadece kendi user’ınız için yada tüm user’lar için seçip Next ile devam ediyoruz.

rvt5

Tekrar Next diyerek kurulumu başlatıyoruz.

rvt6

Ve Close diyerek kurulum işlemini sonlandırıyoruz.

rvt7

Desktop(Masaüstü)’ta oluşan icon’u tıklayıp programı başlatalım.

rvt8

Çıkan Login ekranında VCenter’ınızın IP adresini yada DNS kaydı girilmiş ise domain name yazıp, VCenter’da yetkilere sahip kullanıcı adı ve şifreyi yazarak login tıklayarak raporlamayı başlatıyoruz.

rvt9

Aşağıdaki screenshot’tan anlaşılacağı üzere raporlamayı arka planda başlattı ve bu şekilde kullanıcı bilgilendiriliyor. Tabi işlem biraz sürecektir.

rvt10

Son olarak görüldüğü gibi tüm yapı ile ilgili bilgileri rapor halinde elde ettik, son olarak File menüsünden Excel çıktısı olarak Export edip gerekli inceleme ve işlemleri devam ettirebiliriz.

rvt11

Unable to connect to the MKS

Bilindiği üzere VMware vSphere Client ile consol aracılığı ile sanal makinaları yönetip gerekli işlemleri yapabiliyoruz. Fakat MKS(Mouse Keyboard Screen) denen bir çeşit hata ile karşı karşıya kalma ihtimaliniz olabilir. Nedir bu hata derken şöyle başlayalım MKS ile devamında bir kaç çeşit hata ile dönebilir. Aşağıda screenshot ile paylaştığım gibi yada simyah ekranda bekleyip kalıyor ve sistem arayüzü gelmiyor. Sorunun nedeni bir çok neden olarak algılayabilirsiniz fakat genelde ana neden DNS sorunudur. Yani çalıştığınız makina VMware ESX ya da ESXi hostlarınızın ismini çözemediğinden kaynaklanıyor.

Genelde dönen hatalar aşağıdaki gibidir.

  • Error connecting: Host address lookup for server <SERVER> failed: The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for Do you want to try again?
  • Error connecting: cannot connect to host <host>: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. Do you want to try again?
  • Error connecting: You need execute access in order to connect with the VMware console. Access denied for config file.
  • Unable to connect to MKS: failed to connect to server IP:903.

mks1

mks2

Sorunun en basit çözümü olarak hostlarınıza(FQDN) ve VCenter sunucularınıza karşılık gelen IP adreslerini HOST dosyası içine yazarak giderebilirsiniz. Ben bu yöntemle sorunu çözdüm tabi onaylı bir yöntem olmamakla beraber yapılan bu işlem sadece o makina için geçerli olacaktır. Vmware bununla alakalı yayınladığı KB leri aşağıda paylaşıyor olacağım.

DNS, FQDN ve HOST dosyası nedir?

mks3

192.168.2.20 esxhost1

192.168.2.21 esxhost1.yourdomain gibi…

Knowledge Base

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=749640

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2046356

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2115126

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2032016

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=749640