Die Migration Ihrer selbst gehosteten Typesense-Instanz auf einen neuen Server ist eine wichtige Aufgabe – unabhängig davon, ob Sie die Hardware aktualisieren, zu einem anderen Cloud-Anbieter wechseln oder einfach nur Serverwartungen durchführen.
Diese Anleitung führt Sie durch die richtigen Schritte zum sicheren und zuverlässigen Sichern, Übertragen und Wiederherstellen Ihrer Typesense-Daten.
Schlüsselkonzepte
Typesense speichert Ihre Daten im vom Datenverzeichnis Parameter (z. B. /var/lib/typesense). Diese Daten können jedoch nicht sicher gesichert werden, während der Server läuft, da die Dateien für Schreibvorgänge geöffnet bleiben.
Um Beschädigungen zu vermeiden, bietet Typesense eine Snapshot-API zum Erstellen konsistenter Backups.
1. Erstellen Sie ein Backup mit der Snapshot-API
Beste Option, wenn Ihre Typesense-Instanz normal läuft.
Rufen Sie die Snapshot-API auf, um einen dateisystemsicheren Snapshot zu erstellen:
curl -X POST 'http://localhost:8108/snapshot' \ -H 'X-TYPESENSE-API-KEY: IHR_ADMIN_API_KEY' \ -H 'Inhaltstyp: application/json' \ -d '{"snapshot_path": "/tmp/typesense-snapshot"}'Archivieren Sie anschließend das Snapshot-Verzeichnis:
tar -czvf backup.tar.gz -C /tmp typesense-snapshot(Optional) Bereinigen Sie das Snapshot-Verzeichnis:
rm -rf /tmp/typesense-snapshot2. Alternative: Typesense stoppen und das Datenverzeichnis kopieren
Wenn die Snapshot-API nicht verfügbar ist (z. B. Typesense reagiert nicht):
Stoppen Sie den Typesense-Server:
sudo systemctl stop typesense-server.serviceAnschließend archivieren Sie das Datenverzeichnis direkt:
tar -czvf backup.tar.gz -C /var/libtypesenseWichtig: Tun Sie dies erst, nachdem Sie den Server gestoppt haben, um die Dateikonsistenz sicherzustellen.
3. Übertragen Sie das Backup mit SCP + SSH-Schlüsseln auf einen anderen Server
Generieren Sie SSH-Schlüssel (falls noch nicht geschehen) auf Ihrem lokalen Computer:
ssh-keygen -t ed25519 -C "[email protected]"Speichern Sie es am Standardspeicherort (~/.ssh/id_ed25519) und lassen Sie die Passphrase zur Automatisierung leer.
Kopieren Sie den öffentlichen Schlüssel auf den neuen Server:
ssh-copy-id -i ~/.ssh/id_ed25519.pub Benutzer@neue-Server-IPÜbertragen Sie das Backup mit SCP:
scp -i ~/.ssh/id_ed25519 backup.tar.gz Benutzer@neue-Server-IP:/tmp/Wenn dies nicht funktioniert, stellen Sie zunächst sicher, dass der Inhalt von ed25519.pub in eine neue Zeile in der Datei verschoben wird:
~/.ssh/authorized_keys4. Wiederherstellen der Sicherung auf dem neuen Server
Möglicherweise müssen Sie noch Typesense auf dem neuen Server installieren, SSL einrichten usw.
Stoppen Sie dann alle laufenden Typesense-Instanzen:
sudo systemctl stop typesense-server.serviceBereinigen Sie das vorhandene Datenverzeichnis (überprüfen Sie, ob es sich wirklich um Ihren neuen, leeren Server handelt und nicht um Ihren alten Server mit Daten):
sudo rm -rf /var/lib/typesense/*Extrahieren Sie das Backup:
sudo tar -xzf /tmp/backup.tar.gz -C /var/lib/Stellen Sie sicher, dass sich die extrahierten Daten im richtigen Pfad befinden, z. B. /var/lib/typesense.
Starten Sie Typesense erneut und entfernen Sie die Backup-Tar-Datei:
sudo systemctl starte typesense-server.service rm /tmp/backup.tar.gzTypesense erkennt den Snapshot beim Start und erstellt seine Indizes im Arbeitsspeicher neu.
Abschließende Checkliste
- Backup erstellt mit Snapshot API oder nach dem Stoppen von Typesense
- Daten archiviert und verifiziert
- SSH-schlüsselbasierter Zugriff konfiguriert
- SCP-Übertragung sicher abgeschlossen
- Typesense wurde auf dem neuen Server erfolgreich neu gestartet
Profi-Tipps
- Testen Sie Ihr Backup, bevor Sie es in der Produktion verwenden. Versuchen Sie, es auf einem Staging-Server wiederherzustellen.
- Automatisieren Sie regelmäßige Snapshots mit
Cron+Locke+Teer. - Verwenden Sie sichere API-Schlüssel und geben Sie den Typesense-Administratorschlüssel niemals in öffentlichen Skripten preis.
- Überprüfen Sie nach dem Starten des Dienstes immer die Typesense-Protokolle:
journalctl -u typesense-server.service
Schlussfolgerung
Die Migration einer Typesense-Instanz muss nicht beängstigend sein. Mit einem soliden Verständnis der Funktionsweise des Snapshot-Mechanismus und ein wenig SSH-Know-how können Sie Ihre Daten zuverlässig und sicher zwischen Servern verschieben.
Wenn bei der Snapshot-API Probleme auftreten, funktionieren ein Kaltstart und eine manuelle Sicherung trotzdem – befolgen Sie die Schritte einfach sorgfältig.
Es geschieht alles auf Ihr eigenes Risiko.
Zuletzt aktualisiert am 30. Juli 2025
