Blogchevron_rightSunucu Yönetimichevron_rightLinux Sunucularda Swap Alanı Optimizasyonu Rehberi

Linux Sunucularda Swap Alanı Optimizasyonu Rehberi

S
Serversium
calendar_today13 Mayıs 2026
schedule5 dk okuma
Linux Sunucularda Swap Alanı Optimizasyonu Rehberi

Sunucularda Swap Alanı (Takas Alanı) Optimizasyonu Nasıl Yapılır?

Sunucularda RAM kapasitesinin yetersiz kaldığı durumlarda devreye giren swap alanı, sistem performansı için kritik bir öneme sahiptir. Doğru yapılandırılmamış takas alanı, sunucu hızını ciddi şekilde düşürebilir ve uygulama kesintilerine yol açabilir. Bu rehberde, Linux sunucularda swap alanının ne olduğu, nasıl oluşturulduğu ve performans için nasıl optimize edileceğini detaylı olarak ele alacağız.

Swap Alanı Nedir ve Neden Gereklidir?

Swap alanı, fiziksel RAM dolduğunda veya belirli bir eşiğe ulaştığında, disk üzerinde kullanılan sanal bellek alanıdır. Linux işletim sistemi, aktif olarak kullanılmayan bellek sayfalarını swap'a taşıyarak daha kritik işlemler için RAM'i boşaltır. Sunucu yönetimi açısından swap konfigürasyonu, sistem güvenilirliği için olmazsa olmaz bir unsurdur.

Uzmanlara göre, swap alanı olmayan bir sunucu, RAM dolduğunda OOM (Out of Memory) killer tarafından rastgele süreçler sonlandırılabilir ve bu da ciddi veri kayıplarına yol açabilir. Red Hat'ın belirlediği standartlara göre, swap alanı miktarı fiziksel RAM'in en az iki katı olmalıdır.

Swap Alanı Türleri

Sunucularda iki ana swap türü bulunmaktadır:

  • Swap Partition: Disk bölümü olarak ayrılmış swap alanı. En yüksek performansı sunar.
  • Swap File: Dosya sistemi üzerinde oluşturulan swap dosyası. Esneklik sağlar ancak partition kadar hızlı değildir.
  • zSwap: Sıkıştırılmış swap katmanı. Daha az disk I/O kullanır.
  • zRAM: RAM içinde sıkıştırılmış swap. SSD/HDD'ye yazmadan performans artırır.

Mevcut Swap Durumunu Kontrol Etme

Swap optimizasyonuna başlamadan önce mevcut durumu analiz etmelisiniz. Aşağıdaki komutlar swap yapılandırmanızı gösterir:

swapon --show
free -h
vmstat 1

swapon --show komutu aktif swap alanlarını listeler. free -h komutu ise toplam, kullanılan ve boş swap miktarını gigabyte cinsinden gösterir. vmstat 1 komutuyla saniyede bir güncellenen bellek ve swap I/O istatistiklerini takip edebilirsiniz.

Uzman görüşlerine göre, swap kullanımının %60'ın üzerine çıkması, sunucuda RAM yetersizliği anlamına gelir ve acil müdahale gerektirir.

Swap Alanı Oluşturma ve Yapılandırma

1. Swap File Oluşturma

Linux sunucularda kolayca swap file oluşturabilirsiniz. Öncelikle uygun boyutta bir dosya oluşturun:

fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

Bu örnekte 2GB'lık bir swap dosyası oluşturulmuştur. Sunucunuzun RAM miktarına göre boyutu ayarlayabilirsiniz. Güvenlik için dosya izinlerinin 600 olması kritiktir.

2. Swap Alanını Kalıcı Hale Getirme

Oluşturduğunuz swap alanının sistem her başladığında aktif olması için /etc/fstab dosyasına ekleme yapmalısınız:

echo '/swapfile none swap sw 0 0' | tee -a /etc/fstab

Bu satır, sistemin her açılışında swap dosyasını otomatik olarak etkinleştirir. Sunucu güvenliği açısından fstab yapılandırmasını düzenli olarak kontrol etmenizi öneririz.

3. Swap Değerlerini Ayarlama (swappiness)

swappiness parametresi, sistemin ne kadar agresif şekilde swap kullanacağını belirler. 0 ile 100 arasında değer alır:

  • 0: Swap kullanımını minimuma indirir (RAM dolana kadar swap kullanılmaz)
  • 60: Varsayılan değer
  • 100: Maksimum swap kullanımı

Performans için genellikle 10-30 arası değer önerilir:

sysctl vm.swappiness=10
echo 'vm.swappiness=10' >> /etc/sysctl.conf

Swap Performansını İyileştirme Yöntemleri

1. Swap Önceliklendirme

Birden fazla swap alanınız varsa, hangisinin önce kullanılacağını belirleyebilirsiniz:

swapon --priority 100 /swapfile1
swapon --priority 50 /swapfile2

Daha yüksek öncelikli swap alanı (örn. SSD) önce kullanılır. Cloud sunucu kullanıcıları için bu ayar özellikle önemlidir.

2. vfs_cache_pressure Optimizasyonu

Dentine (inode) ve dentry cache'lerin ne kadar agresif temizleneceğini kontrol eder:

sysctl vm.vfs_cache_pressure=50
echo 'vm.vfs_cache_pressure=50' >> /etc/sysctl.conf

Varsayılan değer 100'dür. Daha düşük değerler, dosya sistemi cache'ini daha uzun süre bellekte tutarak I/O performansını artırır.

3. Transparent Huge Pages (THP) Yönetimi

Büyük bellek sayfaları swap performansını etkileyebilir. Bazı durumlarda devre dışı bırakmak faydalı olabilir:

echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag

Bu ayarı kalıcı hale getirmek için init script'lerinize ekleme yapmanız gerekir.

Swap Kullanımını İzleme

Performans İzleme Araçları

Swap performansını sürekli izlemek için aşağıdaki araçları kullanabilirsiniz:

AraçKullanım Amacı
top/htopAnlık swap kullanımı ve süreç bazlı analiz
vmstatSwap I/O ve bellek istatistikleri
sarTarihsel performans verileri
iotopDisk I/O yoğunluklu süreçler

Örneğin, htop komutuyla sunucu kaynaklarını görsel olarak izleyebilir ve swap kullanım anomallerini tespit edebilirsiniz.

Swap Bellek Sızıntısı Tespiti

Swap kullanımının sürekli artması, bellek sızıntısı işareti olabilir. Şüpheli durumlarda:

ps aux --sort=-vsz | head -n 10

Bu komut, en fazla sanal bellek kullanan süreçleri listeler. Aşırı bellek tüketen süreçleri analiz ederek sorunu çözebilirsiniz.

Swap Optimizasyonu İçin En İyi Uygulamalar

Önerilen Swap Yapılandırması

Sunucu türüne göre önerilen swap yapılandırması:

RAM MiktarıÖnerilen SwapÖzel Kullanım
≤ 2GB2x RAMMinimum
2-8GB1x RAMGenel web sunucuları
8-64GB0.5x RAMVeritabanı sunucuları
≥ 64GB4GB veya daha azBüyük bellek gereksinimleri

Bu değerler genel önerilerdir. Uygulama gereksinimlerinize göre ayarlama yapmanız gerekebilir.

Swap Boyutunu Artırma veya Azaltma

Mevcut swap alanını değiştirmek için:

  1. Swap'ı devre dışı bırakın: swapoff -a
  2. Swap dosyasını yeniden boyutlandırın veya silin
  3. Yeni swap oluşturun ve etkinleştirin: swapon -a

Önemli: swapoff komutu çalışırken tüm swap alanı RAM'e aktarılır. Yeterli RAM yoksa sistem yanıt vermeyebilir.

SSD Kullanımı için Özel Notlar

SSD disklerde swap performansı çok daha yüksektir, ancak aşırı swap yazımı SSD ömrünü kısaltabilir. Bu nedenle:

  • Swappiness değerini düşük tutun (10-20)
  • zRAM kullanmayı düşünün
  • Monitorleme ile swap I/O'yu takip edin

Swap Hataları ve Çözümleri

"Out of Memory" Hatası

Bu hata, hem RAM hem de swap alanının dolduğunu gösterir. Çözüm için:

  • Çalışan süreçleri analiz edin ve gereksiz olanları sonlandırın
  • Swap alanını artırın
  • Sunucu RAM kapasitesini yükseltmeyi düşünün

Resource limit hataları konusunda detaylı bilgi almak için ilgili rehberimizi inceleyebilirsiniz.

Swap Aktif Olmuyor

Swap alanı oluşturduktan sonra aktif olmuyorsa:

chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

Dosya izinlerini ve dosya sistemi hatalarını kontrol edin.

Sonuç ve Öneriler

Sunucularda swap alanı optimizasyonu, sistem performansı ve güvenilirliği için kritik öneme sahiptir. Doğru yapılandırılmış swap alanı, RAM yetersizliğinde sistemin çökmesini önlerken, yanlış yapılandırma ciddi performans sorunlarına yol açabilir.

Özet olarak:

  • Sunucunuzun RAM miktarına göre uygun swap boyutu belirleyin
  • Swappiness değerini iş yüküne göre ayarlayın
  • Swap performansını düzenli olarak izleyin
  • SSD kullanıyorsanız swap I/O'yu optimize edin
  • Alternatif olarak zRAM gibi çözümleri değerlendirin

Sunucu altyapınızı güçlendirmek ve profesyonel hosting çözümleri hakkında bilgi almak için kurumsal hosting sayfamızı ziyaret edebilirsiniz. Memory optimizasyonu konusunda daha fazla bilgi için sunucu güvenliği rehberlerimizi de inceleyebilirsiniz.

library_booksBenzer İçerikler

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber
Sunucu Yönetimi
calendar_today5 Nisan 2026
schedule5 dk

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber

Cloud sunucular, dinamik kaynak dağıtımıyla işletmelerin kesintisiz büyümesini sağlar. Avantajlardan karşılaştırmalara tüm detaylar bu rehberde yer alıyor.

S
Serversiumarrow_forward
Linux vs Windows Sunucu: Hangisi Projeye Uygun?
Sunucu Yönetimi
calendar_today6 Nisan 2026
schedule5 dk

Linux vs Windows Sunucu: Hangisi Projeye Uygun?

Linux ve Windows Sunucu arasındaki teknik farkları, maliyet avantajlarını ve proje uyumluluğunu detaylı olarak karşılaştırıyoruz. Yazılım stack'inize en uygun işletim sistemini seçmek için kapsamlı rehberimizle doğru altyapı kararını verin.

S
Serversiumarrow_forward
Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber
Sunucu Yönetimi
calendar_today16 Nisan 2026
schedule5 dk

Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber

Ubuntu 24 üzerinde Plesk kurulumunu adım adım öğrenin. Bu rehberde sistem gereksinimleri, kurulum adımları ve temel yapılandırma ayarlarını bulabilirsiniz.

S
Serversiumarrow_forward