Virtualization

Vmware Power CLI Kurulumu, Kullanımı ve Vcheck

PowerCLI, Microsoft Powershell komutlarına benzer yazım tarzı olan, Vmware Vsphere ve ESXi sunucularının yönetimini kolaylaştırmayı hedefleyen bir komut satır aracıdır. Aklınızda bir fikir oluşması için yapabileceklerimize basit bir örnek verirsek, aynı anda bütün sanal sunucularınızı kapatabilir ya da bütün sanal sunucularınızın snapshot larını alabiliriz. Aşağıdaki resimde PowerCLI mimarisini gözükmektedir.

 

 

 

image001

 

 

 

Nesne yönelimli programlamanın bel kemiği olan ve

Powershell ile hayatımıza iyice yerleşen “Pipeline – | ” PowerCLI ile de kullanılabilir durumdadır. Yani bir komutun çıktısı, başka bir komutun girdisi olabilmektedir.

PowerCLI ile şuan için 300 den fazla komut çalıştırabilmekteyiz. Bu komutların listesi ve kullanım biçimleri Vmware tarafından poster şeklinde biz kullanıcılarına sunulmaktadır. Posteri ve PowerCLI uygulamasını buradan indirebiliriz.

 

 

 

image002

 

 

 

PowerCLI Gereksinimleri

 

· İşletim sistemi Gereksinimleri

 

PowerCLI, Powershell mimarisi üzerine inşa edildiği için sadece Windows işletim sistemlerine kurulabilmektedir. Kurulabilen işletim sistemleri Windows 7 Service Pack 1 (32-bit and 64-bit), Windows Server 2008 R2 Service Pack 1 (32-bit and 64-bit) , Windows XP Service Pack 2 (32-bit and 64-bit) and Service Pack 3 (32-bit).

 

Ayrıca kurulum yapılacak bilgisayarda .NET 2.0, 3.0, or 3.5 ve Service Pack ve Windows PowerShell 2.0 kurulu olmak zorundadır.

 

· Desteklenen Vmware Sürümleri

 

Vmware Vsphere PowerCLI 5.0.1 sürümü ile aşağıdaki platformlar yönetilebilir.

 

VMware ESXi 5.0, vCenter Server 5.0, VMware ESX 4.1 Update 2 and vCenter Server 4.1 Update 2, VMware ESXi 4.1 Update 2, VMware ESX 4.0 Update 4 and vCenter Server 4.0 Update 4, VMware ESX 4.0i Update 4, VMware ESX 3.5 Update 5, VMware ESXi 3.5 Update 5, VMware VirtualCenter 2.5 Update

 

Yukarıdaki bilgiler zamanla değişebileceği için güncel bilgileri PowerCLI portalından öğrenebiliriz.

 

PowerCLI Kurulumu

 

PowerCLI kurulum dosyamızı çalıştırıyoruz ve Next ile ilerliyoruz.

 

 

 

image003

 

 

 

Patent bilgilerini Next ile geçiyoruz.

 

 

 

image004

 

 

 

Vmware Lisans Sözleşmesini kabul edip Next ile geçiyoruz.

 

 

 

image005

 

 

 

Eğer VCloud bileşenlerinin de yüklenmesini istersek “VCloud Director PowerCLI” seçeneğini seçiyoruz ve Next ile ilerliyoruz.

 

 

 

image006

 

 

 

“Install” butonuna basarak kurulumu başlatıyoruz.

 

 

 

image007

 

 

 

“Finish” ile kurulumu bitiriyoruz.

 

 

 

image008

 

 

 

PowerCLI Kullanımı

 

· ESXi yada Vcenter sunucusuna bağlanma

 

Her PowerCLI kullanımı öncesi yapmamız gereken ilk işlem ilgili sunucuya bağlanmak olmalıdır. Bunun için PowerCLI komut satırına aşağıdaki komutları yazıyoruz.

 

Connect-VIServer -Server “Sunucu Adı yada IP si”

 

 

 

image009

 

 

 

Bağlantı işini kullanıcı etkileşimi olmadan sağlamak istersek

 

Connect-VIServer -Server “Sunucu Adı yada IP si” -User “Kullanıcı Ismı” -Password “Sifre” komutunu kullanıyoruz. Fakat güvenlik riskini hatırlatmadan geçmek istemiyorum.

 

 

 

image010

 

 

· S
Sunucuda bulunan VM bilgileri

 

Bağlandığımız sunucu tarafından host edilen VM lerin özet bilgilerine ulaşmak için Get-Vm komutunu kullanıyoruz.

 

 

 

image011

 

 

 

· Yukarıdaki bilgileri özeleştirmek istersek “Select” komutunu kullanıyoruz.

 

 

 

image012

 

 

 

· VM lerin açılıp, kapatılması

 

Sunucu üzerindeki herhangi bir VM i açmak için Get-VM “Vm sunucu ismi”| Start-VM komutunu kullanıyoruz.

 

 

 

image013

 

 

Sunucuyu kapatmak içinse Get-VM “Vm sunucu ismi”| Stop-VM –Confirm:$false komutunu kullanıyoruz.

 

 

image014

 

 

 

Bu kapatma yöntemi, fiziksel bir sunucunun güç kablosunu çekmek ile eşdeğer olduğu için gerekmedikçe tavsiye edilmez. Eğer sanal sunucularda Vmware Tools yüklü ise

 

Get-VM “Vm sunucu ismi”| ShutdownGuest-VM –Confirm:$false

 

komutunu kullanmanız tevsiye edilir.

 

Bütün sunucuları aynı anda açmak için

 

Get-VM | ForEach-Object{Start-VM $_.Name}

 

Bütün sunucuları aynı anda kapatmak için

 

Get-VM | ForEach-Object{Stop-VM $_.Name –Confirm:$false }

 

Bütün sunucular kontrollü kapatmak için

 

Get-VM | ForEach-Object{ ShutdownGuest-VM –Confirm:$false}

 

· Datastore içinde bulunan diskler ve bağlı oldukları sanal makinelerin listesini öğrenmek

 

Get-HardDisk -Datastore datastore1 |fl komutunu kullanıyoruz.

 

 

 

image015

 

 

PowerCLI ile yapılabilecek işlemler, sistem yöneticisinin hayalleriyle sınırlıdır. Bu yüzden 300 den fazla komutun nasıl çalıştığını makalede göstermek yerine çok kullanışlı olduğunu düşündüğüm ve tavsiye ettiğim Vcheck scriptini tanıtmak istiyorum.

 

Vcheck için Alan Renouf tarafından hazırlanmış, fakat içerisinde PowerCLI ya destek verenlerinde scriptlerini barındıran ve sanal sunucularımız hakkındaki detaylı bilgileri 50 dan fazla kontrol noktasıyla bize tek bir pencereden sunan güzel bir tool diyebiliriz. Kullanmak için, sistemimizin PowerShell v2, PowerCLI 5.01, Vcenter2.5 minimum gereksinimlerini taşıması gerekir.

 

Vcheck script dosyasını ise www.virtu-al.net/vcheck-pluginsheaders/vcheck adresinden indirebilirsiniz.

 

Vcheck’i sistemimizde kullanmak için öncelikli olarak, script’in genel değişkenlerini tanımlamamız gerekmektedir. Bunun için powershell komut satırına .\Vcheck.ps1 –config yazıyoruz.

 

 

image016

 

 

Sihirbazın bize sormuş olduğu soruları sabırla cevaplandırıyoruz.

 

 

image017

 

 

 

Sisteminizde değişiklik olduğunda veya değişkenlerinizi değiştirmek istediğinizde sihirbazı yeniden çalıştırmak için vCheck anadizini altında bulunan GlobalVariables.ps1 dosyasındaki $SetupWizard =$False bölümünü $tTrue olarak değiştirmelisiniz.

 

 

 

image018

 

 

 

Değişken tanımlama işlemi bittiğinde Vcheck ESX sunucularınıza bağlanmak isteyecek bunun için kullanıcı adı ve şifre bölümüne ilgili kullanıcının bilgilerini giriyoruz.

 

 

 

image019

 

 

 

Kullanıcı adı ve şifre doğru ise Vcheck sistemi taramaya başlayacaktır. Resimdeki kırmızı hata ise Vcheck içerisindeki scriptlerin bazılarının sadece Vcenter ile birlikte çalışabildiğindendir.

 

 

 

image020

 

 

 

Veri toplama işlemi bittiğinde internet tarayıcısında sisteminiz hakkındaki tüm detayları görebileceksiniz. Bu sayfada ayrıntılı olarak sunulan sanal ortamlarınızın durumunu config işlemi sırasında sizin belirttiğiniz sınır değerler ile oluşturulduğu unutulmamalıdır.

 

 

 

image021

 

 

 

Kontrol işlemini günlük ve haftalık olarak Schedule Task Yapmak içinse birkaç basit işlem yapmak gerkiyor. İlk olarak Vcheck – Plugins klasörü altında bulunan “00 Connection Plugin for vCenter.ps1” dosyasını herhangi bir editör ile açıp 26. Satırda bulunan “$VIConnection = Connect-VIServer $VIServer “ satırının sonuna -user “Vcheck” – Pass “Password” parametrelerini ekliyoruz.

 

 

 

image022

 

 

 

Yeni bir txt dosyası oluşturup içerisine aşağıdaki komut yazıp uzantısını bat olarak kaydediyoruz.

 

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -psc “C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\vim.psc1″ -noe ” & ‘C:\vCheck\vCheck.ps1′”

 

Oluşturduğumuz bat dosyasını otomatik çalışması için bilgisayarımızın Task Manager bölümüne giriyoruz ve yeni bir task oluşturuyoruz.

 

 

 

image023

 

 

 

Oluşturduğumuz Task, belirtiğimiz zamanlarda otomatik olarak çalışacak ve raporu config sihirbazında belirttiğimiz Email adresine gönderecektir. Eğer birden fazla kişiye rapor göndermemiz gerekiyor ise GlobalVariables.ps1 dosyasındaki $EmailTo değerine diğer kullanıcıların mail adreslerini eklemeliyiz.

 

 

 

image024

 

Umarım faydalı bir makale olmuştur. Bir sonraki makalemizde görüşmek dileği ile esen kalın.

 

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu