Swap adalah ruang pada disk yang digunakan ketika jumlah memori RAM fisik penuh. Ketika sistem Linux kehabisan RAM, halaman tidak aktif dipindahkan dari RAM ke ruang swap.

Swap di Centos 7
Swap di Centos 7

Swap space dapat berbentuk partisi swap khusus atau file swap. Dalam kebanyakan kasus ketika menjalankan CentOS pada mesin virtual, partisi swap tidak ada sehingga satu-satunya pilihan adalah membuat file swap.

Pada tutorial ini akan dijelaskan cara menambahkan file swap pada sistem CentOS 7.

Contents

Persiapan

Sebelum memulai tutorial sesuai judul, perlu diperiksa apakah instalasi CentOS Anda telah mengaktifkan swap dengan mengetik:

 $ sudo swapon --show 

Jika output kosong, maka ruang swap belum diaktifkan pada sistem Anda. Tapi jika output yang ada seperti di bawah ini, maka swap telah aktif:

NAME      TYPE      SIZE USED PRIO
/dev/dm-1 partition 1.5G   0B   -1

Merupakan hal yang tidak wajar memiliki beberapa ruang swap pada satu sistem (meskipun memungkinkan untuk melakukannya).

Membuat Swap di Centos 7

User yang Anda gunakan harus memiliki hak akses sudo untuk dapat mengaktifkan swap. Dalam tutorial ini, kami akan menambahkan 1G swap, jika Anda ingin menambahkan lebih banyak swap, ganti 1G dengan ukuran ruang swap yang Anda butuhkan.

Ikuti langkah-langkah di bawah ini untuk menambahkan ruang swap pada sistem CentOS 7.

01. Pertama, buat file yang akan digunakan sebagai ruang swap:

$ sudo fallocate -l 1G /swapfile 

Jika utilitas  fallocate  tidak tersedia dalam sistem Anda atau Anda mendapatkan pesan error yang mengatakan fallocate failed: Operation not supported, gunakan perintah berikut untuk membuat file swap:

$ sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576 

02. Pastikan hanya user root yang dapat membaca dan menulis file swap dengan mengatur perizinan akses yang benar:

$ sudo chmod 600 /swapfile 

03. Selanjutnya, siapkan area swap Linux pada file:

$ sudo mkswap /swapfile 

04. Jalankan perintah berikut untuk mengaktifkan swap:

$ sudo swapon /swapfile 

Buat perubahan itu permanen dengan membuka file /etc/fstab:

$ sudo nano /etc/fstab 

lalu tambahkan perintah berikut:

/etc/fstab
/swapfile swap swap defaults 0 0

05. Verifikasi bahwa swap aktif dengan 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 
Output
              total        used        free      shared  buff/cache   available
Mem:           488M        158M         83M        2.3M        246M        217M
Swap:          1.0G        506M        517M

Menyesuaikan 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, sementara nilai yang lebih tinggi akan membuat kernel untuk menggunakan ruang swap lebih agresif.

Nilai swappiness default pada CentOS 7 adalah 30. Anda dapat memeriksa nilai swappiness saat ini dengan mengetik perintah berikut:

$ cat /proc/sys/vm/swappiness 
Output
30

Nilai swappiness 30 sudah cukup untuk desktop dan mesin pengembangan, sementara untuk server produksi diperlukan nilai yang lebih rendah.

Misalnya, untuk mengatur nilai swappiness ke 10, ketik:

$ sudo sysctl vm.swappiness=10 

Untuk membuat parameter ini persisten di seluruh reboot, tambahkan perintah berikut ke file /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 yang optimal.

Menghapus File Swap

Untuk menonaktifkan dan menghapus file swap, ikuti langkah-langkah ini:

01. Mulailah dengan menonaktifkan ruang swap dengan mengetik:

$ sudo swapoff -v /swapfile 

02. Selanjutnya, hapus entri file swap  /swapfile swap swap defaults 0 0 dari file /etc/fstab 

03. Terakhir, hapus file swapfile yang sebenarnya dengan rm:

$ sudo rm /swapfile