Replicar nuestra instalación de Hasura en producción

ene. 1, 0001

Este artículo forma parte de una serie:

En anteriores capítulos hemos visto cómo gestionar una API GraphQl con Hasura. En este capítulo vamos a ver cómo podemos restaurar en local nuestra instalación de Hasura en producción. Probablemente querramos hacer pruebas en local con los datos que existen en producción, para hacer pruebas de rendimiento, carga, quizá algún cambio en el esquema de la base de datos, etc.

Teniendo en cuenta que utilizaremos una base de datos en un entorno específico, con nombres de usuarios, base de datos, esquemas, etc. diferentes a los que tenemos en local lo más seguro es que la restauración de los metadatos de Hasura nos dé problemas ya que no será capaz de encontrar las tablas que existen en producción y nos dé error al tratar de importarlo.

Para ello, lo que haremos será exportar los metadatos de Hasura en producción, modificar el fichero de metadatos para que se adapte a nuestro entorno local y restaurar los metadatos en local.

MENCIONAR EN ALGÚN SITIO QUE EN UN PRINCIPIO LA REPLICACIÓN EN EL MISMO ENTORNO NO DEBERÍA DAR PROBLEMAS, LO QUE AQUÍ SE PLANTEA ES LA REPLICACIÓN DEL ENTORNO DE PRODUCCIÓN EN LOCAL

Exportar los metadatos de Hasura en producción

Esto se hace fácilmente desde el propio panel de administración de Hasura, dentro del menú de configuración hay una opción llamada Export Metadata que descargará un fichero JSON con toda la configuración de nuestro entorno de Hasura, tanto tablas como relaciones, permisos, etc. Ideal para restaurar en caso de que tengamos algún problema con nuestro entorno de producción, como copia de seguridad.

Exportar la base de datos

Por lo general cada tipo de base de datos tiene sus propios procesos de copia de seguridad y herramientas para ello, en este ejemplo utilizaremos PostgreSQL como punto de referencia pero esta parte no tiene mayor problema que simplemente crear una copia de seguridad de nuestra base de datos para luego poder restaurarla a través de la herramienta correspondiente.

Utilizaremos en local un entorno virtualizado con Docker, necesitaríamos conectar de alguna forma al contenedor para restaurarla posteriormente. Aquí utilizaremos las herramientas pg_dump y psql de PostgreSQL.

########### CONFIGURAR DOCKER-COMPOSE. PUERTO DB, VARIABLE ENTORNO CONEXION DB ########### RESTAURAR BASE DE DATOS ########### RESTAURAR METADATOS ########### CONSULTAS DE PRUEBA

Artículos relacionados

Quizá te puedan interesar