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 Ubuntu 20.04 operační systém.
Předpoklady
- Doporučený operační systém: Ubuntu 20.04 nebo vyšší
- Uživatelský účet: Uživatelský účet s sudo nebo root přístup.
Aktualizujte operační systém
Aktualizujte své Ubuntu 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@ubuntu ~]$ 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 na Ubuntu .
Chcete-li použít rootový účet , použijte k přihlášení následující příkaz s heslem uživatele root.
su
Nainstalujte Redis
Ve výchozím nastavení je řada Redis 5 součástí úložišť Ubuntu 20.04. 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 „ENTER KEY“ 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:
joshua@ubuntu:~$ ps -ef | grep redis
redis 8346 1 0 21:40 ? 00:00:00 /usr/bin/redis-server 127.0.0.1:6379
joshua 9058 7363 0 21:40 pts/0 00:00:00 grep --color=auto 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 do svého operačního systému Ubuntu a ověřili, ž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
Konfigurace pravidel UFW
Pokud používáte firewall UFW nainstalovaný ve výchozím nastavení v distribucích Ubuntu, budete muset vytvořit pravidla povolení na portu TCP 6379. V závislosti na vaší instalaci a požadavcích, pokud používáte singulární nebo v klastrové síti, jsou některé příklady níže:
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