Was ist auf Ihrem Redis-Server installiert?
- Redis Open Source aus dem offiziellen Redis-Repository, in der zum Installationszeitpunkt neuesten Version
- Ein Pflichtpasswort, gesetzt mit requirepass und bei der Installation generiert
- AOF-Persistenz eingeschaltet (appendonly yes)
- Remote-Verbindungen auf Port 6379
- Die Einstellung vm.overcommit_memory = 1, die die Dokumentation von Redis empfiehlt
- Firewall, bei der nur die Ports 22 und 6379 offen sind, dazu fail2ban für SSH
Welche Größe brauchen Sie für Redis?
Redis hält alle Ihre Daten im RAM, die Größe Ihrer Daten bestimmt also die Größe Ihres Servers. Die Administrationsdokumentation nennt keinen festen Wert, warnt aber, dass eine schreibintensive Instanz beim Speichern einer RDB-Datei oder beim Umschreiben des AOF bis zum Doppelten ihres normalen Speichers belegen kann. Als Faustregel reicht 1 GB für einen kleinen Cache oder Sitzungsspeicher, und für größere Daten wählen Sie etwa das Doppelte ihrer Größe an RAM. Reicht das nicht, vergrößern Sie im Panel, Ihre Daten und Ihre IP-Adresse bleiben gleich.
| Einsatz | Größe | Preis | Wählen |
|---|---|---|---|
| Einstieg | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/Monat | |
| Mittel | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/Monat | |
| Leistungsstark | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/Monat |
Für wen ist es gedacht?
- Mehrere App-Server, die einen gemeinsamen Cache oder Sitzungsspeicher brauchen
- Queues von Laravel, Django, Rails oder Node.js, die auf ein eigenes Redis umziehen
- Apps, die In-Memory-Strukturen wie Pub/Sub, Zähler oder Bestenlisten nutzen
- Entwickler, die für Entwicklung und Tests ein Remote-Redis haben möchten
Was passiert nach der Bestellung?
- Stellen Sie die Größe ein und schließen Sie Ihre Zahlung ab.
- Ihr Server startet und Redis installiert sich. Warten Sie auf dem Reiter Übersicht, bis die Zeile App meldet, dass Redis bereit ist.
- Kopieren Sie die Zeilen Verbindungsadresse und Passwort. Eine Zeile Login gibt es nicht, weil das Passwort zum Standardbenutzer von Redis gehört.
- Testen Sie die Verbindung: redis-cli -h IP -a PASSWORD ping
- Geben Sie Ihrer App den Connection-String: redis://:PASSWORD@IP:6379/0
- Wenn Sie es als Cache nutzen, setzen Sie maxmemory-policy allkeys-lru und beschränken Sie dann Port 6379 auf Ihre eigenen Adressen.
Bei jedem Server
- Tägliche Sicherung im Preis inbegriffen
- Unbegrenzter Datenverkehr
- Voller Root-Zugriff
- RAM und CPU später vergrößern oder verkleinern, die Festplatte erweitern
- Standort: Istanbul · IST-1.
Gut zu wissen
- Port 6379 ist zum Internet hin offen und hat kein TLS, Passwort und Daten laufen also unverschlüsselt. Schränken Sie ihn ein: ufw delete allow 6379/tcp, dann ufw allow from YOUR_IP to any port 6379.
- maxmemory wird bei der Installation auf etwa drei Viertel des RAM gesetzt. Am Limit lehnt Redis neue Schreibvorgänge ab. Wenn Sie Ihren Server in der Größe ändern, erhöhen Sie den Wert in /etc/redis/redis.conf.
- Redis 8 und neuer wird unter RSALv2, SSPLv1 oder AGPLv3 verbreitet. Wenn Sie Redis anderen als Dienst anbieten wollen, lesen Sie die Bedingungen.
- Redis stammt aus einem eigenen Repository und aktualisiert sich nicht selbst. Neue Versionen installieren Sie mit apt.
Fragen und Antworten zu Redis
Wie verbinde ich mich mit meinem Redis-Server?
Ihr Connection-String lautet redis://:PASSWORD@IP:6379/0. Auf der Kommandozeile führen Sie redis-cli -h IP -a PASSWORD aus. Eine Verbindung ohne Passwort erhält den Fehler NOAUTH, jeder Remote-Befehl muss sich also zuerst authentifizieren.
Wie viel RAM braucht Redis?
Die Größe Ihrer Daten bestimmt, wie viel RAM Redis braucht, einen festen offiziellen Wert gibt es nicht. Als Faustregel ist 1 GB ein Start für einen kleinen Cache oder Sitzungsspeicher. Bei einer schreibintensiven Instanz kann sich der Speicher beim Speichern verdoppeln, wählen Sie daher etwa das Doppelte Ihrer Datengröße an RAM.
Verliert Redis beim Neustart Daten?
Nein. In dieser Installation ist die AOF-Persistenz von Redis eingeschaltet, jeder Schreibvorgang wird also an die Festplatte angehängt, und die Daten kommen nach einem Neustart aus dieser Datei zurück. Die Standardrichtlinie für fsync läuft einmal pro Sekunde, bei einem unerwarteten Ausfall können also höchstens die Schreibvorgänge der letzten Sekunde verloren gehen.
Was passiert, wenn Redis der Speicher ausgeht?
Diese Installation setzt maxmemory auf etwa drei Viertel des RAM, und am Limit lehnt Redis neue Schreibvorgänge ab. Für einen Cache fügen Sie maxmemory-policy allkeys-lru zu /etc/redis/redis.conf hinzu und führen systemctl restart redis-server aus. Redis verdrängt dann am Limit selbst alte Schlüssel.
Ist meine Redis-Verbindung verschlüsselt?
Redis-Verbindungen haben bei der Installation kein TLS, Passwort und Daten laufen also unverschlüsselt. Beschränken Sie den Zugriff auf Ihre eigene IP-Adresse oder öffnen Sie einen SSH-Tunnel mit ssh -L 6379:127.0.0.1:6379 root@IP. Eine App auf demselben Server verbindet sich mit 127.0.0.1, ihr Datenverkehr verlässt die Maschine also nie.
Kann ich für meine App einen eigenen Redis-Benutzer anlegen?
Ja, über Redis-ACLs. Zum Beispiel: ACL SETUSER uygulama on >STRONG_PASSWORD allkeys +@all -@dangerous. Speichern Sie es danach mit CONFIG REWRITE in der Konfigurationsdatei. Der Connection-String lautet dann redis://uygulama:STRONG_PASSWORD@IP:6379/0.