Merhaba arkadaşlar, bugün sizlere sunucu performans izleme işini tek bir komuta sığdıran, benim de sık sık kullandığım harika bir araçtan, `dstat`'tan bahsedeceğim. Özellikle sunucuda anlık bir yavaşlama veya yük artışı olduğunda, sorunun kaynağını hızlıca tespit etmek için `top` veya `htop` bazen yetersiz kalabiliyor. `dstat` ile CPU, bellek, disk I/O, ağ trafiği ve daha birçok metriği aynı anda, renkli ve anlaşılır bir şekilde izleyebilirsiniz. Bu rehberde nasıl kuracağınızı ve etkili bir şekilde nasıl kullanacağınızı adım adım anlatacağım.
dstat Kurulumu
İlk iş olarak, aracı sistemimize kuralım. Paket yöneticinize göre aşağıdaki komutlardan birini kullanabilirsiniz.
Debian/Ubuntu tabanlı sistemler için:
RHEL/CentOS/Fedora tabanlı sistemler için:
veya
Kurulum çok basit ve hızlı. Kurulum bittikten sonra hemen kullanmaya başlayabiliriz.
Temel Kullanım ve Parametreler
`dstat`'ın en güzel yanı, varsayılan haliyle bile çok faydalı bilgiler sunması. Terminalinize sadece `dstat` yazıp enter'a basın.
Bu komut, saniyede bir güncellenen, CPU kullanımı, disk okuma/yazma, ağ al/gönder ve sistem kesintileri (int) gibi temel istatistikleri gösterir. Çıktıyı durdurmak için `CTRL+C` tuş kombinasyonunu kullanmalısınız.
Ancak asıl güç, parametrelerde yatıyor. Benim en sık kullandığım kombinasyon şudur:
Şimdi bu parametrelerin ne işe yaradığına bakalım:
`-c`: CPU istatistikleri (kullanıcı, sistem, boşta, bekleme, donanım/yazılım kesintileri)
`-d`: Disk okuma/yazma istatistikleri
`-n`: Ağ istatistikleri (alınan/gönderilen)
`-g`: Sayfa (page) ve takas (swap) istatistikleri
`-y`: Sistem istatistikleri (kesintiler ve bağlam anahtarlamaları)
`--top-cpu`: En çok CPU kullanan prosesi gösterir.
`--top-mem`: En çok bellek kullanan prosesi gösterir.
Bu kombinasyon, sunucunuzun genel sağlığını tek ekranda görmeniz için mükemmeldir.
İleri Seviye ve Özelleştirme
`dstat` çok esnek bir araç. Örneğin, sadece belirli diskleri veya ağ arayüzlerini izlemek isteyebilirsiniz.
Sadece `sda` ve `sdb` disklerini izlemek için:
Belirli bir ağ arayüzünü (`eth0` gibi) izlemek için:
Çıktıyı CSV dosyasına kaydedip daha sonra analiz etmek de mümkün. Bu, performans sorunlarını loglamak için harikadır.
Dikkat Edilmesi Gerekenler
`dstat` kurulu değilse, yukarıdaki kurulum adımlarını atlamayın. Paket depolarında genellikle mevcuttur.
`--top-cpu` ve `--top-mem` gibi proses bazlı gösterimler, ekranı biraz kalabalıklaştırabilir. İlk başta temel parametrelerle (`-cdng`) başlayıp alıştıkça ekleyebilirsiniz.
Çıktıyı bir dosyaya yönlendirirken, `--output` parametresini kullanmanız daha düzenli bir log sağlar. Klasik `>` yönlendirmesi renk kodlarını ve formatı bozabilir.
Eğer çok yoğun I/O yaşanan bir sunucunuz varsa, disk istatistiklerini (`-d`) mutlaka ekleyin. Burada yüksek `read`/`write` değerleri, diskin bir darboğaz olup olmadığını anlamanıza yardım eder.
Sonuç ve Tavsiyeler
`dstat`, sunucu başına oturup "Neden yavaş?" sorusunu sorduğunuz anlardaki en iyi yardımcılardan biridir. `vmstat`, `iostat`, `netstat` gibi araçların birleşmiş, daha okunabilir hali gibi düşünebilirsiniz. Özellikle yeni bir servis kurduktan veya yapılandırma değişikliği yaptıktan sonra performans etkisini gözlemlemek için sık sık başvuruyorum.
Peki siz sunucu izleme için hangi araçları tercih ediyorsunuz? `dstat` dışında, özellikle terminal üzerinden kullandığınız favori bir performans izleme aracınız var mı? Deneyimlerinizi ve sorularınızı aşağıdaki yorumlarda paylaşabilirsiniz. Herkese sorunsuz sunucular dilerim!
İlk iş olarak, aracı sistemimize kuralım. Paket yöneticinize göre aşağıdaki komutlardan birini kullanabilirsiniz.
Debian/Ubuntu tabanlı sistemler için:
Bash:
sudo apt-get update
sudo apt-get install dstat
RHEL/CentOS/Fedora tabanlı sistemler için:
Bash:
sudo yum install dstat
Bash:
sudo dnf install dstat
Kurulum çok basit ve hızlı. Kurulum bittikten sonra hemen kullanmaya başlayabiliriz.
`dstat`'ın en güzel yanı, varsayılan haliyle bile çok faydalı bilgiler sunması. Terminalinize sadece `dstat` yazıp enter'a basın.
Bash:
dstat
Bu komut, saniyede bir güncellenen, CPU kullanımı, disk okuma/yazma, ağ al/gönder ve sistem kesintileri (int) gibi temel istatistikleri gösterir. Çıktıyı durdurmak için `CTRL+C` tuş kombinasyonunu kullanmalısınız.
Ancak asıl güç, parametrelerde yatıyor. Benim en sık kullandığım kombinasyon şudur:
Bash:
dstat -cdngy --top-cpu --top-mem
Şimdi bu parametrelerin ne işe yaradığına bakalım:
`-c`: CPU istatistikleri (kullanıcı, sistem, boşta, bekleme, donanım/yazılım kesintileri)
`-d`: Disk okuma/yazma istatistikleri
`-n`: Ağ istatistikleri (alınan/gönderilen)
`-g`: Sayfa (page) ve takas (swap) istatistikleri
`-y`: Sistem istatistikleri (kesintiler ve bağlam anahtarlamaları)
`--top-cpu`: En çok CPU kullanan prosesi gösterir.
`--top-mem`: En çok bellek kullanan prosesi gösterir.
Bu kombinasyon, sunucunuzun genel sağlığını tek ekranda görmeniz için mükemmeldir.
`dstat` çok esnek bir araç. Örneğin, sadece belirli diskleri veya ağ arayüzlerini izlemek isteyebilirsiniz.
Sadece `sda` ve `sdb` disklerini izlemek için:
Bash:
dstat -d sda,sdb
Belirli bir ağ arayüzünü (`eth0` gibi) izlemek için:
Bash:
dstat -n -N eth0
Çıktıyı CSV dosyasına kaydedip daha sonra analiz etmek de mümkün. Bu, performans sorunlarını loglamak için harikadır.
Bash:
dstat -cdngy --output /tmp/sunucu_istatistikleri.csv
`dstat` kurulu değilse, yukarıdaki kurulum adımlarını atlamayın. Paket depolarında genellikle mevcuttur.
`--top-cpu` ve `--top-mem` gibi proses bazlı gösterimler, ekranı biraz kalabalıklaştırabilir. İlk başta temel parametrelerle (`-cdng`) başlayıp alıştıkça ekleyebilirsiniz.
Çıktıyı bir dosyaya yönlendirirken, `--output` parametresini kullanmanız daha düzenli bir log sağlar. Klasik `>` yönlendirmesi renk kodlarını ve formatı bozabilir.
Eğer çok yoğun I/O yaşanan bir sunucunuz varsa, disk istatistiklerini (`-d`) mutlaka ekleyin. Burada yüksek `read`/`write` değerleri, diskin bir darboğaz olup olmadığını anlamanıza yardım eder.
`dstat`, sunucu başına oturup "Neden yavaş?" sorusunu sorduğunuz anlardaki en iyi yardımcılardan biridir. `vmstat`, `iostat`, `netstat` gibi araçların birleşmiş, daha okunabilir hali gibi düşünebilirsiniz. Özellikle yeni bir servis kurduktan veya yapılandırma değişikliği yaptıktan sonra performans etkisini gözlemlemek için sık sık başvuruyorum.
Peki siz sunucu izleme için hangi araçları tercih ediyorsunuz? `dstat` dışında, özellikle terminal üzerinden kullandığınız favori bir performans izleme aracınız var mı? Deneyimlerinizi ve sorularınızı aşağıdaki yorumlarda paylaşabilirsiniz. Herkese sorunsuz sunucular dilerim!