Cara Membuat Swap di VPS
Swap partition pada sistem operasi Linux adalah area penyimpanan yang digunakan sebagai tambahan bagi sistem untuk mengalihkan dan menyimpan data yang tidak aktif secara sementara dari memori fisik (RAM). Swap partition digunakan ketika memori RAM tidak mencukupi untuk menampung semua data dan program yang sedang berjalan.
Swap partition berperan sebagai perpanjangan memori virtual, dan digunakan oleh kernel Linux untuk menyimpan data yang jarang digunakan atau tidak aktif saat ini, dengan harapan bahwa data tersebut mungkin diperlukan nanti. Ketika data tersebut diperlukan lagi, kernel akan memindahkannya kembali ke memori fisik dan menukar data lain yang sedang aktif ke swap partition.
Swap partition umumnya diatur saat proses instalasi Linux, dan berfungsi sebagai area disk yang terpisah dari partisi root atau partisi lainnya. Ukuran swap partition biasanya disesuaikan dengan jumlah memori fisik yang ada pada sistem. Sebagai contoh, ukuran swap partition mungkin setara dengan dua kali jumlah memori fisik yang ada.
Swap partition dapat ditempatkan di partisi khusus yang didedikasikan untuk swap, atau dapat menggunakan file swap yang dibuat di dalam sistem berkas. Pilihan antara swap partition dan file swap bergantung pada preferensi dan konfigurasi sistem yang sedang digunakan.
Penggunaan swap partition di Linux dapat membantu mengurangi kemungkinan terjadinya kehabisan memori dan memungkinkan sistem untuk menjalankan aplikasi yang membutuhkan lebih banyak memori daripada yang tersedia secara fisik. Namun, penggunaan swap partition juga dapat mempengaruhi kinerja sistem jika terlalu sering terjadi swapping antara memori fisik dan swap partition. Oleh karena itu, perencanaan ukuran swap partition yang tepat penting untuk memastikan keseimbangan antara penggunaan memori dan kinerja sistem.
Membuat Swap di VPS
Dalam beberapa kasus, penyedia layanan VPS atau cloud mungkin tidak menyertakan swap partition secara default. Jika tidak ada swap partition yang disertakan, sistem operasi Linux masih dapat menggunakan mekanisme swap file sebagai alternatif. Swap file adalah file yang digunakan sebagai area swap daripada menggunakan partisi khusus. Dalam kasus ini, swap file dapat dibuat di file system yang ada.
Memverifikasi apakah swap aktif.
1 2 3 4 | free -h total used free shared buff/cache available Mem: 870Mi 319Mi 352Mi 7.0Mi 198Mi 407Mi Swap: 0B 0B 0B |
Pada hasil perintah di atas, swap tidak aktif.
Membuat swap file dengan ukuran 2GB.
1 | sudo fallocate -l 2G /swapfile |
Mengubah permission swapfile.
1 | sudo chmod 600 /swapfile |
Menjadikan swapfile sebagai swap.
1 | sudo mkswap /swapfile |
Mengaktifkan swap pada /swapfile
1 | sudo swapon /swapfile |
Memverifikasi swap.
1 2 3 4 | sudo swapon --show NAME TYPE SIZE USED PRIO /swapfile file 2G 0B -2 |
1 2 3 4 5 | free -h total used free shared buff/cache available Mem: 870Mi 255Mi 274Mi 4.0Mi 340Mi 480Mi Swap: 2.0Gi 0B 2.0Gi |
Auto Mount Swap
Agar Swap langsung aktif secara otomatis ketika sistem boot, tambahkan konfigurasi pada file fstab.
1 | sudo nano /etc/fstab |
Tambahkan pada baris paling bawah
1 | /swapfile none swap sw 0 0 |
Restart server, lalu cek kembali status swap.
Mengatur Swappiness
Swappiness adalah sebuah parameter yang ada di sistem operasi Linux yang mengendalikan kecenderungan kernel untuk menggunakan swap. Secara default, banyak distribusi Linux mengatur swappiness dengan nilai 60. Ini berarti sistem akan mulai menggunakan swap ketika sekitar 40% dari kapasitas RAM telah digunakan. Saat penggunaan memori meningkat di atas batas ini, kernel akan mulai memindahkan data yang tidak aktif dari RAM ke swap.
Menampilkan nilai swappiness yang aktif.
1 2 3 | cat /proc/sys/vm/swappiness 60 |
Mengubah nilai swappiness dapat mempengaruhi kinerja sistem. Jika kita mengatur nilai swappiness yang lebih rendah (misalnya 10), maka sistem akan cenderung mempertahankan lebih banyak data di memori fisik dan mengurangi penggunaan swap space. Ini dapat menguntungkan jika server memiliki cukup memori fisik, karena mengakses data dari memori fisik lebih cepat daripada dari swap pada disk.
Di sisi lain, mengatur nilai swappiness yang lebih tinggi (misalnya 80) akan mendorong sistem untuk lebih sering menggunakan swap. Ini mungkin bermanfaat jika server memiliki keterbatasan memori fisik dan ingin memastikan bahwa data yang tidak aktif segera dipindahkan ke swap untuk memberikan ruang kepada aplikasi yang lebih aktif.
Kita dapat mengubah nilai swappiness dengan mengubah file konfigurasi sysctl.conf.
Membuka file sysctl.conf.
1 | sudo nano /etc/sysctl.conf |
Tambahkan opsi swappiness.
1 | vm.swappiness=10 |
Restart server.
1 | sudo reboot |
Selamat mencoba 🙂