Introducción a Vitess sobre Kubernetes para MySQL – Parte I de III

En esta serie de publicaciones de blog, analizaremos una descripción general de la tecnología Vitess. Vitess es una solución de agrupación de bases de datos para el escalado horizontal de conjuntos de datos actualmente adaptados a 250 Gb – 300 Gb de tamaño *. Es una tecnología probada utilizada por muchas empresas de escalado web, incluido YouTube. PlanetaEscala es la empresa detrás del desarrollo y soporte de este proyecto de código abierto.

Introducción a Vitess

Aquí está la arquitectura Vitess de alto nivel explicada visualmente.

Árbitro: Sugu Sougoumarane presenta una descripción general de Vitess à Highload en Moscú.

Componentes básicos de Vitess

Hay dos componentes principales de Vitess. Uno de ellos es vtgate, que funciona como un enrutador de consultas donde vttablet es un proxy de MySQL para servir los datos.

  • vtgate: un enrutador de consultas es responsable de calcular qué consultas apuntan a vttablets. Son simplemente servidores de aplicaciones sin estado. Aloje un esquema llamado vschema para mantener el repositorio de metadatos de vttablet(s).
  • vtttableta: Es responsable de actuar como un proxy para la instancia de MySQL. Cada vttablet tiene una instancia de MySQL asociada que también puede servir para varios propósitos, como tomar tráfico de escritura, conectar agrupaciones, copias de seguridad, etc.

Componente de seguimiento

  • vtctld: servicio de monitoreo basado en la web que brinda una descripción general de los servidores y su estado

Verificar Conceptos Vitess para más lectura.

Vitess en CNCF (Fundación de computación nativa en la nube)

Las tecnologías nativas de la nube ayudan a las organizaciones modernas a crear topologías escalables y sólidas. Si bien estos entornos van desde la nube pública, privada e híbrida, tienen el objetivo común de construir sistemas resistentes pero manejables y observables. Por lo general, se crean en torno a contenedores, microservicios con infraestructura inmutable.

CNCF clasifica estas tecnologías en tres fases. Puedes ver el resto de proyectos en Paisaje interactivo nativo de la nube CNCF.

Servicios del proyecto y niveles de madurez

Credito de imagen: https://www.cncf.io/proyectos/

Al momento de escribir este artículo, Vitess es el único proyecto relacionado con MySQL que ha alcanzado el nivel de posgrado de CNCF. Es el octavo proyecto después de Kubernetes, Prometheus, Envoy, CoreDNS, Containerd, Fluentd y Jaeger. Vitess actualmente está llegando a su versión 4.0 GA. Este es un desarrollo importante, porque Kubernetes y Native Cloud están creciendo rápidamente, y el ecosistema MySQL necesitaba un proyecto de código abierto como parte de esta expansión.

Descripción general de Vitess y Kubernetes

Vitess escalando MySQL a través de fragmentación distribuida. Dado que es casi imposible ejecutar bases de datos con estado sin orquestación en Kubernetes, Vitess resuelve este problema consolidando las funciones de replicación de MySQL. Al dividirse en múltiples nodos (contenedores), Vitess distribuye los datos y permite que las aplicaciones operen entre ellos. Este método protege el único punto de falla de las topologías de bases de datos tradicionales no fragmentadas donde una sola aplicación malintencionada puede rastrear toda la base de datos.

Parte II de esta serie: Configuración e implementación de Vitess en Kubernetes (Minikube) para MySQL – Parte II

Parte III de esta serie: Configuración e implementación de Vitess en Kubernetes (Minikube) para MySQL – Parte III

* CTO de PlanetScale Sugu Sougoumarane cita esto de la experiencia de campo.

Referencias

Créditos

Author: Ing. Luis

A lo largo de conocer Windows y otros sistemas operativos me eh encontrado con diversos tipos de error, ahora brindo soluciones según mi experiencia-

Deja un comentario