vRealize Automation – Customize Service Requests

tarafından 4 Şubat 2015 tarihinde VMware, vRealize Automation Center kategorisine yazıldı.

Merhaba,

Eğer organizasyonunuz büyük ise, virtual machine taleplerini yapan kullanıcılar bazı virtual machine’leri farklı storage’da, farklı network’de veya farklı bir datacenter’da çalıştırmak isteyebilir. Aslında vRealize Automation ile çok farklı işlemler yapabilirsiniz. Örneğin sizin bir departmanınız var ve bu departman için Reservation oluştururken belirli port group’ları ve datastore’ları atadınız. Kullanıcının request edeceği makinanın hangi datastore’da ve hangi network’de çalışacağını, kullanıcıya seçtirebilirsiniz. Bu işlem yanlız okadar basit bir iş değil bunuda belirteyim.

Öncelikle yapacağımız işlemi kısaca göstermek istiyorum.

1

Bu makale’nin sonunda, kullanıclar bir virtual machine talep ettiğinde yukarıdaki gibi ekran ile karşılaşacaklar. Yani datacenter’ı seçip buna bağlı olarak datastore’u ve network’u ayrı ayrı seçebilecekler. Blueprint’i publish edip service oluşturduğunuzda sadece virtual machine talebinde bulunabiliyorsunuz. Yukarıdaki gibi opsiyonlar karşınıza çıkmıyor.

Blueprint oluşturulduktan sonra virtual machine talebi için aşağıdaki link’i incelermisiniz.

http://www.tayfundeger.com/vrealize-automation-part-8-create-and-publish-blueprints.html

2

Yapıcağımız işlem aslında temel anlamda basit. Virtual machine taleplerini oluduğu gibi kullanıcılara bırakacağız. Örneğin sizin 2 farklı lokasyonunuz var. Bunlardan biri Location A diğeri ise Location B. Kullanıcı virtual machine talebinde bulunurken Lokasyon olarak Location A’yı seçerse, Location A ‘da bulunan datastore’lar ve network’ler karşısına çıkacaktır.

İlk olarak Location oluşturmaktan başlayalım. Daha sonra adım adım zaten diğerlerinide yapacağız.

3

Compute resource altında bulunan location bölümünde default’da London ve Boston yazar. Siz bu bölümü değiştirmek isteyebilirsiniz. Mesela burada oluşturduğunuz Compute Resource Istanbul lokasyonunda oyüzden Istanbul’un gözükmesini istersiniz doğal olarak. Bunu değiştirmek için; IAAS için kurmuş olduğumuz makinaya login oluyoruz.

C:\Program Files (x86)\VMware\vCAC\Server\Website\XmlData

Yukarıdaki klasör içerisinde yer alan DataCenterLocations isimli xml’i açıyoruz.

4

Notepad ile açtığımız xml dosyasında ilgili yerleri değiştirdikten sonra save diyerek çıkıyoruz. Compute Resources bölümünde Location bölümünü tekrar kontrol ettiğinizde yazmış olduğunuz bilgilerin geldiğini göreceksiniz. Eğer Location bilgileri yanlış geliyor ise VCAC servisini restart etmeniz gereklidir.

Ben Compute Resource bölümünde sadece Istanbul’u seçtim. Çünkü sadece 1 tane Compute Resource’um var. Compute Resource bölümünde Location’ı ayarladıktan sonra işlemlere devam edebiliriz.

Öncelikle iaasadmin kullanıcısı ile vRealize Automation’a login oluyorum. Infrastructure > Blueprints > Propertly Dictionary bölümüne giriş yapıyoruz. Kullanıcıların virtual machine talebinde bulunurken karşılarına seçeneklerin çıkması için bu bölümde Definitions ve Layouts belirlememiz gerekiyor.

5

New Property Definition butonu ile ilk Definition’u oluşturmaya başlayalım. İlk olarak Location’ı ekleyeceğiz. Vrm.DataCenter.Location tag’ı ile oluşturacağımız location bilgisinde, yukarıdaki xml ‘e yazmış olduğumuz bilgileri kullanacağız.

Name: Vrm.DataCenter.Location
Display Name: Select a DataCenter (Request ekranında gözükecektir.)
Description: Herhangi bir description yazabilirsiniz.
Control Type: DropDownList
Required: YES (checked)

Yukarıdaki gibi bilgileri yazdıktan sonra sol tarafta yeralan yeşil OK butonu ile işlemi tamamlıyoruz. İşlemi tamamladıktan sonra oluşturduğumuz Property Definition’ın yanında yer alan edit butonuna basıyoruz.

6

New Property Attribute butonu ile yeni bir  Property Attribute ekliyoruz.

Type: ValueList
Name: Vrm.DataCenter.Location
Value: Istanbul, Bolu (Burada belirteceğiniz değerler DataCenterLocations.xml dosyasındaki değerler ile uyuşmalıdır. Value bölümünde belirteceğiniz isimler Request ekranında açılır menü olarak gözükecektir.)

Location’ı belirledikten sonra şimdi Storage’ı belirleyeceğiz.

New Property Definition bölümünden yine bu işlemi gerçekleştireceğiz. Bu işlemi gerçekleştirirken VirtualMachine.Storage.Name tag’ını kullanacağız. Bunu yapmamızdaki amaç kullanıcının virtual machine talebinde hangi datastore’u kullanmasını sağlamaktır. Tabi burada şöyle bir durumda var biz sadece datastore’ları belirtmeyeceğiz. Kullanıcı location’ı seçtikten sonra o location’a ait datastore’ları seçebilmesi gerekiyor. Buyüzden  burada reservation kısmını dikkatlice kontrol etmek gerekiyor.

Benim ortamımda sadece birtane Compute Resource var. Bu Compute Resource altında 2 tane reservation oluşturdum. Bunlardan birtanesi Finance diğeri ise HR. Ben Finance reservation’u üzerinden işlem yapacağım.

9

Ben Finance reservation’una 3 tane datastore için izin vermişim. Bu 3 tane datastore’u not ediyoruz.

Nexenta-DS1

Nexenta-DS2

Nexenta-DS3

Datastore isimleri doğru birşekilde alın çünkü bunları Property Dictionary’a tanımlayacağız.

7

Infrastructure > Blueprints > Property Dictionary  bölümüne giriyoruz.

Name: VirtualMachine.Storage.Name
Display Name: Select Desired Storage
Description: Enter something descriptive
Control Type: DropDownList
Required: YES

Yukarıdaki gibi dolduruyoruz ve yeşil checkbox ile yaptığımız işlemi onaylıyoruz. Onayladıktan sonra hemen yanında bulunan Edit butonuna basıyoruz.

10

New Property Attribute butonu ile yeni bir  Property Attribute ekliyoruz.

Type: Relationship
Name: Vrm.DataCenter.Location
Value: Vrm.DataCenter.Location

Relationship kullanmamızın sebebi ise, datastore’u bizim seçmiş olduğumuz Location’a göre getirmesini istediğimiz içindir. Yeşil checkbox ile yaptığımız işlemi onaylıyoruz.

Asıl en önemli ve uğraştırıcı bölüm bundan sonra başlıyor. Datastore’ların bağlı olduğu location’ları xml’e dökmemiz gerekiyor. Bunun için normalde uzun uzun kod yazmamız gerekiyor ama aşağıda paylaşacağım excel sayesinde çok fazla uğraşmayacaksınız 🙂

http://www.tayfundeger.com/Relationship-generator-1.0.1.xlsm

Yukarıdaki dosyayı download ediyoruz ve açıyoruz.

11

Yukarıda görüldüğü gibi sadece filter ve value değerlerini kendinize göre düzenleyin. Düzenlemeyi tamamladıktan sonra Run butonuna basın. İşlem tamamlandıktan sonra Output bölümünde çıkan yazıyı kopyalayın.

New Property Attribute butonuna basıyoruz ve aşağıdaki değerleri yazıyoruz.

Type: ValueExpression
Name: Storage
Value: [Excel dosyasının Output bölümünde çıkan veriyi yapıştırın.]

Excel’e işlediğiniz datastore ismine dikkat edin çünkü buraya eklediğiniz datastore ismi, sizin reservation’da belirlediğiniz datastore’lara map’lenicektir. Eğer yanlış bir isim yazarsanız zaten Request aşamasında hata alırsınız.

Ok butonu ile işlemi bitiriyoruz.

Property Dictionary sayfasında New Property Definition seçeneğine basıyoruz.

12

Name: VirtualMachine.Network0.Name
Display Name: Select Desired Network
Description: Select Desired Network (Başlığı istediğiniz gibi değiştirebilirsiniz)
Control Type: DropDownList
Required: YES

Yeşil checkbox ile yaptığımız işlemi onaylıyoruz. Onayladıktan sonra hemen yanında bulunan Edit butonuna basıyoruz.

13

New Property Attribute butonu ile aşağıdaki gibi ekliyoruz.

Type: Relationship
Name: Vrm.DataCenter.Location
Value: Vrm.DataCenter.Location

Yukarıdaki değerleri ekledikten sonra Excel’imizi yine açıyoruz ve Reservation’a atadığımız network kartlarının bilgisini yazıp tekrar RUN butonuna basıyoruz. Output’da çıkan değeri kopyalıyoruz.

Type: ValueExpression
Name: Network
Value: [Excel dosyasının Output bölümünde çıkan veriyi yapıştırın.]

Yukarıdaki işlemleri tamamladıktan sonra yeşil checkbox butonuna basıyoruz ve OK butonu ile buradan çıkıyoruz.

Create a Property Layout butonuna basıyoruz ve yeni bir Layout ekliyoruz.

14

Request ekranında olacak sıralamayı seçiyoruz. Datacenter mı, storage mı, network mu üstte gözükecek onu Layout kısmından belirliyoruz. Yukarıdaki örnekteki gibi yapabilirsiniz.

15

Oluşturduğumuz Layout’un yanında ki edit butonuna basıyoruz. Hangi verinin yukarıda gözükmesini istiyorsanız onu burada sıralayabilirsiniz. Gerekli şekilde doldurduktan sonra OK butonu ile çıkıyoruz.

16

Oluşturmuş olduğumuz yani publish ettiğimiz blueprint‘in içerisine giriyoruz. ve Properties bölümünde yer alan Custom properties sekmesini yukarıdaki gibi dolduruyoruz. Sadece Layout değerinde Prompt User No olacaktır.

17

İşlemleri tamamladıktan sonra finance user’im ile vcac’a login oluyorum ve Request ekranını açıyorum. Oluşturmuş olduğum parametreler karşıma geliyor. vRealize Automation’da yapabilecekleriniz aslında hayal gücünüz ile sınırlı. Sadece dikkatli araştırma yapmak ve bunları uygulamak gerekiyor.

Umarım faydalı olmuştur.

İyi çalışmlalar.

 

Bu yazı blog üzerinde Tayfun DEĞER tarafından paylaşılmıştır. 2009 yılında açılan blog kısa zaman içerisinde büyük bir izleyici kitlesine sahip olmuştur.Tayfun DEĞER danışmanlık ve eğitimler vermektedir. vExpert 2013-2015, VCP5, VCP5-DT, VCP-Cloud ve MCSE sertifikalarına sahiptir.Twitter 'dan @tayfundeger veya RSS ile sitedeki değişiklikleri takip edebilirsiniz.