GCP: implementación de bases de datos de alta disponibilidad con GKE

GCP: implementación de bases de datos de alta disponibilidad con GKE

GKE para bases de datos

Introducción

La contenedorización de aplicaciones de software ha transformado la facilidad de empaquetar aplicaciones de software. Además, Google Kubernetes Engine (GKE) ha facilitado mucho la gestión de esos contenedores. En esta publicación veremos cómo las aplicaciones con estado, como las bases de datos, pueden aprovechar la misma tecnología.

Diagrama de arquitectura

Bases de datos en GKE

Identificar el binario de la base de datos
El diagrama anterior muestra una implementación de alta disponibilidad para cualquier * base de datos relacional (como MySQL, Postgresql, MSSQL-Linux) en GKE. Podrá encontrar imágenes de contenedor listas para usar para todos estos en Docker Hub .

Creando GKE Cluster
El clúster de GKE que aloja la base de datos debe tener un grupo de nodos bizonales en una sola región. Esto es para garantizar que funcione la configuración de HA que se basará en los discos persistentes regionales .
El clúster de GKE debe tener nodos con capacidad adicional para que, en caso de falla, todos los POD puedan moverse a la zona de alta disponibilidad de forma segura.

Aprovisionar almacenamiento para la base de datos
GKE ofrece Reclamación de volumen persistente (PVC) para almacenar datos. El PVC se puede crear utilizando PD o PD SSD. Además, el PVC puede ser zonal o regional (bizona). En esta configuración, debería utilizar Regional PD / PD-SSD para fines de alta disponibilidad. El PD / PD-SSD regional mantiene automáticamente dos copias de datos (disco 01 y disco 02 en el diagrama).

Servicio GKE
Esta es una fachada que permite que las aplicaciones cliente se comuniquen con la base de datos. Si bien puede haber varias implementaciones de bajo nivel, comúnmente se genera un balanceador de carga interno (ILB) detrás de escena para un servicio de GKE. Tras la conmutación por error, el servicio de gke se reconfigura automáticamente para enviar el tráfico al nuevo pod de gke.

Implementación de referencia

Implementar PostgreSQL de alta disponibilidad con GKE
Lea el artículo anterior (escrito por mí) para obtener instrucciones detalladas sobre esta configuración usando postgresql. Sin embargo, se puede adoptar lo mismo para usar cualquier * base de datos relacional común.


GCP: la implementación de bases de datos de alta disponibilidad con GKE se publicó originalmente en Google Cloud - Community on Medium, donde las personas continúan la conversación destacando y respondiendo a esta historia.