Sunucunuz birden fazla servis çalıştırıyorsa ve bu servisler uzun süreli aktifse, CPU’nun durumu doğrudan performansı etkiler. Video düzenleme, veritabanı sorguları veya kompleks algoritmalar gibi işlemler CPU’yu yoğun biçimde kullanabilir. Bu yüksek kullanım süregelirse, zamanla sistemde kalıcı performans kayıpları yaşanabilir. Bu içerikte, Linux sistemlerde CPU performansını artırmak için atılabilecek adımları örnekleriyle açıklayacağız.
Zayıf Yazılımlar CPU’yu Zorlar
Optimize edilmemiş uygulamalar işlemci kaynaklarını israf eder. Özellikle sonsuz döngüler, ağır sorgular ya da bellek sızıntıları, CPU’nun fazladan çalışmasına neden olur. PHP veya Python ile geliştirilen yazılımlar, yapılandırma eksikliği ya da yüksek kullanıcı talepleriyle karşılaştığında işlemci üzerinde baskı oluşturur.
CMS Tabanlı Sitelerde Kaynak Sorunları
CMS platformları, özellikle WordPress gibi popüler sistemler, kötü kodlanmış eklentiler ve temalarla performans sorunlarına yol açabilir. Trafik arttıkça sistemin yükü de artar. Önbellekleme sistemi etkili kullanılmazsa, her istekte kaynaklar yeniden çalışır. LiteSpeed Cache gibi güçlü eklentiler bu tür yüklerin önüne geçmek için kullanılabilir.
Gizli Tehlikeler ve Siber Ataklar
Kripto para madenciliği yapan kötü amaçlı yazılımlar, CPU kaynaklarını arka planda sömürebilir. Bunun yanında, DDoS saldırıları ve brute-force ataklar da işlemcinin sürekli zorlanmasına yol açan yaygın tehditler arasındadır.
Sistemsel İş Yükleri ve Otomasyon Görevleri
İşlemcinin zaman zaman yüksek kullanılmasının nedeni sistemin kendi görevleri de olabilir. Otomatik yedeklemeler, antivirüs taramaları veya yazılım güncellemeleri işlemciyi yorabilir. Özellikle cPanel ile yapılandırılmış AlmaLinux sistemlerde bu yük daha görünür hale gelir.
Gerçek Zamanlı CPU Kullanımı İzleme Araçları
Hatalı çalışan bir uygulama, en güçlü işlemcileri bile ciddi performans sorunlarına sürükleyebilir. CPU kullanımındaki anormallikleri tespit etmek için grafik arayüzlü sistem monitörleri veya doğrudan terminal araçları kullanılabilir. Özellikle SSH üzerinden erişilen sunucularda, terminal tabanlı araçlar çok daha işlevseldir.
‘top’ Komutuyla CPU Kullanımını
top komutu, Linux sistemlerde CPU, bellek ve işlem aktivitelerini gerçek zamanlı olarak izlemek için kullanılan temel araçlardan biridir.
top

Varsayılan olarak top ekranı her 3 saniyede bir yenilenir. Yük ortalamaları, görev sayısı ve CPU durumu gibi temel sistem bilgilerini gösterir. Kullanıcılar, P ile CPU’ya, M ile belleğe göre sıralama yapabilir, k tuşuyla işlemleri sonlandırabilir.
mpstat Komutuyla CPU Kullanımını İzleme
mpstat komutu, sysstat paketine ait bir araçtır ve işlemci başına detaylı CPU kullanım istatistikleri sağlar. Kullanıcı süresi, sistem süresi, boşta kalma oranı ve G/Ç bekleme süresi gibi verileri gösterir. Çok çekirdekli sistemlerde çekirdek bazlı analiz için idealdir.
mpstat -P ALL 2 5

sar Komutuyla CPU Kullanım Geçmişini İzleme
sar komutu, sysstat paketinin bir parçası olup CPU kullanım verilerini hem anlık hem de geçmişe dönük olarak görüntülemenizi sağlar. Sistem performansını zaman içinde analiz etmek isteyen yöneticiler için son derece faydalıdır.

Belirli aralıklarla veri toplamak için örnek: Bu komut, her 2 saniyede bir CPU istatistiklerini toplar ve toplamda 5 kez tekrarlar. Özellikle sistemdeki performans dalgalanmalarını takip etmek ve geçmiş verilerle karşılaştırma yapmak için idealdir.
sar -u 2 5
iostat Komutuyla CPU ve G/Ç Kullanımını İzleme
iostat komutu, hem CPU kullanımını hem de disk aygıtları ve bölümler için giriş/çıkış istatistiklerini gösterir. Özellikle G/Ç performansını analiz ederken CPU üzerindeki etkileri de değerlendirmek isteyenler için idealdir.
CPU kullanımını görmek için:
iostat

vmstat Komutuyla CPU Kullanımını İzleme
vmstat komutu; CPU, bellek, takas ve G/Ç istatistiklerini özet biçimde sunarak sistemin genel durumunu değerlendirmenizi sağlar. Özellikle bellek darboğazları ve takas kullanımının CPU performansına etkisini analiz etmek için kullanılır.
Her 2 sn bir çalıştırmak için aşağıdaki komutu kullanabilirsiniz.
vmstat 2

cpulimit Aracıyla Linux’ta CPU Kullanımı Nasıl Sınırlandırılır?
cpulimit, belirli bir sürecin (PID) CPU kullanım yüzdesini sınırlandırmanıza olanak tanır. cputool gibi alternatiflerine kıyasla daha fazla kontrol seçeneği sunar; ancak sistem yükünü izlemez, sadece hedef sürecin CPU tüketimini sınırlamaya odaklanır.
Ubuntu/Debian sistemlerde kurulum için;
sudo apt install cpulimit
RHEL/CentOS/Fedora sistemlerde önce EPEL deposunu etkinleştirme
sudo yum install epel-release
sudo yum install cpulimit
Aşağıda, bu aracı kullanırken işinize yarayacak temel seçenekleri bulabilirsiniz:
| Seçenek | Açıklama |
|---|---|
--pid, -p | Sınırlandırılacak sürecin PID’si |
--limit, -l | CPU kullanım limiti (%) |
--background, -b | cpulimit‘i arka planda çalıştırır |
--cpu, -c | Çekirdek sayısını belirtir (varsayılan: otomatik) |
--kill, -k | Limit aşılırsa işlemi sonlandırır |
--signal, -s | Farklı sinyaller göndererek işlemi durdurma |
--lazy, -z | İşlem kaybolursa otomatik çıkış yapar |
Prometheus ve Grafana ile Gelişmiş CPU İzleme
Geleneksel komut satırı araçları (top, htop, sar vb.), sistem kaynak kullanımını anlık olarak izlemenizi sağlar. Ancak bu araçlar uzun vadeli eğilimleri analiz etmek, geçmiş verileri saklamak ya da özel bildirimler oluşturmak konusunda sınırlıdır. İşte tam bu noktada Prometheus ve Grafana entegrasyonu devreye girer.
Prometheus, sistem metriklerini zaman serisi olarak toplayan açık kaynaklı güçlü bir izleme aracıdır. Grafana ise bu verileri görselleştirerek anlamlı grafiklere ve panellere dönüştürmenizi sağlar. Özellikle CPU kullanım trendlerini izlemek, ani yüklenmeleri tespit etmek ve belirli eşiklerin üzerinde işlemci tüketimi gerçekleştiğinde otomatik olarak uyarı almak isteyen sistem yöneticileri için bu ikili vazgeçilmezdir.
Node Exporter Kurulumu
wget https://github.com/prometheus/node_exporter/releases/download/v1.8.0/node_exporter-1.8.0.linux-amd64.tar.gz
tar -xvzf node_exporter*.tar.gz
./node_exporter
Prometheus Kurulumu ve Yapılandırma
scrape_configs:
- job_name: 'node'
static_configs:
- targets: ['localhost:9100']
Grafana Kurulumu ve Dashboard Oluşturma
sudo apt install grafana
sudo systemctl enable --now grafana-server
İzleme ve alarm altyapınız artık temel düzeyde hazır. Bu yapı sayesinde CPU kullanımını sadece anlık değil, geçmişe dönük olarak da takip edebilir, belirlediğiniz eşiklerde otomatik uyarılar alarak sistem performansını proaktif şekilde yönetebilirsiniz.
Daha gelişmiş paneller oluşturmak, birden fazla sunucuyu izlemek istiyorsanız, adım adım ekran görüntüleriyle hazırladığımız detaylı kurulum rehberimize göz atmanızı öneririz.
👉 Ubuntu Server Monitoring için Prometheus ve Grafana