Memahami Swap Usage di Linux

Setiap kali saya login ke server, selalu muncul informasi seperti system load, CPU usage, memory usage, sampai swap usage. Awalnya saya hanya melihat sekilas tanpa terlalu memperhatikan, tapi lama-lama jadi penasaran, terutama di bagian swap usage yang angkanya kadang terlihat cukup besar dibanding yang lain.

Kalau system load atau memory usage masih cukup mudah dipahami, swap ini terasa agak “abu-abu”. Kadang nilainya tinggi, tapi server tetap terasa normal, tidak ada tanda-tanda lambat atau error. Dari situ mulai muncul pertanyaan, sebenarnya swap ini apa, kenapa bisa terpakai, dan apakah itu sesuatu yang harus dikhawatirkan atau tidak.

Karena penasaran, saya akhirnya coba cari tahu lebih dalam, bukan hanya dari sisi definisi, tapi juga bagaimana cara kerjanya di sistem Linux. Di sini saya jelaskan dari konsep sampai teknis, pakai sudut pandang real case supaya lebih mudah dipahami dan tidak terasa terlalu teoritis.


Apa Itu Swap?

Swap adalah bagian dari storage (disk) yang dipakai sebagai “memori cadangan” ketika RAM mulai penuh. Di sistem seperti Ubuntu, swap bisa berupa file atau partisi.

Secara sederhana:

  • RAM = cepat
  • Swap = lambat (karena di disk)

Ketika RAM tidak cukup, sistem akan memindahkan sebagian data dari RAM ke swap supaya sistem tetap jalan.


Cara Kerja Swap (Technically)

Linux menggunakan konsep virtual memory. Artinya, setiap proses tidak benar-benar tahu apakah datanya ada di RAM atau di swap.

Ketika RAM mulai penuh:

  1. Kernel akan mencari data yang jarang dipakai
  2. Data tersebut dipindahkan ke swap
  3. RAM jadi kosong untuk proses yang aktif

Kalau data yang sudah dipindahkan itu dibutuhkan lagi:

  1. Sistem akan ambil dari swap
  2. Dimasukkan kembali ke RAM

Masalahnya, proses ini jauh lebih lambat dibanding akses RAM, karena disk I/O jauh lebih lambat dari memory access.


Mengapa Swap bisa terpakai padahal RAM banyak?

Ini salah satu hal yang paling sering membingungkan. Secara logika, kalau RAM masih banyak, seharusnya swap tidak digunakan. Tapi kenyataannya tidak begitu.

Misalnya:

  • RAM sempat penuh sebelumnya
  • Sistem memindahkan data ke swap

Setelah itu:

  • RAM sudah lega lagi
  • Tapi data di swap tidak langsung dipindahkan balik

Jadi kondisi seperti ini bisa terjadi:

  • RAM masih banyak tersedia
  • Tapi swap usage tetap tinggi

Ini normal behavior di Linux, bukan bug.


Apa harus khawatir saat Swap tinggi?

Swap usage sering disalahartikan sebagai indikator bahwa server sedang dalam kondisi buruk. Padahal tidak selalu seperti itu. Nilai swap yang tinggi tidak otomatis berarti sistem bermasalah.

Kondisi normal

  • Swap terpakai sedikit
  • Sistem tetap responsif

Kondisi tidak normal

  • Swap tinggi
  • Server terasa lambat
  • Banyak delay saat akses aplikasi

Biasanya ini terjadi kalau:

  • RAM memang kurang
  • Aplikasi terlalu berat
  • Atau konfigurasi tidak optimal

Jadi swap usage lebih tepat dilihat sebagai indikator tambahan, bukan satu-satunya acuan.


Swappiness: Seberapa Agresif Swap Digunakan

Linux punya parameter bernama swappiness. Ini menentukan seberapa cepat sistem mulai menggunakan swap.

Cek nilai:

# cat /proc/sys/vm/swappiness

Nilai default biasanya:

Interpretasi:

  • Nilai tinggi → swap lebih sering dipakai
  • Nilai rendah → lebih mengutamakan RAM

Untuk VPS kecil, biasanya lebih aman pakai:

vm.swappiness=10

Tujuannya supaya sistem tidak terlalu cepat “buang data” ke swap.

Ubah dengan command:

# sysctl vm.swappiness=10


Melihat Penggunaan Swap

Ketikkan di CLI:

# free -h

Output:

Artinya:

  • Total swap: 255MB
  • Terpakai: 200MB
  • Padahal penggunaan RAM 437 MB dan available ~523 MB

Reset Swap

Kalau swap sudah tinggi tapi RAM sebenarnya masih lega, kamu bisa reset swap:

# swapoff -a && swapon -a

Apa yang terjadi:

  • Semua data di swap dipindahkan kembali ke RAM
  • Swap jadi kosong

Catatan:
Pastikan RAM cukup sebelum menjalankan ini.


Jenis Swap: File vs Partisi

1. Swap Partition

  • Dibuat saat install OS
  • Lebih stabil
  • Lebih jarang dipakai di VPS modern

2. Swap File

  • Dibuat manual
  • Fleksibel (bisa resize)
  • Paling umum di VPS

Contoh membuat swap file:

fallocate -l 512M /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

Kapan Swap Dibutuhkan

Swap tetap penting, terutama di VPS kecil:

  • Mencegah sistem crash saat RAM habis
  • Memberi “buffer” untuk lonjakan beban
  • Menghindari OOM (Out Of Memory Killer)

Tanpa swap, kalau RAM habis:

  • proses bisa langsung dimatikan paksa

Akhir Kata Rafi

Swap bukan musuh, tapi juga bukan sesuatu yang bisa diabaikan.

  • Swap adalah backup saat RAM tidak cukup
  • Swap lambat karena berbasis disk
  • Swap usage tinggi tidak selalu berarti masalah
  • Tapi kalau disertai lag, itu tanda harus optimasi

Untuk VPS kecil:

  • gunakan swap secukupnya
  • turunkan swappiness
  • dan pastikan konfigurasi service efisien

Kalau dipahami dengan benar, swap justru membantu menjaga sistem tetap stabil, bukan sebaliknya.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *