Merhaba;

Bugün değerli bir arkadaşım için bu yazıyı yazıyorum. Umarım bu vesileyle anlatacağım ürünü merak eden herkes bu yazımı okuma fırsatı bulur ve fayda sağlar.

Size bugün ManageIQ ürününden bahsediyor olacağım. ManageIQ, hibrit IT ortamlarını yönetebileceğimiz açık kaynak kodlu bir yazılımdır. Sanal Sistemler, bulut ortamları, konteyner yapılar gibi pek çok farklı ortamı destekler. ManageIQ ile ortamınızı sürekli olarak izleyebilir, son kullanıcılarınıza self-servis oluşturabilir, regülasyonların uygulanmasını sağlayabilir, ortamın performans ve kullanımını verimli hale getirebilirsiniz.

ManageIQ konsola giriş yaptığınızda, sizi “Overview Dashboard” sayfasına getirir. Bu sayfada ortamınızda gerçekleşen olayları, raporlarınızı ve konfigürasyonunu yaptığınız alarmlarınızı görebilirsiniz. Bu sayfada gördüğünüz bilgiler sizin yeni bir teknoloji seçme durumunda kaldığınızda  daha doğru kararlar almanızı sağlayacağı gibi geleceğe dönük sanal makine yönetiminizde de daha doğru öngörülerle aksiyonlar almanızı sağlayacaktır. Sayfanın organizasyonunu “widget”leri (bileşen)  kullanarak yapabilirsiniz. Elbette size daha ilk kurulumda kullanabileceğiniz pek çok “widget” sunmaktadır. “widget” lerin üzerinde yer alan konfigürasyon alanları tıklanabilirdir ve referans ettiği alana/bileşene doğrudan erişebilir, detayları görebilirsiniz. Konsola login olduğunuzda özellikle görmek istediğiniz grafikleri, raporları bu sayfa üzerinde oluşturabilir, özelleştirebilirsiniz. “widget”leri ekleyebilir, silebilir ve taşıyabilirsiniz. Konsola giriş yapar yapmaz gösterge panelinde (“dashboard”) görmek istediğiniz bilgileri konumlandırmak için “widget” ekleyebilirsiniz (“Overview > Dashboard”).

“Overview > Reports” sekmesinden kullanılabilir olan raporları görebilirsiniz. Ürünle birlikte gelen çeşitli kategorilere göre bölümlenmiş pek çok raporu kullanabilirsiniz. Her kategorinin kendine ait alt dizinleri mevcuttur. “Configuration Management”, “Migration Readiness”, “Operations”, “VM Sprawl”, “Relationships”, “Events”, “Performance by Asset Type”, “Running Processes”, “Trending”, “Tenants”, “Provisioning”  kategorilerinde yer alan çeşitli raporlara ulaşabilirsiniz.

İki farklı şekilde rapor üretebilirsiniz. Raporun çalışmasını zamanlayabileceğiniz gibi “Reports” sayfasından rapor üretme butonunu tıklayarakta raporu manüel çalıştırabilirsiniz. Tüm raporlar otomatik olarak kaydedilir ve siz daha sonra bu raporları indirebilir ve analiz edebilirsiniz.

“Chargeback” (“ters ibraz”) özelliği sayesinde, organizasyon veya sistemin sahipliğine göre sanal makine kullanımını ücretlendirebilirsiniz. Bu özelliği kullanabilmeniz için kapasite ve kullanım verisini toplamanız gerekmektedir. “Chargeback” maliyetlerini hesaplamak için ürünle birlikte gelen oranlar olmakla beraber siz kendinize göre oranlar oluşturabilirsiniz.

ManageIQ sunucudan SNMP trap veya e-posta gönderebilmek için “notifier server role”unü kullanılabilir hale getirmeniz ve SMTP e-posta veya SNMP traplerin konfigürasyonunu yapmanız gerekir. ManageIQ’de “alert profile” dediğimiz bir özellik daha var. Bu sayede alarm grupları oluşturabilirsiniz. Bu alarm gruplarını, “cluster”, “datastore”, “host” ve sanal makine seviyesinde atayabilirsiniz.

manageIQ, sanal makine ortamınızı yönetmek için “policy” mantığını kullanır. İki tür “policy” vardır: uyumluluk (“compliance”) ve kontrol. “Compliance” kuralları (policy için kural kelimesini kullandım) ile sanal yapınızı daha güvenli hale getirebilir ve firma tarafından alınmış güvenlik gerekliliklerinize uyulmasını sağlayabilirsiniz. Örneğin, sanal makinelerde kritik olarak belirlediğiniz bir yama (“patch”) yoksa, ilgili sanal makinelerin çalışmasını engelleyebilirsiniz.

ManageIQ, sanal makinelerin nitelikleri üzerinde çalıştırılacak testleri ifade etmek için “conditions” kelimesini kullanır. Bir “condition”, “scope” ve “expression” olmak üzere iki bileşenden oluşur. “Scope”, zorunlu, “expression” ise opsiyoneldir. “Scope”, daha kapsamlı kontroller yapmadan önce kontrol edilen genel bir niteliktir. Örneğin, bir “scope”, işletim sistemini kontrol ederken, “expression”, “scope” de referans edilen işletim sisteminde spesifik bir uygulama veya yama olup olmadığını kontrol eder. “Control > Explorer” sekmeleri takip edilerek “condition” oluşturulur. “Condition” için koşul kelimesini kullanacağım. Koşulu hesapladıktan sonra belirleyeceğiniz aksiyonları yerine getirebilirsiniz. Ürünle birlikte gelen aksiyonlar olmakla beraber siz kendi aksiyonlarınızı da oluşturabilirsiniz.

“Policy profile” dediğimiz kavram, “policy” lerden oluşturulan grubu ifade eder. “Policy profile” ları, “virtual machines”, “providers”, “clusters”, “hosts”, “resource pools”, “replicators”, “pods”, “container nodes” ve “container images” lara atayabilirsiniz.

Ortamınızdaki “cluster” yapıları, “Compute > Infrastructure” sekmesinden görüntüleyebilirsiniz (Şekil 1.).

No alt text provided for this image

Şekil 1. ManageIQ’de “cluster” yapılarının görüntülenmesi.

“Cluster” lar üzerinde “SmartState” analiz çalıştırabilirsiniz. “Cluster” üzerinde tarihsel veriyi toplayabilir ve geçmişteki bir nokta ile karşılaştırma yapabilirsiniz (Compute > Infrastructure > Clusters). ManageIQ ile “cluster” yapıların özelliklerini karşılaştırabilir ve sonrasında çıktıyı, CSV, TXT ve PDF formatında rapor olarak kayıt altına alabilirsiniz. “Cluster” için kapasite ve kullanım grafiklerini görebilirsiniz (Şekil 2.).

No alt text provided for this image

Şekil 2. “Cluster” kapasite ve kullanım grafiği.

“Cluster” yapıların, bilinen en son durumu ile mevcut durumu ManageIQ ile karşılaştırabilirsiniz.

“Compute > Infrastructure” altında buluna “Hosts” sayfasından ortamınızda bulunan tüm “host”ları görüntüleyebilirsiniz. “Virtual machines” sayfasından, ortamınızda bulunan tüm VM’leri görüntüleyebilirsiniz (Compute > Infrastructure > Virtual Machines). ManageIQ, “datacenters”, “clusters”, “resource pools”, “folders” ve “hosts”lar arasında sanal makine migrasyonunu destekler.

Kaynak havuzları (“resource pools”), sanal makinelere CPU ve bellek tahsis etmek için kullanılır.

ManageIQ, VMFS ve NFS veri alanlarından (“datastores”) kapasite ve kullanım verisi toplayabilir. “Datastore”lar üzerinde “SmartState” analiz çalıştırılabilir (“Compute > Infrastructure > Datastores”).

ManageIQ’de olan optimizasyon fonksiyonu, ortamınızdaki kullanım eğilimlerini görmenize olanak sağlar. Ek olarak geleceğe dönük tahminler yapmanıza da imkan verir. “clusters”, “providers” ve “datastores” bazında kaynak kullanımlarını görüntüleyebilirsiniz. Kullanım eğilimi özet raporuna “Overview > Utilization” yolunu takip ederek ulaşabilirsiniz.

ManageIQ’ya “Active Directory” entegrasyonu yapabilirsiniz. “ServiceNow” ile de entegrasyon sağlayabilirsiniz.

ManageIQ  ürününün, Red Hat CloudForms’un “upstream” açık kaynak projesi olduğunu belirtmemde fayda var.

ManageIQ, gerçek-zamanlı veya tarihsel veriyi depolayabilmekte ve işleyebilmektedir. Tarihsel veri kullanılarak oluşturulan eğilim bazlı analitik hesaplamalarla VM’lerin doğru ölçeklendirilmesi için öneriler sunabilmektedir.

ManageIQ ürününün kullandığı “SmartState” analizi patentli bir teknolojidir. Sanal makine, şablonlar, “instance”, Docker konteynerlerde analiz yapabilmektedir. Eklenen, silinen kullanıcı ve grupları belirleyebilir, hangi uygulamaların eklendiğini tespit edebilir, spesifik bir konfigürasyon dosyasının içeriğini veya windows registry’de olan değerleri görüntüleyebilirsiniz.

Gerçek zamanlı performans istatiksel verisi kullanılarak VM’lerde alışık olmadığımız yüksek kullanım oranlarında bizi uyarması için alarmlar tanımlayabiliriz. İlgili alarmların otomotik iş akışları başlatmasını sağlayarak örneğin, uygulamanın daha çok sunucuya ölçeklendirilmesini sağlayabiliriz. Ruby veya Ansible tasklar kullanarak iş akışlarını otomatik hale getirebilirsiniz. Örneğin iş yüklerinin provizyonlanması ve ölçeklendirilmesi yapılabilir. Windows sunucularda uzaktan PowerShell betikleri çalıştırılabilir. Ruby ile RESTful ve SOAP API’lere bağlanılabilir yine sağladığı kütüphanelerle SQL ve LDAP veri tabanlarına bağlantı yapılabilir. Ürünün çekirdeği Ruby ile yazılmış durumda ve veri tabanı olarak PostgreSQL kullanılmaktadır.

ManageIQ, sanal makineler için “CPU usage”, “CPU stats”, “Disk I/O”, “Memory usage” ve “Network I/O” metriklerini raporlayabilir. Bu amaç ile “Capacity & Utilization Collector Server” rolünün kullanılabilir hale getirilmesi gerekiyor. Spesifik bir altyapı bileşeni içinde “Capacity & Utilization” metriklerini kullanılabilir hale getirebilirsiniz.

Elbette arkasında Enterprise destek olduğu için RedHat CloudForms ile ilerlemek daha mantıklı olsa da destek ihtiyacı olmayan veya topluluk desteğinin yeterli olduğu durumlar için ManageIQ’de sahip olduğu özellikler sayesinde hibrit ortamların yönetilmesinde başarıyla kullanılabilir. ManageIQ ürününü Vagrant kullanarak test edebilirsiniz. Vagrant Cloud üzerinden projeye ulaşabilirsiniz. Yine ManageIQ ürününü DockerHub’da mevcut olan projeyle Docker konteyner ortamınızda da test edebilirsiniz. Desteklenen “Public” bulut ortamlarında da (Microsoft Azure, GoogleCloud) ürünü test edebilirsiniz. “Google Storage” üzerinde kullanıma hazır ManageIQ projesine erişebilirsiniz.  RedHat Enterprise Virtualization veya Red Hat Enterprise Linux OpenStack platform ortamınıza da yine ManageIQ ürününü kurabilirsiniz. Benim önerim hangi yöntem kolayınıza geliyorsa, ilgili yöntem ile ManageIQ kurulumunu yapmanız ve üzerinde testler gerçekleştirerek ürünün bu güzel özelliklerini tecrübe etmeniz olur.

Asiye Yiğit – 16 Kasım 2019 Cumartesi

Kaynakça:

https://www.manageiq.org/

https://pemcg.gitbooks.io/mastering-automation-in-cloudforms-4-1-and-manage/content/introduction/chapter.html

Red Hat CloudForms eğitim dökümanları