sql >> Base de Datos >  >> RDS >> Mysql

Uso de asesores de respaldo de bases de datos para automatizar tareas de mantenimiento

Un desastre generalmente provoca una interrupción, lo que significa tiempo de inactividad del sistema y posible pérdida de datos. Una vez que hemos detectado el apagón, activamos nuestro plan DR para recuperarnos de él. Pero sería una sorpresa, si no hay respaldo, o después de largas horas de recuperación, ves que no es el que necesitas.

Si bien las interrupciones pueden ser costosas, a menudo hay un impacto financiero que puede ser perjudicial para el negocio y la pérdida de datos puede ser una razón para cerrar la empresa.

Para minimizar la pérdida de datos, necesitamos tener múltiples copias de datos en varios lugares. Podemos diseñar nuestra infraestructura en diferentes capas y abstraer cada capa de la que está debajo. Por ejemplo, construimos una capa para clústeres de instancias de bases de datos para proteger contra fallas de hardware. Replicamos bases de datos en todos los centros de datos para que podamos defendernos contra una falla del centro de datos. Cada capa adicional agrega complejidad, lo que puede convertirse en una pesadilla para administrar. Pero aun así, en esencia, una copia de seguridad ocupará el lugar central en la recuperación ante desastres.

Por eso es fundamental asegurarse de que sea algo en lo que podamos confiar. Pero, ¿cómo lograr esto? Bueno, una de las opciones es verificar si las copias de seguridad se ejecutaron en función de las últimas líneas del script de copia de seguridad.

Un ejemplo simple:

#!/bin/sh

mysqldump -h 192.168.1.1 -u user -ppassword dbname > filename.sql



if [ "$?" -eq 0 ]; then

    echo "Success."

else

    echo "Error."

fi

Pero, ¿qué pasa si la secuencia de comandos de copia de seguridad no se inició en absoluto? Google ofrece bastantes resultados de búsqueda para "Linux cron, not running".

Desafortunadamente, las bases de datos de código abierto a menudo no ofrecen un repositorio de respaldo.

Otra prueba de copia de seguridad. Es posible que hayas oído hablar del gato de Schrödinger. Una conocida teoría de la copia de seguridad de Schrödinger es . "La condición de cualquier copia de seguridad es desconocida hasta que se intenta una restauración". Suena como un enfoque simple, pero tal intento significaría que debe configurar un entorno de prueba, copiar archivos, ejecutar restaurar... después de cada copia de seguridad.

En este artículo, veremos cómo puede usar ClusterControl para asegurarse de que su copia de seguridad se ejecute para lograr bases de datos de nivel empresarial con bases de datos de código abierto.

Informes de copia de seguridad

ClusterControl ha sido diseñado para informes operativos. Los informes operativos brindan soporte para el monitoreo y control de la actividad empresarial diaria. El informe de copia de seguridad es uno de muchos. Puede encontrar informes como:

  • Informe diario del sistema
  • Informe de actualización del paquete
  • Informe de cambio de esquema
  • Disponibilidad 
  • Copia de seguridad

Pero, ¿por qué necesitarías esto?

Es posible que ya tenga una excelente herramienta de monitoreo con todas las métricas/gráficos posibles y probablemente también haya configurado alertas basadas en métricas y umbrales (algunos incluso tendrán asesores automáticos que les brindarán recomendaciones o arreglarán cosas automáticamente). Eso es bueno:tener visibilidad de su el sistema es importante; sin embargo, necesita poder procesar mucha información.

¿Cómo funciona esto? ClusterControl recopila información sobre el proceso de respaldo, los sistemas, las plataformas y los dispositivos en la infraestructura de respaldo cuando se activa el trabajo de respaldo. Toda esa información se agrega y almacena en una CMON (base de datos interna), por lo que no es necesario consultar bases de datos particulares adicionales. Además, cuando descubre que tiene un clúster en ejecución, pero no había una copia de seguridad, también se informará.

En los detalles del informe, puede realizar un seguimiento de un ID de copia de seguridad con datos detallados sobre la ubicación, el tamaño, la hora y el método de copia de seguridad. Las plantillas funcionan con datos para diferentes tipos de bases de datos, por lo que cuando administre su entorno mixto, obtendrá la misma sensación y apariencia. Ayuda a administrar mejor las diferentes copias de seguridad de la base de datos.

Informes CLI

Para aquellos que prefieren la interfaz de línea de comandos, una buena opción para realizar un seguimiento de las copias de seguridad Interfaz de línea de comandos (CLI) de ClusterControl.

CLI le permite ejecutar la mayoría de las funciones disponibles dentro de ClusterControl usando comandos simples. La ejecución de copias de seguridad y los informes de copias de seguridad son uno de ellos.

Utilizado junto con la potente GUI, brinda a los usuarios de ClusterControl formas alternativas de administrar sus entornos de base de datos de código abierto utilizando el motor que prefieran.

$ s9s backup --list --cluster-id=1 --long --human-readable

ID CID STATE     OWNER HOSTNAME CREATED  SIZE FILENAME

 1   1 COMPLETED dba   10.0.0.5 07:21:39 252K mysqldump_2017-05-09_072135_mysqldb.sql.gz

 1   1 COMPLETED dba   10.0.0.5 07:21:43 1014 mysqldump_2017-05-09_072135_schema.sql.gz

 1   1 COMPLETED dba   10.0.0.5 07:22:03 109M mysqldump_2017-05-09_072135_data.sql.gz

 1   1 COMPLETED dba   10.0.0.5 07:22:07 679 mysqldump_2017-05-09_072135_triggerseventsroutines.sql.gz

 2   1 COMPLETED dba   10.0.0.5 07:30:20 252K mysqldump_2017-05-09_073016_mysqldb.sql.gz

 2   1 COMPLETED dba   10.0.0.5 07:30:24 1014 mysqldump_2017-05-09_073016_schema.sql.gz

 2   1 COMPLETED dba   10.0.0.5 07:30:44 109M mysqldump_2017-05-09_073016_data.sql.gz

 2   1 COMPLETED dba   10.0.0.5 07:30:49 679 mysqldump_2017-05-09_073016_triggerseventsroutines.sql.gz

A partir de la versión 1.4.1, la secuencia de comandos del instalador instalará automáticamente este paquete en el nodo ClusterControl. CLI es parte del paquete s9s-tools. También puede instalarlo por separado en una máquina diferente para administrar el clúster de la base de datos de forma remota. Similar a ClusterControl, utiliza comunicación SSH segura.

Verificación de copia de seguridad automática

Una copia de seguridad no es una copia de seguridad si no podemos recuperar los datos. La verificación de las copias de seguridad es algo que muchas empresas suelen pasar por alto. Veamos cómo ClusterControl puede automatizar la verificación de copias de seguridad y ayudar a evitar sorpresas.

En ClusterControl, seleccione su clúster y vaya a la sección "Copia de seguridad", luego seleccione "Crear copia de seguridad".

La función de copia de seguridad de verificación automática está disponible para las copias de seguridad programadas, así que elijamos la opción "Programar copia de seguridad".

Al programar una copia de seguridad, además de seleccionar las opciones comunes como el método o el almacenamiento, también debemos especificar la programación/frecuencia. En este ejemplo, vamos a configurar la verificación de respaldo de MySQL. Sin embargo, se puede lograr lo mismo para las bases de datos PostgreSQL y Timescale.

Cuando se marque la verificación de copia de seguridad, aparecerá otra pestaña.

Aquí podemos establecer todos los pasos necesarios para preparar el entorno. Cuando se proporciona IP, estamos listos para comenzar y programar dicha copia de seguridad. Cada vez que finalice la copia de seguridad, se copiará en un entorno de verificación de copia de seguridad temporal (opción "restaurar copia de seguridad activada"). Después de una actualización exitosa, verá el estado de verificación en la pestaña del repositorio de respaldo.

Servicios de integración y ejecución de copia de seguridad fallidos

Otra opción interesante para obtener más pistas sobre la ejecución de copias de seguridad es utilizar los servicios de integración de ClusterControl. Puede controlar el estado de ejecución de la copia de seguridad con servicios de terceros.

La integración de herramientas de terceros le permite automatizar alertas con otros sistemas populares. Actualmente, ClusterControl es compatible con ServiceNow, PagerDuty, VictorOps, OpsGenie, Slack, Telegram y Webhooks.

A continuación, podemos ver un ejemplo de integración de canales de Slack. Cada vez que ocurra un evento de copia de seguridad, aparecerá en el canal de holgura.

Conclusión

Las copias de seguridad son obligatorias en cualquier entorno. Lo ayudan a proteger sus datos y están en el centro de cualquier escenario de recuperación ante desastres. ClusterControl puede ayudar a automatizar el proceso de copia de seguridad de sus bases de datos y, en caso de falla, restaurarlo con unos pocos clics. Además, puede estar seguro de que se ejecutan con éxito y de forma fiable, por lo que, en caso de desastre, no perderá sus datos.