Migrar su instancia de Typesense autohospedada a un nuevo servidor es una tarea crucial, ya sea que esté actualizando el hardware, moviéndose a otro proveedor de nube o simplemente realizando mantenimiento del servidor.
Esta guía lo guiará a través de los pasos correctos para realizar copias de seguridad, transferir y restaurar sus datos de Typesense de manera segura y confiable.
Conceptos clave
Typesense almacena sus datos en la ruta definida por el directorio de datos parámetro (por ejemplo, /var/lib/typesense). Sin embargo, no es posible realizar una copia de seguridad segura de estos datos mientras el servidor está en ejecución, ya que mantiene los archivos abiertos para escrituras.
Para evitar la corrupción, Typesense proporciona una API Snapshot para realizar copias de seguridad consistentes.
1. Cree una copia de seguridad mediante la API de instantáneas
La mejor opción si su instancia de Typesense se ejecuta normalmente.
Llame a la API Snapshot para crear una instantánea segura para el sistema de archivos:
curl -X POST 'http://localhost:8108/snapshot' \ -H 'X-TYPESENSE-API-KEY: YOUR_ADMIN_API_KEY' \ -H 'Content-Type: application/json' \ -d '{"snapshot_path": "/tmp/typesense-snapshot"}'A continuación, archiva el directorio de instantáneas:
tar -czvf backup.tar.gz -C /tmp instantánea de tipos de sentido(Opcional) Limpiar el directorio de instantáneas:
rm -rf /tmp/instantánea de tipo2. Alternativa: Detener Typesense y copiar el directorio de datos
Si la API de instantáneas no está disponible (por ejemplo, Typesense no responde):
Detener el servidor Typesense:
sudo systemctl stop typesense-server.serviceA continuación, archive el directorio de datos directamente:
tar -czvf backup.tar.gz -C /var/lib tipografíaImportante: Haga esto solo después de detener el servidor para garantizar la consistencia del archivo.
3. Transfiera la copia de seguridad a otro servidor mediante claves SCP + SSH
Genere claves SSH (si aún no lo ha hecho) en su máquina local:
ssh-keygen -t ed25519 -C "[email protected]"Guárdelo en la ubicación predeterminada (~/.ssh/id_ed25519) y deje la contraseña en blanco para la automatización.
Copiar la clave pública al nuevo servidor:
ssh-copy-id -i ~/.ssh/id_ed25519.pub usuario@nueva-ip-del-servidorTransferir la copia de seguridad mediante SCP:
scp -i ~/.ssh/id_ed25519 backup.tar.gz usuario@nueva-ip-del-servidor:/tmp/Si esto no funciona, primero asegúrese de que el contenido de ed25519.pub se mueva a una nueva línea en el archivo:
~/.ssh/claves_autorizadas4. Restaurar la copia de seguridad en el nuevo servidor
Es posible que aún lo necesites instalar Typesense en el nuevo servidor, configurar SSL, etc.
Luego, detenga cualquier instancia de Typesense que esté en ejecución:
sudo systemctl stop typesense-server.serviceLimpie el directorio de datos existente (verifique que este realmente sea su nuevo servidor vacío, no su antiguo servidor con datos):
sudo rm -rf /var/lib/typesense/*Extraer la copia de seguridad:
sudo tar -xzf /tmp/backup.tar.gz -C /var/lib/Asegúrese de que los datos extraídos estén en la ruta correcta, por ejemplo, /var/lib/typesense.
Inicie Typesense nuevamente y elimine el archivo tar de respaldo:
sudo systemctl start typesense-server.service rm /tmp/backup.tar.gzTypesense detectará la instantánea al iniciarse y reconstruirá sus índices en memoria.
Lista de verificación final
- Copia de seguridad creada mediante la API Snapshot o después de detener Typesense
- Datos archivados y verificados
- Acceso basado en clave SSH configurado
- Transferencia SCP completada de forma segura
- Typesense se reinició correctamente en el nuevo servidor
Consejos profesionales
- Pruebe su copia de seguridad antes de usarla en producción. Intente restaurarla en un servidor de pruebas.
- Automatizar instantáneas regulares usando
cron+rizo+alquitrán. - Utilice claves API seguras y nunca exponga la clave de administración de Typesense en scripts públicos.
- Siempre revise los registros de Typesense después de iniciar el servicio:
journalctl -u typesense-server.service
Conclusión
Migrar una instancia de Typesense no tiene por qué ser complicado. Con un buen conocimiento del funcionamiento del mecanismo de instantáneas y un poco de experiencia con SSH, puede transferir sus datos entre servidores de forma fiable y segura.
Si tiene problemas con la API de instantáneas, un apagado en frío y una copia de seguridad manual aún funcionan; solo siga los pasos cuidadosamente.
Todo es bajo tu propio riesgo.
Última actualización: 30 de julio de 2025
