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

Implemente una base de datos MySQL en la nube híbrida mediante ClusterControl

Una base de datos de nube híbrida es una combinación de hosts activos que residen tanto en infraestructuras locales como en la nube, que funcionan como un único sistema operativo. Ayuda a implementar un entorno de alta disponibilidad y, dado que tanto la base de datos como las aplicaciones deben ser portátiles para poder trabajar en las instalaciones y en la nube, también reduce la dependencia de un proveedor de nube en particular (bloqueo de proveedor de nube). Sin embargo, implementar este tipo de entorno no es tan sencillo.

En esta publicación de blog, analizaremos el uso de ClusterControl para implementar una base de datos MySQL en la nube híbrida, entre la infraestructura local y la nube que se ejecuta en AWS. Esta configuración nos permite acercar la base de datos a los clientes y las aplicaciones que residen en un entorno de nube, y mantendremos una réplica de la base de datos en las instalaciones para fines de recuperación ante desastres y copias de seguridad en vivo.

Arquitectura 

Nuestra implementación consta de cuatro nodos:un nodo para ClusterControl y un nodo para el servidor maestro otros dos nodos están en servidores esclavos, donde 2 de los nodos de la base de datos están ubicados en el centro de datos de AWS como el centro de datos principal (así como ClusterControl), mientras que el tercer nodo está ubicado en el centro de datos local. El siguiente diagrama ilustra nuestra arquitectura final.

Preparación de su entorno en la nube 

Primero, debe crear su entorno con su proveedor de nube principal. En este caso, usaremos AWS con tres instancias EC2.

Luego, vaya al entorno local y cree una máquina virtual o host que será el nodo en espera.

ClusterControl - 52.14.222.75

Master - 3.17.190.53

Slave 1 - 3.14.146.131

Slave 2 - 192.168.33.15

Supondremos que tiene una instalación de ClusterControl ejecutándose y que ya ha creado cuentas de proveedor de nube. Tenga en cuenta que estamos utilizando instancias en la nube con direcciones IP públicas para el propósito del blog. Para una configuración de nivel de producción, debe proteger su entorno, por ejemplo, las máquinas virtuales en la nube deben estar dentro de una VPC con solo direcciones IP privadas. Tendría una conexión segura entre el entorno local y la VPC.

Implementación de MySQL mediante ClusterControl 

Vaya a su GUI de ClusterControl y seleccione la opción "Implementar". Si ya tiene una instancia de MySQL ejecutándose, debe seleccionar "Importar servidor/base de datos existente".

Aquí vamos a hacer una nueva implementación, por lo que seleccionamos la opción "Implementar". Al seleccionar MySQL, debe especificar Usuario, Clave o Contraseña y puerto para conectarse por SSH a sus nodos MySQL. .

Para obtener más detalles sobre la conectividad SSH, consulte los requisitos de usuario de ClusterControl.

Después de configurar el acceso SSH, debe definir el usuario y la versión de la base de datos. Datadir es opcional. También puede especificar qué repositorio usar. Aquí estamos eligiendo la versión MySQL 8.0.

Asegúrese de obtener un ícono de marca verde que indica que ClusterControl puede conectarse a los nodos de la base de datos para realizar la implementación. Haga clic en el botón "Implementar" para iniciar la implementación y puede monitorear el progreso de la implementación en Actividad -> Trabajos -> Crear clúster. Puede monitorear el estado de creación en el monitor de actividad de ClusterControl.


 

Una vez que finaliza la tarea, puede ver su nueva configuración de MySQL en la pantalla principal de ClusterControl.

Y verifique su topología final en la sección Vista de topología.

Conclusión 


Las funciones de ClusterControl le permitirán configurar rápidamente la replicación en un entorno de nube híbrida, entre diferentes proveedores de nube o incluso entre un proveedor de nube y un entorno local. Acerca de la comunicación entre los proveedores de la nube, o entre la nube pública y privada, por razones de seguridad, debe restringir el tráfico solo de fuentes conocidas, para reducir el riesgo de acceso no autorizado a su red.