Yönetim ve Operasyon · 3 dk okuma
Performance Co-Pilot (PCP) ile RHEL KVM performans izleme ve geçmiş analiz
RHEL'de tam destekli performans izleme altyapısı PCP'nin mimarisi, sanallaştırma host'larında kullanımı, web konsolu entegrasyonu ve destek vakalarındaki rolü.
Derinlik: MühendislikAltyapı YöneticisiSistem MühendisiGüncelleme: 2026-10-03
Kısa cevap
Performance Co-Pilot (PCP), RHEL'e dahil ve Red Hat tarafından RHEL 6.6'dan bu yana tam desteklenen sistem düzeyi performans izleme ve analiz paketidir. Metrikleri canlı izlemenizi ve aynı zamanda arşivleyip geçmişe dönük analiz etmenizi sağlar. RHEL web konsolundaki performans geçmişi grafikleri de PCP arşivlerinden beslenir.
Mimari: PMCD, PMDA ve pmlogger
PCP'nin merkezinde Performance Metrics Collection Daemon (pmcd) bulunur. pmcd istemcilerden gelen istekleri, belirli metrik gruplarından sorumlu eklenti ajanlarına (PMDA — Performance Metrics Domain Agent) yönlendirir.
pmlogger servisi de bir istemcidir: metrikleri belirlenen aralıklarla toplar ve arşiv dosyalarına yazar. Böylece veri toplama ile verinin görüntülenmesi birbirinden ayrılır; aynı araçlar hem canlı veriyle hem de arşivle çalışabilir.
- pmcd — metrik toplama daemon'u
- PMDA — Linux, libvirt, konteyner, veritabanı gibi alanlar için eklenti ajanları
- pmlogger — performans arşivi kaydedici
- pmval, pmrep, pmchart — canlı ya da arşivden veri okuyan istemciler
Sanallaştırma host'unda neyi ölçer?
PCP, Linux /proc ve /sys altında sunulan metriklerin neredeyse tamamını, süreç bazlı veriler dahil toplayabilir. Red Hat'in veri sayfasına göre yaklaşık 70 eklenti mevcuttur; bunlardan biri libvirt'tir. KVM host'unda her VM bir qemu-kvm süreci olduğu için süreç bazlı CPU ve bellek kullanımı doğrudan VM bazlı görünüm sağlar.
- Host CPU, yük ortalaması, bağlam değişimi
- Bellek kullanımı, swap, huge page tüketimi
- Disk ve device-mapper (multipath) aygıtı bazında G/Ç ve gecikme
- Ağ arayüzü ve bond bazında trafik
- libvirt PMDA ile sanal makine bazlı metrikler
Ad alanı ve metadata
PCP'de tüm metrikler hiyerarşik bir ad alanında (ör. kernel.all.cpu.user, disk.dev.read) bulunur ve her metrik veri tipi, semantiği (sayaç/anlık), birimi ve yardım metni gibi metadata taşır. Genel izleme araçları bu metadata sayesinde ölçekleme ve oran dönüşümünü kendileri yapabildiği için özel izleme uygulaması yazma ihtiyacı büyük ölçüde ortadan kalkar.
Alışık olunan araçlarla uyum
PCP; iostat, pidstat, vmstat, mpstat, free, atop ve numastat gibi alışılmış araçlarla benzer kullanıma sahip ön yüz araçları içerir (ör. pmiostat, pcp-atop). Bu araçlar hem canlı sistemde hem de geçmiş arşiv üzerinde çalışabildiği için, 'dün gece 02:00'de ne oldu?' sorusu sonradan yanıtlanabilir.
Web konsolu ve Grafana entegrasyonu
RHEL web konsolunda cockpit-pcp paketi kurulduğunda 'Metrikler ve geçmiş' sayfası PCP arşivlerini okuyarak CPU, bellek, disk ve ağ kullanımını zaman ekseninde gösterir ve olağan dışı dönemleri öne çıkarır.
Daha kapsamlı panolar için PCP, REST API (pmproxy) üzerinden Grafana ile entegre edilebilir. Bu yaklaşım, birden fazla host'un metriklerinin tek panoda izlenmesini sağlar.
Güvenlik
PCP yalnızca yerel erişime (Unix domain socket) izin verecek şekilde yapılandırılabilir. Uzak erişim gerektiğinde servisler sertifika tabanlı kimlik doğrulama ve SSL ile şifrelenmiş kanallar destekler; güvenlik duvarı arkasındaki erişim için ayrı bir proxy daemon'u mevcuttur. Üretimde yönetim ağı dışına açılmaması önerilir.
Destek vakalarındaki rolü
PCP arşivleri sosreport'a otomatik olarak dahil edilir. Bir performans sorunu için Red Hat'e vaka açıldığında, sorunun yaşandığı zamana ait arşiv destek mühendisinin elinde olur; bu da 'sorun tekrar ettiğinde haber verin' döngüsünü kısaltır. Birden fazla günlük arşiv birleştirilerek haftalık analiz yapılabilir.
Ne zaman yetmez?
PCP sistem düzeyinde metrik sağlar; uygulama içi işlem süreleri veya kullanıcı deneyimi ölçümü için APM araçları gerekir. Arşiv saklama süresi ve örnekleme aralığı disk kapasitesine göre planlanmalıdır; varsayılan ayarlar uzun süreli kapasite planlaması için yeterli olmayabilir.
Kurulum ve doğrulama
- `dnf install pcp pcp-system-tools cockpit-pcp`
- `systemctl enable --now pmcd pmlogger`
- `pcp` komutuyla servis ve arşiv durumunu doğrulayın
- `pmrep -a <arşiv> kernel.all.load` ile arşivden okuma yapın
Kaynaklar
Hazırlayan: F2 Mühendislik Ekibi · Son güncelleme: 2026-10-03