Memcached adalah software free dan open source yang menyimpan cache dalam memory. Memcached paling sering digunakan untuk mempercepat aplikasi dengan caching berbagai objek dari hasil panggilan database.

Dalam tutorial ini, kita akan membahas proses install dan mengkonfigurasi Memcached versi terbaru di CentOS 8.

Install Memcached di CentOS

Paket memcached disertakan dalam repositori default CentOS 8. Instalasi cukup mudah, masukkan perintah berikut sebagai root atau user dengan hak akses sudo:

sudo dnf install memcached libmemcached

Paket libmemcached menyediakan beberapa alat baris perintah untuk mengelola server Memcached.

Setelah instalasi selesai, aktifkan dan mulai layanan Memcached dengan mengetik:

sudo systemctl enable memcached --now

Untuk memverifikasi bahwa memcached berjalan, ketik:

sudo systemctl status memcached

Outputnya akan terlihat seperti ini:

● memcached.service - memcached daemon
   Loaded: loaded (/usr/lib/systemd/system/memcached.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-04-13 20:12:52 UTC; 2s ago
   ...

Itu saja, Anda telah menginstal Memcached di server CentOS 8 dan Anda dapat mulai menggunakannya.

Konfigurasi Memcached

Opsi memcached dapat dikonfigurasi dalam file /etc/sysconfig/memcached. Secara default, Memcached diatur untuk hanya listen di localhost.

Jika klien yang terhubung ke server juga berjalan di host yang sama (localhost), Anda tidak perlu melakukan perubahan.

Remote Access

Jika aplikasi yang akan terhubung ke Memcached di-host di server jauh (remote server), Anda perlu mengkonfigurasi firewall Anda dan mengizinkan akses ke port Memcached 11211 hanya dari alamat IP klien.

Ketika Memcached yang dikonfigurasi dengan benar, dapat digunakan untuk melakukan serangan distributed denial-of-service (DDoS).

Contoh berikut mengasumsikan bahwa Anda ingin terhubung ke server Memcached melalui private network. IP server Memcached adalah 192.168.100.20, dan alamat IP klien adalah 192.168.100.30.

Langkah pertama adalah mengedit konfigurasi Memcached dan mengatur layanan untuk listen pada antarmuka private network server:

Buka file konfigurasi memcached:

sudo nano /etc/sysconfig/memcached

Pada parameter OPTIONS, tambahkan alamat IP server 192.168.100.20. Ini menginstruksikan Memcached untuk bind hanya interface yang ditentukan.

OPTIONS="-l 192.168.100.20"

Simpan file dan restart layanan Memcached agar perubahan diterapkan:

sudo systemctl restart memcached

Setelah layanan dikonfigurasi, langkah selanjutnya adalah membuka port  memcached di firewall Anda.

CentOS dilengkapi dengan alat konfigurasi firewall FirewallD. Perintah di bawah ini akan membuat zona baru bernama memcached, buka port 11211 dan izinkan akses hanya dari alamat IP klien.

sudo firewall-cmd --new-zone=memcached --permanent
sudo firewall-cmd --zone=memcached --add-port=11211/udp --permanent
sudo firewall-cmd --zone=memcached --add-port=11211/tcp --permanent
sudo firewall-cmd --zone=memcached --add-source=192.168.100.30/32 --permanent
sudo firewall-cmd --reload.

Terhubung ke Memcached

Untuk terhubung ke server Memcached Anda harus menggunakan client untuk bahasa khusus.

PHP

Untuk menggunakan Memcached sebagai database caching untuk aplikasi PHP Anda seperti WordPress, Drupal, atau Magento, Anda perlu menginstal ekstensi php-pecl-memcached:

sudo apt install php-pecl-memcache

Python

Ada beberapa libraries Python untuk berinteraksi dengan memcached. Anda dapat menginstal perpustakaan pilihan Anda menggunakan Python pip:

pip install pymemcache
pip install python-memcached

Kesimpulan

Kami telah menunjukkan kepada Anda cara install Memcached di CentOS 8. Untuk informasi lebih lanjut tentang topik ini, lihat halaman Memcached Wiki.