Esxtop, CPU, memory, disk ve network kaynaklarının gerçek zamanlı izlenmesi ve veri toplamak için kullanılan bir komut satırı aracıdır. Tüm bu kaynakların istatistik verilerini interaktif olarak ayrı ayrı ekranlarda görebileceğimiz gibi, bir dosyaya da çıktı alabiliriz.
Esxtop, troubleshoot yaparken oldukça işimize yarayan bir araçtır. Esxtop’ı kullanmak için ESXi host’a direkt erişimimiz olması gerekir. DCUI veya SSH bağlantısı ile kullanabiliriz.
Bir çok esxtop istatistik bilgisi oran olarak hesaplanır. Örneğin;
CPU için kullanılan %USED istatistik bilgisi. Buradaki oran, ardışık anlık görüntüler arasındaki süre olan yenileme aralığına göre hesaplanır. Örnek:
%USED = (CPU anlık görüntüde kullanılan süre 2 - CPU anlık görüntüde kullanılan süre 1) / anlık görüntüler arasında geçen süre
Varsayılan olarak yenileme oranı 5 saniyedir. Minimum 2 saniyeye kadar düşürebiliriz. İnteraktif olarak s
şeklinde değiştirilebilir. Maksimum değer yoktur denebilir. İlk defa kullanıyorsanız yenileme oranını yüksek tutmak daha iyi olabilir. Aşağıdaki kısa videoda varsayılan olarak 5 sn ile başladığını, daha sonra 2 saniyeye düşürdüğümüzü görebilirsiniz.
Her ekranda, veriler farklı toplama seviyelerinde sunulur. Bu verilerin genişletilmiş görünümlerine erişmek mümkündür. Her ekran farklı genişletme seçenekleri sunar.
Veri toplama yapılan alanların tümünü veya bazılarını seçmek mümkündür. Esxtop’un interaktif kullanımı durumunda, seçilen alanların görüntülenme sırası seçilebilir.

- Esxtop ekranının en üstünde geçerli zaman
- Ne kadar zamandır çalışır durumda olduğu (uptime)
- Çalışan world sayısı
- Çalışan sanal makine sayısı ve sanal makinelere atanan toplam vCPU
- 1, 5 ve 15 dakikalık aralıklarla CPU yük ortalaması (load average) görünür.
World, diğer işletim sistemlerindeki process veya thread’e benzeyen, bir ESXi programlanabilir VMkernel öğesidir. Bunun altında son bir, beş ve on beş dakikalık yük ortalamaları görüntülenir. Yük ortalamaları, çalışan ve çalışmaya hazır durumda olan world’leri hesaplar. Load average 1.00 ise, tüm fiziksel CPU kullanılmaktadır. Load average 2.00 ise, ESXi host mevcut bulunandan iki kat daha fazla CPU’ya ithiyaç duyabilir demektir. Load average 0.50 ise, fiziksel CPU kapasitesinin yarısı kullanımda demektir.
Sütunları özelleştirme

F
ya da f
tuşuna basarsanız, hangi sütun görünecek, hangisi görünmeyecek seçim yapabilirsiniz.

O
ya da o
tuşuna basarsanız, sütunları sağa veya sola taşıyabilirsiniz. Örneğin, Büyük harf olarak A tuşuna basarsanız, ilgili sütun sola taşınır. Küçük harf olarak a tuşuna basarsanız, ilgili sütun sağa taşınır. Bu yapılan değişiklikler kalıcı değildir. Tekrar esxtop’a girdiğinizde varsayılan olarak eski ayarlar ile görünür.
Kullanılabilecek tuşlar ve açıklamaları
Aşağıdaki tabloda, hangi tuşa basarsanız, hangi ekranı görüntüleyebileceğiniz bulunmakta.
TUŞ | AÇIKLAMA |
c | CPU kaynak kullanım ekranı |
p | CPU güç kullanım ekranı |
m | Memory kaynak kullanım ekranı |
d | Storage (disk) adapter kaynak kullanım ekranı |
u | Storage (disk) device kaynak kullanım ekranı |
v | Storage (disk) sanal makine kaynak kullanım ekranı |
n | Network kaynak kullanım ekranı |
i | Interrupt ekranı |
q | İnteraktif moddan çıkış |
h veya ? | Mevcut ekran ile ilgili yardım menüsünü gösterir ve komutlarla ilgili özet bilgi verir |
space (boşluk) | Mevcut ekrandaki bilgileri hemen yeniler |
f veya F | İstatistik sütunlarını eklemek veya çıkarmak için kullanılır |
o veya O | İstatistik sütunlarının sıralamasını değiştirmek için kullanılır |
# | Bu karakteri girdiğimizde, bizden 0 (sıfır)’dan büyük bir sayı ister. Girdiğimiz sayı, gösterilecek satır sayısını belirler |
s | Ekrandaki istatistik bilgilerinin güncellenmesi için geçecek süreyi saniye cinsinden belirlemek için kullanılır. Varsayılan değer 5 sn’dir. Minimum değer 2 sn’dir |
k | World ID girerek bir world (process) durdurmak için kullanılır. Grafik arayüzden bir işlemi durduramadığınız durumlarda kullanabilirsiniz |
l | Görünümü tek bir group (GID) ile sınırlandırmak için kullanılır. Tek bir VM’e odaklanmak için kullanılabilir |
L | Sütunların genişliğini ayarlamak için kullanılır |
2 | Bir satırı vurgulamak için kullanılır. Tekrar tekrar bastığınızda, alttaki satırlar vurgulanır |
8 | Bir satırı vurgulamak için kullanılır. Tekrar tekrar bastığınızda, üstteki satırlar vurgulanır |
4 | Bir satırı görünümden kaldırmak için kullanılır |
Sonuçları genişletmek
Esxtop istatistikleri, sanal makineler, LUN’lar gibi öğelere göre gruplandırır.

Örnek olarak kullanacağım sanal makinenin adı vGPU-vCenter. Yukarıdaki ekran görüntüsünde, ilgili sanal makinede %WAIT 2700 olarak görünüyor. Bu rakam biraz yüksek gibi görünebilir. Bu durumu anlayabilmek için e
tuşuna basıyoruz ve sanal makinenin GID numarasını yazıyoruz.

vGPU-vCenter sanal makinesinin GID’lerinden oluşan satırlar görünmeye başlıyor. Her bir satır, bir world ifade eder.
vmx-vcpu-0:vGPU-vCenter ve vmx-vcpu-1:vGPU-vCenter bu sanal makineye atanmış vCPU’lardır. Diğer satırlar, network stack, disk sitemleri ve diğer yardımcı world’lerdir. vmx-mks konsol için, vmx-svga grafik kart için. Eğer konsol üzerinde işlem yapıyor olsaydım, %USED ve %RUN sütunlarında da CPU kullanımı görecektik.
Batch mode
Batch mode, kaynak kullanım istatistiklerini bir dosyaya çıktı almak için kullanılır. Burada önemli noktalardan biri, sadece ihtiyacınız olan metrikleri almak. Ortamda çok fazla sanal makine varsa, gereksiz metrikler karışıklık yaratabilir. Bundan dolayı, f
tuşuna basarak ihtiyacınız olmayan sütunları kaldırıp, ihtiyacınız olan sütunları eklediğinizden emin olun. Sütun ekleme/kaldırma işlemini bitirdikten sonra W
tuşu ile konfigürasyon dosyasını kaydetmeniz gerekiyor. Varsayılan config dosyası adı esxtop60rc‘dir. Config dosyasını, farklı bir isimle kaydedebilirsiniz.
Tüm esxtop parametrelerini aşağıda görebilirsiniz.
[root@esxi02:~] esxtop -h
usage: esxtop [-h] [-v] [-b] [-l] [-s] [-a] [-c config file] [-R vm-support-dir-path]
[-d delay] [-n iterations]
[-export-entity entity-file] [-import-entity entity-file]
-h prints this help menu.
-v prints version.
-b enables batch mode.
-l locks the esxtop objects to those available in the first snapshot.
-s enables secure mode.
-a show all statistics.
-c sets the esxtop configuration file, which by default is .esxtop60rc
-R enables replay mode.
-d sets the delay between updates in seconds.
-n runs esxtop for only n iterations. Use "-n infinity" to run esxtop forever.
-u suppress server-wide physical CPU stats.
-----Experimental Features-------------
-export-entity writes the entity ids into a file, which can be modified
to select interesting entities.
-import-entity reads the file of selected entities. If this opion
is used, esxtop only shows the data for the selected entities.
W
anahtarını girdikten sonra, aşağıdaki komut ile config dosyasını kaydedebiliriz.

Esxtop ekranını kaydettiğimiz config template dosyasından başlatmak için aşağıdaki komutu kullanabiliriz.
esxtop -c /tmp/esxtopcfg
Aşağıdaki komut ile esxtop verilerini dışarı aktarabilirsiniz.
esxtop -b -d 2 -n 100 > esxtop-export.csv
ANAHTAR | AÇIKLAMA |
b | Batch mode enable eder |
d | Her bir anlık görüntü (snapshot) arasındaki gecikmeyi belirtir |
n | Kaç kez istatistik bilgisi alınacağını belirtir |
a | Bu anahtarı eklersek tüm metrikleri alırız |
Tablodaki açıklamalar ışığında, export edilen istatistik bilgileri 2 saniyede bir, 100 kez, 200 saniye boyunca alınacak şekilde ayarlanmıştır.
-b
anahtarı kullanılırsa, yeni bir VM power on edildiğinde, vMotion ile verilerin çekildiği ESXi host’a taşındığında veya yeni bir world oluştuğunda esxtop istatistik bilgileri içinde yer almaz.
Sonuçların analiz edilmesi
Export ettiğimiz esxtop verilerini Windows Performance Monitor veya Excel ile analiz edebiliriz. Bunun için şu adımları izleyebilirsiniz.
- Performance Monitor grafik ekranında sağ tıklayın ve Properties seçin.
- Açılan ekranda Source sekmesine geçin.
- Data Source bölümünden Log files seçin ve Add butonuna tıklayın.
- Esxtop ekranında export ettiğiniz .csv dosyasını seçin ve Apply butonuna tıklayın.
- Eğer esxtop ekranında uzun bir zaman dilimi için veri çektiyseniz, bu ekranda Time Range kısmında gösterilecek zaman aralığını belirleyebilirsiniz.
- Data sekmesine geçin ve tüm counter’ları kaldırın.
- Add butonu ile incelemek istediğiniz counter’ları ekleyin ve OK butonuna tıklayın.
Performance Monitor ekranı şu şekilde görünecektir.
