Valkey - průvodce pro začátečníky
Valkey je open-source vysoce výkonné úložiště dat v paměti – fork Redis kompatibilní se všemi klienty a knihovnami Redis. Běžně se používá pro cache, ukládání relací, fronty zpráv a analytiku v reálném čase. Server obsahuje plně nakonfigurovaný Valkey s heslem, které jste zadali při objednávce.
Krok 1 – Ověřte, že Valkey funguje
IP adresa a heslo root vašeho serveru jsou uvedeny na stránce Server Details v klientském panelu. Připojte se k serveru přes SSH a pomocí valkey-cli ověřte, že služba běží:
ssh root@your.server.ip
valkey-cli -a your_password
Základní příkazy pro ověření, že vše funguje:
# Test connection
PING
# Expected: PONG
# Store and retrieve a value
SET mykey "Hello Valkey"
GET mykey
# Check server info
INFO server
Valkey je backendová služba a nepotřebuje veřejný přístup z internetu. Pro bezpečný přístup umístěte server do privátní sítě za router VyOS a k Valkey se připojujte přes VPN na privátní IP serveru.
Krok 2 – Připojení z vaší aplikace
Valkey přijímá vzdálená připojení na portu 6379. Je plně kompatibilní s klienty Redis – ve své aplikaci použijte libovolnou knihovnu Redis:
| Parametr | Hodnota |
|---|---|
| Hostitel | your.server.ip |
| Port | 6379 |
| Heslo | your_password (z objednávky) |
Formát připojovacího řetězce:
redis://default:your_password@your.server.ip:6379
Příklad – Python:
import redis
r = redis.Redis(host='your.server.ip', port=6379, password='your_password')
r.set('key', 'value')
print(r.get('key'))
Příklad – Node.js:
const Redis = require('ioredis');
const client = new Redis({
host: 'your.server.ip',
port: 6379,
password: 'your_password'
});
Poznámka: Port 6379 je protokol Valkey/Redis – v prohlížeči ho otevřít nelze. Použijte klientskou knihovnu nebo valkey-cli.
Krok 3 – Připojení přes grafický nástroj (volitelné)
Ke správě serveru Valkey můžete použít libovolný grafický nástroj kompatibilní s Redis:
- Another Redis Desktop Manager (ARDM) – zdarma, multiplatformní
- Redis Commander – webový, licence MIT
- Medis – macOS
Použijte stejné údaje pro připojení jako v kroku 2 (host, port 6379, heslo).
Typické použití
Cache
Použijte Valkey jako vrstvu cache pro webovou aplikaci a snižte zátěž databáze:
# Set a value with 1 hour expiration (3600 seconds)
SET page:home "<html>..." EX 3600
# Check remaining time to live
TTL page:home
Ukládání relací
Ukládejte uživatelské relace ve Valkey pro rychlý přístup napříč více aplikačními servery:
# Store session data (hash)
HSET session:abc123 user_id 42 role admin
EXPIRE session:abc123 1800
# Retrieve session
HGETALL session:abc123
Fronta zpráv
Použijte seznamy Valkey jako jednoduchou frontu zpráv:
# Producer: add tasks to queue
LPUSH tasks '{"type":"email","to":"user@example.com"}'
# Consumer: wait for and process tasks
BRPOP tasks 0
Po instalaci
Fail2Ban – ochrana proti útokům hrubou silou
Váš server obsahuje Fail2Ban předkonfigurovaný k ochraně SSH proti útokům hrubou silou.
| Pravidlo | Max. počet pokusů | Doba blokace |
|---|---|---|
| SSH | 5 neúspěšných přihlášení | 10 minut |
Užitečné příkazy:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
Pokud se omylem zablokujete, připojte se přes konzoli VNC v klientském panelu a odblokujte svou IP.
Správa služeb
Valkey běží přes systemd. Běžné příkazy:
# Check service status
systemctl status valkey-server
# Restart Valkey
systemctl restart valkey-server
# View Valkey logs
journalctl -u valkey-server -n 100
Ladění výkonu
Valkey se při prvním startu automaticky vyladí. Aktuální nastavení zjistíte takto:
valkey-cli -a your_password INFO memory
valkey-cli -a your_password CONFIG GET maxmemory
valkey-cli -a your_password CONFIG GET maxmemory-policy
Úprava maxmemory (např. na 2 GB):
valkey-cli -a your_password CONFIG SET maxmemory 2gb
valkey-cli -a your_password CONFIG REWRITE
Dostupné zásady vyřazování: allkeys-lru (výchozí), volatile-lru, allkeys-lfu, noeviction. Použijte noeviction pokud chcete, aby Valkey při zaplnění paměti vracel chyby místo odstraňování klíčů.
Perzistence
Valkey ve výchozím stavu ukládá data na disk pomocí snímků RDB. Data přežijí restart serveru. Stav perzistence zjistíte takto:
valkey-cli -a your_password INFO persistence
Zapnutí AOF (Append Only File) pro odolnější perzistenci:
valkey-cli -a your_password CONFIG SET appendonly yes
valkey-cli -a your_password CONFIG REWRITE
AOF zaznamenává každou zápisovou operaci. V kombinaci s RDB poskytuje nejspolehlivější ochranu dat.
Změna hesla
Změna hesla Valkey:
valkey-cli -a current_password CONFIG SET requirepass new_password
valkey-cli -a new_password CONFIG REWRITE
Aktualizujte /root/.valkey_credentials s novým heslem pro referenci.
Přihlašovací údaje serveru
Přihlašovací údaje Valkey jsou uloženy v /root/.valkey_credentials.
Co je předkonfigurováno
- Vzdálený přístup: Valkey přijímá připojení z libovolné IP na portu 6379 (vyžaduje heslo)
- maxmemory: Automaticky nastaveno na 75 % dostupné RAM při prvním startu
- Zásada vyřazování: allkeys-lru – při dosažení limitu paměti se odstraňují nejdéle nepoužité klíče
- Perzistence: Snímky RDB zapnuté ve výchozím stavu (automatické zálohy stavu na disk)
- Ladění systému: vm.overcommit_memory, somaxconn a Transparent Huge Pages optimalizované pro Valkey
Zahrnutý software
| Komponenta | Verze |
|---|---|
| Ubuntu | 24.04 LTS |
| Valkey | 7.2 |
| Fail2Ban | 1.0 |
Řešení problémů
| Problém | Řešení |
|---|---|
| Nelze se vzdáleně připojit k Valkey | Zkontrolujte, že port 6379 neblokuje firewall. Ověřte bind 0.0.0.0 v /etc/valkey/valkey.conf |
| NOAUTH Authentication required | Zadejte heslo: valkey-cli -a your_password nebo AUTH your_password. Zkontrolujte /root/.valkey_credentials |
| OOM command not allowed | Dosažen limit paměti. Zvyšte maxmemory nebo změňte zásadu vyřazování. Kontrola využití: valkey-cli -a pass INFO memory |
| Valkey se nespustí | Kontrola logů: journalctl -u valkey-server -n 50. Častá příčina: neplatná konfigurace nebo plný disk (df -h /) |
| Zapomenuté heslo Valkey | Připojte se přes SSH a zkontrolujte /root/.valkey_credentials |
| Blokováno službou Fail2Ban | Odblokujte svou IP přes konzoli VNC v klientském panelu |
| Zapomenuté heslo root | Obnovte jej přes konzoli VNC v klientském panelu |