VMware vSphere ortamlarında sanal altyapının sağlıklı çalışmasını sağlamak için performans verilerini takip etmek kritik bir öneme sahiptir. VMware vCenter, ESXi hostlar, sanal makineler (VM), datastore’lar ve cluster’lar gibi çeşitli bileşenlerden performans verilerini toplar.
Bu verileri görüntülemek ve analiz etmek için VMware PowerCLI‘yi kullanabilirsiniz. Bu makalede PowerCLI kullanarak vCenter’dan performans istatistiklerini nasıl çekebileceğinizi ve bu verileri nasıl işleyeceğinizi detaylıca inceleyeceğiz.
VMware vCenter ‘da performans nesnesi için kullanılabilir tüm metrikleri görmek için şu komutu çalıştırabilirsiniz;
Get-StatType -Entity <vCenter-Object>
Get-StatType -Entity Cluster01
Bu komut Cluster01 adlı cluster için mevcut tüm performans metriklerini listeler. Listeleme sonrasında hangi metrikleri almak istediğinizi belirleyebilirsiniz.
Belirli bir vCenter nesnesi (Cluster, ESXi Host, VM, Datastore) için belirli bir metriği çekmek için aşağıdaki komut kullanılır.
Get-Stat -Entity <VCenter_Objesi> -Stat <MetrikID>
Get-Stat -Entity MyCluster -Stat cpu.usage.average
Bu komut CPU kullanım ortalamasını getirir. Eğer vCenter nesnesi bir ESXi Host ise aynı komut şu şekilde kullanılabilir;
Get-Stat -Entity MyESXiHost -Stat mem.usage.average
Bu komut ile belirtilen ESXi Host’un bellek kullanım ortalamasını çeker.
Genellikle geçmişe dönük performans verilerini analiz etmek gerekir. Örneğin son 7 güne ait performans verilerini almak için aşağıdaki komutu kullanabilirsiniz;
Get-Stat -Entity <VCenter_Objesi> -Stat <MetrikID> -Start (Get-Date).AddDays(-7) -Finish (Get-Date)
Get-Stat -Entity MyESXiHost -Stat mem.usage.average -Start (Get-Date).AddDays(-7) -Finish (Get-Date)
Bu komut ile MyESXiHost’un son 7 günlük bellek kullanım ortalamasını çeker.
Büyük veri setleriyle çalışırken belirli metriklerin ortalamasını almak analiz açısından önemlidir. Örneğin, son 7 günlük CPU kullanımının ortalamasını hesaplamak için;
Get-Stat -Entity MyVM -Stat cpu.usage.average -Start (Get-Date).AddDays(-7) -Finish (Get-Date) |
Measure-Object -Property Value -Average
Bu komut MyVM’in CPU kullanım ortalamasını hesaplar ve çıktı olarak verir.
Birden fazla metriği aynı anda almak için metrikleri virgülle ayırarak ekleyebilirsiniz;
Get-Stat -Entity MyCluster -Stat "cpu.usage.average", "mem.usage.average"
Bu komut CPU ve bellek kullanım ortalamalarını getirir.
PowerCLI’de elde edilen performans verilerini bir CSV dosyasına aktarmak için aşağıdaki komutu kullanabilirsiniz.
Get-Stat -Entity MyDatastore -Stat disk.usage.average | Export-Csv -Path C:\PerformansVerisi.csv -NoTypeInformation
Bu komut disk kullanım verilerini “C:\PerformansVerisi.csv” dosyasına kaydeder. Bu CSV dosyası daha sonra Excel veya başka analiz araçlarıyla incelenebilir.