Swap space adalah bagian dari hard disk yang digunakan saat memori RAM penuh. Ketika sistem Linux kehabisan memori fisik (RAM), halaman yang tidak aktif (aplikasi background, tabs browser, dll) akan dipindahkan dari RAM ke Swap.

Swap space dapat berupa partisi khusus swap atau bisa juga berupa file swap. Biasanya, ketika menjalankan CentOS pada virtual machine, partisi swap tidak ada, jadi satu-satunya pilihan adalah membuat file swap.

Artikel ini mencakup langkah-langkah untuk menambahkan file swap pada sistem CentOS 8.

Membuat dan Mengaktifkan Swap File

Lakukan langkah-langkah berikut sebagai root atau user dengan hak sudo untuk menambahkan swap pada sistem CentOS 8.

  1. Mulailah dengan membuat file yang akan berfungsi sebagai ruang swap:
    sudo fallocate -l 1G /swapfile

    Dalam contoh ini, kita membuat file swap dengan ukuran 1G. Jika Anda ingin menambahkan 2GB, ganti 1G dengan 2G.

    Jika fallocate tidak terinstal, atau jika Anda mendapatkan pesan error fallocate failed: Operation not supported maka Anda dapat menggunakan perintah berikut untuk membuat file swap:

    sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
  2. Tetapkan izin yang benar. Hanya root yang dapat menulis dan membaca file swap.
    sudo chmod 600 /swapfile
  3. Selanjutnya, siapkan area swap Linux pada file:
    sudo mkswap /swapfile
    Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
    no label, UUID=0abdb8ba-57d6-4435-8fd8-5db9fc705045
  4. Aktifkan file swap dengan perintah berikut:
    sudo swapon /swapfile
  5. Verifikasi status swap. Untuk memverifikasi bahwa swap aktif, kita dapat menggunakan swapon atau perintah free seperti yang ditunjukkan di bawah ini:
    sudo swapon --show
    NAME      TYPE  SIZE   USED PRIO
    /swapfile file 1024M 507.4M   -1
    sudo free -h
                  total        used        free      shared  buff/cache   available
    Mem:           488M        158M         83M        2.3M        246M        217M
    Swap:          1.0G        506M        517M
  6. Untuk membuat perubahan permanen, buka file /etc/fstab dan tambahkan baris berikut:
    sudo nano /etc/fstab

    Kemudian Copy dan Paste konten berikut :

    /swapfile swap swap defaults 0 0

Optimalkan nilai swappiness

Swappiness adalah properti kernel Linux yang menentukan seberapa sering sistem akan menggunakan ruang swap. Swappiness dapat memiliki nilai antara 0 dan 100.

Nilai yang rendah akan membuat kernel mencoba menghindari bertukar kapan pun memungkinkan, sementara nilai yang lebih tinggi akan membuat kernel menggunakan ruang swap lebih agresif.

Nilai swappiness default di CentOS 8 adalah 30. Anda dapat memeriksa nilai swappiness saat ini dengan mengetik perintah cat berikut

cat /proc/sys/vm/swappiness
30

Sementara, nilai swappiness 30 sudah cukup untuk komputer Desktop, untuk server produksi Anda mungkin perlu menetapkan nilai yang lebih rendah.

Misalnya, untuk mengatur nilai swappiness ke 10, ketik:

sudo sysctl vm.swappiness=10

Untuk membuat parameter ini permanen, tambahkan baris berikut ke file /etc/sysctl.conf:

sudo nano /etc/sysctl.conf
vm.swappiness=10

Nilai swappiness optimal tergantung pada beban kerja sistem Anda dan bagaimana memori digunakan. Anda harus menyesuaikan parameter ini sedikit demi sedikit untuk menemukan nilai optimal yang sesuai dengan kebutuhan Anda.

Cara menghapus Swap File

Jika karena suatu alasan Anda ingin menonaktifkan dan menghapus file swap, ikuti langkah-langkah ini:

  1. Non-aktifkan swap dengan menggunakan perintah berikut:
    sudo swapoff -v /swapfile
  2. Hapus entri berikut dari file /etc/fstab.
    /swapfile swap swap defaults 0 0
  3. Terakhir hapus file swapfile dengan perintah rm:
    sudo rm /swapfile

Kesimpulan

Anda telah belajar cara membuat file swap dan mengaktifkan dan mengkonfigurasi ruang swap pada sistem  CentOS 8 system.