Redis adalah penyimpanan struktur data dalam memori sumber terbuka. Ini dapat digunakan sebagai database, cache, dan perantara pesan serta mendukung berbagai struktur data seperti String, Hash, Daftar, Set, dll. Redis menyediakan ketersediaan tinggi melalui Redis Sentinel termasuk pemantauan, pemberitahuan Kegagalan otomatis. Ini juga menyediakan partisi otomatis di beberapa node Redis dengan Redis Cluster.
Tutorial ini menjelaskan cara menginstal dan mengkonfigurasi Redis di server Ubuntu 18.04. Instruksi yang sama berlaku untuk Ubuntu 16.04 dan semua distribusi berbasis Ubuntu.
Prasyarat #
Sebelum memulai tutorial, pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo.
Menginstal Redis di Ubuntu #
Paket Redis disertakan dalam repositori default Ubuntu 18.04. Instalasi cukup mudah, cukup ikuti langkah-langkah di bawah ini:
-
Mulailah dengan memperbarui daftar paket apt dengan menjalankan perintah berikut di terminal SSH Anda:
sudo apt update
-
Instal Redis dengan mengetik:
sudo apt install redis-server
-
Setelah instalasi selesai, layanan Redis akan mulai secara otomatis. Untuk memeriksa status layanan, masukkan perintah berikut:
sudo systemctl status redis-server
Anda akan melihat sesuatu seperti ini:
● redis-server.service - Advanced key-value store Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2018-10-28 05:10:45 PDT; 2h ago Docs: http://redis.io/documentation, man:redis-server(1) Process: 2197 ExecStop=/bin/kill -s TERM $MAINPID (code=exited, status=0/SUCCESS) Process: 2201 ExecStart=/usr/bin/redis-server /etc/redis/redis.conf (code=exited, status=0/SUCCESS) Main PID: 2226 (redis-server) Tasks: 4 (limit: 2319) CGroup: /system.slice/redis-server.service `-2226 /usr/bin/redis-server 0.0.0.0:6379
Selamat, pada titik ini Anda telah menginstal dan menjalankan Redis di server Ubuntu 18.04 Anda.
Konfigurasi Redis Remote Access #
Secara default, Redis tidak mengizinkan koneksi jarak jauh. Anda dapat terhubung ke server Redis hanya dari 127.0.0.1 (localhost) - mesin tempat Redis dijalankan.
Lakukan langkah-langkah berikut hanya jika Anda ingin terhubung ke server Redis Anda dari host jarak jauh. Jika Anda menggunakan pengaturan server tunggal, di mana aplikasi dan Redis berjalan pada mesin yang sama, maka Anda tidak boleh mengaktifkan akses jarak jauh.
Untuk mengonfigurasi Redis agar menerima koneksi jarak jauh, buka file konfigurasi Redis dengan editor teks Anda:
sudo nano /etc/redis/redis.conf
Cari baris yang dimulai dengan bind 127.0.0.1 ::1
dan ganti 127.0.0.1
dengan 0.0.0.0
.
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
# JUST COMMENT THE FOLLOWING LINE.
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bind 0.0.0.0 ::1
Simpan file dan tutup editor.
Mulai ulang layanan Redis agar perubahan diterapkan:
sudo systemctl restart redis-server
Gunakan perintah berikut untuk memverifikasi bahwa redis mendengarkan semua antarmuka pada port 6379
:
ss -an | grep 6379
Anda akan melihat sesuatu seperti di bawah ini. 0.0.0.0
berarti semua alamat IPv4 di mesin.
tcp LISTEN 0 128 0.0.0.0:6379 0.0.0.0:*
tcp LISTEN 0 128 [::]:6379 [::]:*
Selanjutnya, Anda harus menambahkan aturan firewall yang mengaktifkan lalu lintas dari mesin jarak jauh Anda pada port TCP 6379
.
Dengan asumsi Anda menggunakan UFW
untuk mengelola firewall Anda dan Anda ingin mengizinkan akses dari 192.168.121.0/24
subnet Anda akan menjalankan perintah berikut:
sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379
Pada titik ini, server Redis akan menerima koneksi jarak jauh pada port TCP 6379.
Pastikan firewall Anda dikonfigurasi untuk menerima koneksi hanya dari rentang IP tepercaya.
Untuk memverifikasi bahwa semuanya telah diatur dengan benar, Anda dapat mencoba melakukan ping ke server Redis dari mesin jarak jauh Anda menggunakan redis-cli
utilitas:
redis-cli -h <REDIS_IP_ADDRESS> ping
Perintah harus mengembalikan respons PONG
:
PONG