UmutKarakuş
Knowledge

Plesk'te CPU Kısıtlama: Sunucu Kaynak Yönetimi

Bu teknik not, Plesk sunucularda CPU kısıtlama yöntemlerini, önemini ve uygulamasını detaylandırmaktadır. Kaynak yönetimi ve sunucu kararlılığı için CPU kısıtlamanın nasıl yapılandırılacağını öğrenin.

Giriş

Modern sunucu yönetimi, kaynakların etkin ve adil bir şekilde dağıtılmasını gerektirir. Özellikle paylaşımlı hosting ortamlarında, bir kullanıcının veya web sitesinin tüm sunucu kaynaklarını tüketmesi, diğer sitelerin performansını olumsuz etkileyebilir ve sunucu kararlılığını bozabilir. Plesk, bu tür senaryoları önlemek amacıyla CPU kısıtlama (CPU Throttling) mekanizmaları sunar. Bu teknik not, Plesk panelli sunucularda CPU kısıtlamanın ne olduğunu, neden gerekli olduğunu ve nasıl uygulanacağını detaylandırmaktadır.

Plesk'te CPU Kısıtlamanın Önemi

CPU (Merkezi İşlem Birimi), bir sunucunun en kritik kaynaklarından biridir. Aşırı CPU kullanımı aşağıdaki sorunlara yol açabilir:

  • Performans Düşüşü: Bir web sitesinin yoğun CPU kullanımı, diğer sitelerin yüklenme sürelerini uzatır ve genel sunucu tepkisini düşürür.
  • Sunucu Kararsızlığı: Sürekli yüksek CPU yükü, sunucunun donmasına veya çökmesine neden olabilir.
  • Kaynak Suistimali: Kötü niyetli veya yanlış yapılandırılmış uygulamalar, belirlenen sınırların ötesinde kaynak tüketerek diğer kullanıcılara zarar verebilir.
  • Adil Kaynak Dağıtımı: Paylaşımlı ortamda her kullanıcının veya aboneliğin belirlenen sınırlar dahilinde CPU kaynaklarını kullanmasını sağlar, böylece herkes için adil bir deneyim sunulur.

Plesk'te CPU Kısıtlama Nasıl Çalışır?

Plesk, Linux sistemlerdeki cgroups (control groups) mekanizmasını kullanarak abonelikler ve web siteleri için kaynak sınırlandırmaları uygular. Cgroups, belirli süreç gruplarına CPU, bellek, disk I/O gibi sistem kaynaklarını tahsis etmeyi ve kısıtlamayı sağlayan bir Linux çekirdek özelliğidir. Plesk arayüzünden yapılan CPU kısıtlama ayarları, arka planda bu cgroups kurallarına dönüştürülür ve ilgili aboneliklerin veya alan adlarının süreçleri bu sınırlar içinde çalışmaya zorlanır.

CPU Kısıtlamayı Yapılandırma Yöntemleri

Plesk'te CPU kısıtlamasını yapılandırmak için başlıca iki yöntem bulunur:

1. Hizmet Paketleri (Service Plans) Üzerinden

Plesk'te hizmet paketleri, belirli kaynak limitleri ve özellik setleriyle şablonlar oluşturmanızı sağlar. Yeni bir abonelik oluşturulduğunda veya mevcut bir abonelik bir hizmet paketine atandığında, o paketin CPU limitleri otomatik olarak uygulanır.

  1. Plesk Yönetici Paneline giriş yapın.
  2. Sol menüden Hizmet Paketleri (Service Plans)'ne gidin.
  3. Mevcut bir paketi düzenlemek veya yeni bir paket oluşturmak için ilgili pakete tıklayın.
  4. Kaynaklar (Resources) sekmesine geçin.
  5. Burada CPU Kullanımı (CPU Usage) veya CPU Limit (CPU Limit) gibi bir seçenek göreceksiniz. Bu değeri yüzdelik (%) olarak ayarlayabilirsiniz (örn: %100, tek bir çekirdek için tam kullanım; %50, yarım çekirdek kullanımı anlamına gelebilir, ancak bu değerlerin yorumu sunucu konfigürasyonuna göre değişebilir).
  6. Değişiklikleri kaydedin.

2. Abonelikler (Subscriptions) Üzerinden

Bir abonelik, atanmış olduğu hizmet paketindeki CPU limitini kullanabilir veya bu limiti abonelik özelinde geçersiz kılabilirsiniz. Bu, belirli bir web sitesi veya müşteri için özel bir CPU sınırı belirlemeniz gerektiğinde kullanışlıdır.

  1. Plesk Yönetici Paneline giriş yapın.
  2. Sol menüden Abonelikler (Subscriptions)'e gidin.
  3. Düzenlemek istediğiniz aboneliğe tıklayın.
  4. Özelleştir (Customize) butonuna tıklayın (genellikle sağ üstte bulunur).
  5. Kaynaklar (Resources) sekmesine geçin.
  6. CPU Kullanımı (CPU Usage) veya CPU Limit (CPU Limit) seçeneğini bulun. Eğer hizmet paketinden farklı bir değer uygulamak istiyorsanız, "Sınırsız" veya "Varsayılan" seçeneğini kaldırıp özel bir değer girin.
  7. Değişiklikleri kaydedin.

Yüksek CPU Kullanımını Teşhis Etme

Bir web sitesinin veya uygulamanın yüksek CPU kullandığından şüpheleniyorsanız, aşağıdaki yöntemleri kullanarak teşhis edebilirsiniz:

  • Plesk Monitoring: Plesk'in kendi kaynak izleme araçları (örn. Server Health) genel CPU kullanımını ve hangi aboneliklerin kaynak tükettiğini gösterebilir.
  • Kod / Komut
    SSH ile Sunucuya Bağlanma: Daha detaylı bilgi için sunucuya SSH üzerinden bağlanarak aşağıdaki komutları kullanabilirsiniz:
    • top: Çalışan süreçleri CPU kullanımına göre sıralayarak gerçek zamanlı bir görünüm sunar.
    • Kod / Komut
      top
    • htop: top komutunun daha kullanıcı dostu ve interaktif bir versiyonudur (sunucuda kurulu olması gerekir).
    • Kod / Komut
      htop
    • ps aux --sort=-%cpu | head -n 10: En çok CPU kullanan ilk 10 süreci listeler.
    • Kod / Komut
      ps aux --sort=-%cpu | head -n 10
  • Plesk Logları: Plesk logları (örneğin /var/log/plesk/panel.log veya web sunucusu logları) belirli hataları veya kaynak tüketen işlemleri işaret edebilir.

En İyi Uygulamalar ve Tavsiyeler

  • Kademeli Başlangıç: CPU kısıtlamalarını uygularken, çok düşük değerlerden başlamak yerine, makul bir başlangıç değeri belirleyin ve ihtiyaca göre ayarlayın.
  • Sürekli İzleme: Limitleri belirledikten sonra sunucu performansını ve aboneliklerin kaynak kullanımını düzenli olarak izleyin.
  • Kullanıcıları Bilgilendirme: Müşterilerinizi veya web sitesi sahiplerini, belirlenen CPU limitleri ve bu limitlerin aşılması durumunda yaşanabilecekler hakkında bilgilendirin.
  • Altta Yatan Sorunları Giderme: Yüksek CPU kullanımının temel nedenini (örn. optimize edilmemiş kod, bot saldırısı, kötü yapılandırılmış eklenti) bulmaya ve gidermeye çalışın. Kısıtlama sadece bir geçici çözüm olabilir.

Sonuç

Plesk'te CPU kısıtlama, paylaşımlı hosting ortamlarında sunucu kararlılığını sağlamak, kaynakların adil dağıtımını temin etmek ve genel performansı optimize etmek için kritik bir araçtır. Doğru yapılandırıldığında ve düzenli olarak izlendiğinde, CPU kısıtlaması hem servis sağlayıcıları hem de son kullanıcılar için daha güvenli ve verimli bir ortam yaratılmasına yardımcı olur.