Valkey - príručka pre začiatočníkov
Valkey je open-source vysoko výkonné úložisko dát v pamäti – fork Redis kompatibilný so všetkými klientmi a knižnicami Redis. Bežne sa používa na cache, ukladanie relácií, fronty správ a analytiku v reálnom čase. Server obsahuje plne nakonfigurovaný Valkey s heslom, ktoré ste zadali pri objednávke.
Krok 1 – Overte, že Valkey funguje
IP adresa a heslo root vášho servera sú uvedené na stránke Server Details v klientskom paneli. Pripojte sa k serveru cez SSH a pomocou valkey-cli overte, že služba beží:
ssh root@your.server.ip
valkey-cli -a your_password
Základné príkazy na overenie, že všetko 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 nepotrebuje verejný prístup z internetu. Na bezpečný prístup umiestnite server do privátnej siete za router VyOS a k Valkey sa pripájajte cez VPN na privátnu IP servera.
Krok 2 – Pripojenie z vašej aplikácie
Valkey prijíma vzdialené pripojenia na porte 6379. Je plne kompatibilný s klientmi Redis – vo svojej aplikácii použite ľubovoľnú knižnicu Redis:
| Parameter | Hodnota |
|---|---|
| Hostiteľ | your.server.ip |
| Port | 6379 |
| Heslo | your_password (z objednávky) |
Formát pripojovacieho reťazca:
redis://default:your_password@your.server.ip:6379
Príklad – Python:
import redis
r = redis.Redis(host='your.server.ip', port=6379, password='your_password')
r.set('key', 'value')
print(r.get('key'))
Prí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 prehliadači ho otvoriť nemožno. Použite klientsku knižnicu alebo valkey-cli.
Krok 3 – Pripojenie cez grafický nástroj (voliteľné)
Na správu servera Valkey môžete použiť ľubovoľný grafický nástroj kompatibilný s Redis:
- Another Redis Desktop Manager (ARDM) – zadarmo, multiplatformový
- Redis Commander – webový, licencia MIT
- Medis – macOS
Použite rovnaké údaje na pripojenie ako v kroku 2 (host, port 6379, heslo).
Typické použitie
Cache
Použite Valkey ako vrstvu cache pre webovú aplikáciu a znížte záťaž databázy:
# Set a value with 1 hour expiration (3600 seconds)
SET page:home "<html>..." EX 3600
# Check remaining time to live
TTL page:home
Ukladanie relácií
Ukladajte používateľské relácie vo Valkey na rýchly prístup naprieč viacerými aplikačnými servermi:
# Store session data (hash)
HSET session:abc123 user_id 42 role admin
EXPIRE session:abc123 1800
# Retrieve session
HGETALL session:abc123
Fronta správ
Použite zoznamy Valkey ako jednoduchú frontu správ:
# Producer: add tasks to queue
LPUSH tasks '{"type":"email","to":"user@example.com"}'
# Consumer: wait for and process tasks
BRPOP tasks 0
Po inštalácii
Fail2Ban – ochrana proti útokom hrubou silou
Váš server obsahuje Fail2Ban predkonfigurovaný na ochranu SSH proti útokom hrubou silou.
| Pravidlo | Max. počet pokusov | Doba blokovania |
|---|---|---|
| SSH | 5 neúspešných prihlásení | 10 minút |
Užitočné príkazy:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
Ak sa omylom zablokujete, pripojte sa cez konzolu VNC v klientskom paneli a odblokujte svoju IP.
Správa služieb
Valkey beží cez systemd. Bežné príkazy:
# Check service status
systemctl status valkey-server
# Restart Valkey
systemctl restart valkey-server
# View Valkey logs
journalctl -u valkey-server -n 100
Ladenie výkonu
Valkey sa pri prvom štarte automaticky vyladí. Aktuálne nastavenia zistí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 (napr. na 2 GB):
valkey-cli -a your_password CONFIG SET maxmemory 2gb
valkey-cli -a your_password CONFIG REWRITE
Dostupné zásady vyraďovania: allkeys-lru (predvolené), volatile-lru, allkeys-lfu, noeviction. Použite noeviction ak chcete, aby Valkey pri zaplnení pamäte vracal chyby namiesto odstraňovania kľúčov.
Perzistencia
Valkey v predvolenom stave ukladá dáta na disk pomocou snímok RDB. Dáta prežijú reštart servera. Stav perzistencie zistíte takto:
valkey-cli -a your_password INFO persistence
Zapnutie AOF (Append Only File) pre odolnejšiu perzistenciu:
valkey-cli -a your_password CONFIG SET appendonly yes
valkey-cli -a your_password CONFIG REWRITE
AOF zaznamenáva každú zápisovú operáciu. V kombinácii s RDB poskytuje najspoľahlivejšiu ochranu dát.
Zmena hesla
Zmena 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 heslom pre referenciu.
Prihlasovacie údaje servera
Prihlasovacie údaje Valkey sú uložené v /root/.valkey_credentials.
Čo je predkonfigurované
- Vzdialený prístup: Valkey prijíma pripojenia z ľubovoľnej IP na porte 6379 (vyžaduje heslo)
- maxmemory: Automaticky nastavené na 75 % dostupnej RAM pri prvom štarte
- Zásada vyraďovania: allkeys-lru – pri dosiahnutí limitu pamäte sa odstraňujú najdlhšie nepoužité kľúče
- Perzistencia: Snímky RDB zapnuté v predvolenom stave (automatické zálohy stavu na disk)
- Ladenie systému: vm.overcommit_memory, somaxconn a Transparent Huge Pages optimalizované pre Valkey
Zahrnutý softvér
| Komponent | Verzia |
|---|---|
| Ubuntu | 24.04 LTS |
| Valkey | 7.2 |
| Fail2Ban | 1.0 |
Riešenie problémov
| Problém | Riešenie |
|---|---|
| Nedá sa vzdialene pripojiť k Valkey | Skontrolujte, či port 6379 neblokuje firewall. Overte bind 0.0.0.0 v /etc/valkey/valkey.conf |
| NOAUTH Authentication required | Zadajte heslo: valkey-cli -a your_password alebo AUTH your_password. Skontrolujte /root/.valkey_credentials |
| OOM command not allowed | Dosiahnutý limit pamäte. Zvýšte maxmemory alebo zmeňte zásadu vyraďovania. Kontrola využitia: valkey-cli -a pass INFO memory |
| Valkey sa nespustí | Kontrola logov: journalctl -u valkey-server -n 50. Častá príčina: neplatná konfigurácia alebo plný disk (df -h /) |
| Zabudnuté heslo Valkey | Pripojte sa cez SSH a skontrolujte /root/.valkey_credentials |
| Zablokované službou Fail2Ban | Odblokujte svoju IP cez konzolu VNC v klientskom paneli |
| Zabudnuté heslo root | Obnovte ho cez konzolu VNC v klientskom paneli |