Redis je použité úložiště datové struktury párů klíč–hodnota s otevřeným zdrojovým kódem (s licencí BSD) v paměti jako databáze, mezipaměť a zprostředkovatel zpráv. Redis podporuje datové struktury, jako jsou řetězce, hash, seznamy, sady, tříděné sady s dotazy na rozsah, bitmapy, protokoly hyperlogů, geoprostorové indexy a proudy. Redis také poskytuje vysokou dostupnost se softwarovou logikou Redis Sentinel a vytváří automatické dělení mezi uzly Redis pomocí Redis Cluster.
Na konci průvodce budete vědět, jak nainstalovat a nakonfigurovat Redis na vašem Debian 11 Bullseye operační systém.
Předpoklady
- Doporučený operační systém: Debian 11 Bullseye nebo vyšší
- Uživatelský účet: Uživatelský účet s sudo nebo root přístup.
Aktualizujte operační systém
Aktualizujte svůj Debian operační systém, abyste se ujistili, že všechny existující balíčky jsou aktuální:
sudo apt update && sudo apt upgrade -y
Výukový program bude používatpříkaz sudo a za předpokladu, že máte status sudo . Chcete-li ověřit stav sudo na vašem účtu:
sudo whoami
Ukázkový výstup zobrazující stav sudo:
[joshua@debian ~]$ sudo whoami
root
Pokud jste si nenastavili uživatelský účet sudo a chtěli byste to udělat, navštivte náš návod Jak přidat uživatele do Sudoers v Debianu.
Chcete-li použít rootový účet , použijte k přihlášení následující příkaz s heslem uživatele root.
su
Root nebo Sudo Access
Ve výchozím nastavení, když vytvoříte svůj účet při spuštění s Debianem v porovnání s jinými distribucemi, automaticky nezíská status sudoers. Musíte mít buď přístup k heslu uživatele root použijte příkaz su nebo navštivte náš tutoriál Jak přidat uživatele do Sudoers na Debianu.
Nainstalujte Redis
Ve výchozím nastavení je řada Redis 5 součástí repozitářů Debianu 11. Chcete-li nainstalovat službu Redis, zadejte následující příkaz:
sudo apt install redis-server
Příklad výstupu:
Zadejte Y, poté stiskněte KLÁVESU ENTER pokračujte v instalaci.
Ověřte, zda byl Redis správně nainstalován, ověřením pomocí příkazu zásad apt-cache:
sudo apt-cache policy redis-server
Příklad výstupu:
Dále ověřte stav a ujistěte se, že Redis běží, a co je důležitější, bez chyb:
systemctl status redis-server
Příklad výstupu:
Poznámka:Reddis aktivně naslouchá localhost na výchozím portu 6379 . Chcete-li tento typ potvrdit, postupujte takto:
ps -ef | grep redis
Příklad výstupu:
root@debian:/home/joshua# ps -ef | grep redis
redis 5048 1 0 09:23 ? 00:00:00 /usr/bin/redis-server 127.0.0.1:6379
root 5563 3653 0 09:25 pts/0 00:00:00 grep redis
Nyní, když testujete, že vše funguje a funguje, je dobré se připojit ke službě Redis a poté provést test ping.
Chcete-li provést test, zadejte následující příkaz:
redis-cli
Po připojení se na vašem terminálu zobrazí (127.0.0.1:6379). Nyní ping na službu Redis následovně:
ping
Příklad výstupu:
127.0.0.1:6379> ping
PONG
Pro ukončení instance Redis zadejte následující:
exit
Gratulujeme, nainstalovali jste Redis na svůj operační systém Debian 11 Bullseye a ověřili jste, že je funkční. Dále můžete nakonfigurovat Redis.
Jak nakonfigurovat Redis
Redis lze konfigurovat několika způsoby. Nejpozoruhodnější akce, proč lidé používají Redis, je pro účely ukládání do mezipaměti. Chcete-li to provést, musíte otevřít “/etc/redis/redis.conf ” soubor pomocí nano editoru.
sudo nano /etc/redis.conf
Konfigurace maximální paměti
Nyní přidejte následující na konec souboru. Pamatujte, že hodnotu paměti můžete změnit na libovolnou, nebo, což je důležitější, optimální pro vaši webovou aplikaci a hardware serveru.
maxmemory 500mb
maxmemory-policy allkeys-lru
Jak můžete vidět, nastavení v průvodci má 500 MB vyhrazených pro Redis, protože je na vyhrazeném hostiteli se spoustou paměti RAM. Jakmile je vyčerpáno 500 MB, Redis odstraní jakýkoli klíč podle algoritmu LRU.
Konfigurace síťového přístupu
Další možností je poslouchat všechny služby nebo nastavit IP adresu/podsíť, pokud se vám služba Redis líbí.
Nejprve najděte řádek 69 v konfiguračním souboru.
Chcete-li nejprve poslouchat všechna síťová rozhraní, okomentujte „#“ linka se váže na IP:
Příklad:
# bind 127.0.0.1 ::1
Alternativní metoda:
bind 0.0.0.0/0
Poznámka:Ujistěte se, že je vaše interní síť důvěryhodná a že jsou na místě příslušné bezpečnostní kontroly.
Chcete-li se vázat na IP adresu, ujistěte se, že se jedná o statickou IP adresu.
Příklad:
bind 192.150.5.2
Chcete-li svázat síťovou podsíť.
Příklad:
bind 192.150.5.0/24
Všimněte si, že se důrazně doporučuje nastavit heslo při používání podsítě nebo přístupu ke všem rozhraním k poslechu.
Konfigurovat heslo
Další bezpečnostní funkcí a pro další posílení Redis je nastavení hesla na instanci Redis.
Přejděte na řádek 507 a odkomentujte „# requiredpass“ a nastavte heslo.
Příklad:
requiredpass APASSWORD
Ujistěte se, že toto heslo je robustní, čísla, písmena, speciální symboly a velká písmena jsou náhodná, protože servery Redis mohou být velmi dobře násilně vynuceny na slušné krabici.
Dále při vyvolání Redis-CLI použijte následující příkaz s heslem, které bylo nastaveno pro uživatele.
Příklad:
auth THEPASSWORDSET
„THEPASSWORDSET“ je heslo, které bylo vytvořeno.
Když se uživateli nepodaří přihlásit, zobrazí se mu následující chybová zpráva.
(error) NOAUTH Authentication required.
Když se uživatel úspěšně přihlásí, zobrazí se mu následující zpráva.
OK
Po dokončení uložte změny CTRL+O poté ukončete CTRL+X . Nyní restartujte službu Redis zadáním:
sudo systemctl restart redis-server
Volitelné – Konfigurace pravidel Redis UFW
Pokud máte nainstalovaný UFW, musíte vytvořit pravidla pro povolení UFW na TCP portu 6379. V závislosti na vaší instalaci a požadavcích, zda používáte singulární nebo v klastrové síti.
Nejprve, pokud chcete nainstalovat UFW, použijte následující příkaz:
sudo apt install ufw -y
Po instalaci povolte firewall.
sudo ufw enable
Tím se spustí firewall a umožní restart systému. Ve výchozím nastavení jsou pravidla odmítnout všechny příchozí a povolit všechny odchozí.
Dále postupujte podle níže uvedených příkladů a vyberte nebo upravte možnosti. To se důrazně doporučuje pro vytvrzení Redis.
Instance serveru IP další sítě:
sudo ufw allow proto tcp from <ip address> to any port 6379
Clusterová síť s mnoha instancemi:
sudo ufw allow proto tcp from <ip address>/24 to any port 6379
Všimněte si, že druhé pravidlo UFW je pravidlo podsítě. Poznámka:Než to povolíte, ujistěte se, že je interní síť bezpečná a důvěryhodná.
Nyní, jak jste testovali na začátku příručky pomocí příkazu ping vaší služby Redis, abyste se ujistili, že je funkční, můžete vyzkoušet pravidla brány firewall a změny v IP pomocí “redis-cli“ příkaz:
redis-cli -h <ip address> ping
Při správném nastavení by výstup měl být:
pong