Azure Resource Graph Kullanımı – Part 2
  1. Anasayfa
  2. Haberler

Azure Resource Graph Kullanımı – Part 2

0

Yazımızın ilk bölümünde Azure Resource Graph servisini kavramaya çalıştık. Şimdi ise örnek sorgulamalar yaparak, bunları detaylandırmaya ve uygulamaya geçelim. Örnek yapabilmek için şu şekilde bir senaryomuz olduğunu varsayalım; organizasyon içerisinde ortalama `500~` kadar Azure Subscription olduğunu ve bu ortamın bir kişi tarafından yönetildiğini düşünün. Bizden istenen ise tüm storage account hesaplarını listelemek.

Yukarıdaki talep edilen bilgiyi almanın birçok yöntemi var daha önce bunlardan bahsetmiştik. Dilerseniz bu bilgiyi Azure Portal üzerinden alabilir veya PowerShell ile tüm abonelikleri tek tek gezip `Get-AzStorageAccount` cmdlet ile toplama şansına sahip olabiliriz. Fakat Azure Resource Graph Query ile bunu yapmak çok daha kolay ve şimdi bunu deneyimleyeceğiz.

Storage hesaplarını listelemek

resources 
| where type =~ "Microsoft.storage/storageaccounts"

Resim-1

Yaptığımız yukarıdaki örnekte **resources** tablosu içerisinde bulunan ve tipi storageAccounts ile aynı olanları getirmesini istedik. Filtreleme için `where` operatörünü kullandık ve ilgili resource tipine eşit ise bize tüm storage hesaplarını döndürmesini istedik. Unutmayın ki sadece `Reader` hakkımız olan storage hesaplarını listeleyebiliriz. Örneklerimizi çoğaltalım.

Public IP Addressleri listelemek

resources
| where type =~ "microsoft.network/publicipaddresses"
| project name, properties.ipAddress

Resim-2

Bu sefer farklı bir örnek ile devam edelim. Abonelikler içerisinde bulunan tüm Public IP Adreslerinin listelenmesini talep ediyoruz. Bunu listelemek için yukarıdaki `KQL` sorgulaması yeterli olacaktır. Yukarıda bulunan sorgulama cümlesini biraz daha genişletmek istiyorum. Bu sefer `summarize` operatörünü kullanıp bir Resource Map oluşturmaya çalışalım ve sonucu beraber görelim.

resources
| where type =~ "microsoft.network/publicipaddresses"
| project name, properties.ipAddress, location
| summarize count() by location

Resim-3

Örnekte çıkan sonuçta gözüktüğü gibi çok kolay bir şekilde Public IP Adreslerimizi listeledik. Farklı bir örnek ile hız kesmeden devam edelim.

Virtual Machine boyutuna ve lokasyonuna göre sıralamak

resources
| where type =~ 'microsoft.compute/virtualMachines' 
| summarize count() by tostring(properties.hardwareProfile.vmSize), location

Sorgul cümlesinin göz gezdiridignizde yine aynı summarize ve count fonksiyonunu kullanarak virtual machine özelliginde tutulan `vmSize` niteliğine göre yaptığımızı fark edeceksiniz. Sonuç aşağıdaki gibi olmalı:

Resim-4

Hybrid Use Benefit lisansı olanları listelemek

Azure Hybrid Benefit, Enterprise ortamınızda var olan Windows Server, SQL Server lisanslarınızı Azure Cloud ortamında kullanmanıza imkan veren bir lisans tipi olarak geçmektedir. Eğer Azure Cloud ortamınızda bulunan `Windows Server’lar` içerisinden hangilerinde bu lisanslama tipi açık diye merak ediyorsanız aşağıda bulunan sorgulama size yeterli gelecektir.

resources
| where type =~ 'microsoft.compute/virtualMachines' 
| extend imageOffer=tostring(properties.storageProfile.imageReference.offer)
| extend licenseType=properties.licenseType
| where imageOffer == 'WindowsServer' and licenseType=='Windows_Server'
| project name, imageOffer, licenseType
Resim-5

Örneğimizi bir tık daha geliştirelim. Sahip olduğumuz sorgulamayı kullanalım ve bunu `Bar Chart` olarak gösterelim.

resources
| where type =~ 'microsoft.compute/virtualMachines' 
| extend imageOffer=tostring(properties.storageProfile.imageReference.offer)
| extend licenseType=iif(tostring(properties.licenseType) == "Windows_Server", "HUB[WindowsServer]", "WindowsServer")
| where imageOffer == 'WindowsServer' 
| project name, imageOffer, licenseType
| summarize count() by licenseType

Resim-6

Bir sonraki yazımızda Azure Defender for Cloud örnekleri ile sorgulamalar yapacağız.

Bu konuyla ilgili sorularınızı  alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz. 

Referanslar

www.mshowto.org 

TAGs:Azure Resource Graph, KQL, Resource Manager, Azure Resource Graph nedir

Bu İçeriğe Tepkin Ne Oldu?
  • 0
    harika_
    Harika!!
  • 1
    be_enmedim
    Beğenmedim
  • 0
    _ok_iyi
    Çok iyi
  • 0
    sevdim_
    Sevdim!
  • 0
    bilemedim_
    Bilemedim!
  • 0
    olmad_
    Olmadı!
  • 0
    k_zd_m_
    Kızdım!

Hasan Güral, Istanbul doğumlu ve uzun yıllardır bilişim sektöründe danışmanlıktan eğitmenliğe farkli pozisyonlarda görev almıştır. Üniversite eğitimiyle birlikte bilişim sektöründe Kibar Holding, Bilge Adam Bilgi Teknolojileri Akademisi ve PeakUp Bilgi Teknolojileri gibi farkli kurumlarda Kıdemli Danışman ve Eğitmen olarak sektöre yön veren projelerde yer almistir.Microsoft Azure alanında yapmış olduğu paylaşımlar ve katkılarından dolayı Microsoft Valuable Professional (Azure) unvanına hak kazanmıştır. Cloud teknolojilerinin otomasyon alaninda gelişmesiyle birlikte zamaninin bir çoğunu PowerShell, Event-Driven Orchestration, Infrastructure as a Code ve Configuration as a Code ile geçirmektedir.Kariyerine Ingiltere’de DevOps Engineer ve Automation Enthusiast rolü ile Cloud Rundle’da devam etmektedir.

Yazarın Profili

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

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