
Redis je otevřené úložiště dat klíč–hodnota v paměti. Může být použit jako databáze, mezipaměť a zprostředkovatel zpráv a podporuje různé datové struktury, jako jsou řetězce, hashe, seznamy, sady a další. Redis poskytuje vysokou dostupnost prostřednictvím Redis Sentinel a automatické dělení mezi více uzly Redis pomocí Redis Cluster.
V tomto tutoriálu probereme, jak nainstalovat a nakonfigurovat Redis na Debian 10, Buster.
Instalace Redis na Debian #
Redis verze 5.0.x je součástí výchozích úložišť Debian 10. Chcete-li jej nainstalovat, spusťte následující příkazy jako root nebo uživatel s právy sudo:
sudo apt update
sudo apt install redis-server
Po dokončení instalace se služba Redis automaticky spustí. Můžete to ověřit zadáním:
sudo systemctl status redis-server
Výstup by měl vypadat nějak takto:
● redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-11-28 14:15:23 PST; 27s ago
Docs: http://redis.io/documentation,
man:redis-server(1)
Main PID: 2024 (redis-server)
Tasks: 4 (limit: 2359)
Memory: 6.9M
CGroup: /system.slice/redis-server.service
└─2024 /usr/bin/redis-server 127.0.0.1:6379
Pokud je na vašem serveru zakázán protokol IPv6, služba Redis se nespustí. A je to! Redis je nainstalován a spuštěn na vašem serveru Debian 10 a můžete jej začít používat.
Konfigurace vzdáleného přístupu Redis #
Ve výchozím nastavení je Redis nakonfigurován tak, aby naslouchal pouze na localhost. K serveru Redis se můžete připojit pouze z počítače, na kterém běží služba Redis.
Pokud používáte nastavení jednoho serveru, kde klient připojující se k databázi také běží na stejném hostiteli, neměli byste povolovat vzdálený přístup.
Chcete-li nakonfigurovat Redis tak, aby přijímal vzdálená připojení, otevřete konfigurační soubor Redis pomocí textového editoru:
sudo vim /etc/redis/redis.conf
Vyhledejte řádek, který začíná bind 127.0.0.1 ::1
a okomentovat to.
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
# JUST COMMENT THE FOLLOWING LINE.
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# bind 127.0.0.1 ::1
Uložte soubor a zavřete editor.
Restartujte službu Redis, aby se změny projevily:
sudo systemctl restart redis-server
Použijte ss
nebo netstat
pro ověření, že Redis naslouchá na všech rozhraních na portu 6379
:
ss -an | grep 6379
Měli byste vidět něco jako níže:
tcp LISTEN 0 128 0.0.0.0:6379 0.0.0.0:*
tcp LISTEN 0 128 [::]:6379 [::]:*
Budete také muset přidat pravidlo brány firewall, které povolí provoz ze vzdálených počítačů na portu TCP 6379
.
Za předpokladu, že používáte UFW
ke správě firewallu a chcete povolit přístup z 192.168.121.0/24
subnet, spustíte následující příkaz:
sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379
Ujistěte se, že je váš firewall nakonfigurován tak, aby přijímal připojení pouze z důvěryhodných rozsahů IP.
Po dokončení použijte redis-cli
nástroj pro otestování připojení pomocí příkazu ping serveru Redis ze vzdáleného počítače:
redis-cli -h <REDIS_IP_ADDRESS> ping
Příkaz by měl vrátit odpověď PONG
:
PONG