sql >> Base de Datos >  >> RDS >> MariaDB

Impulsar el rendimiento en una configuración de nube híbrida

Una nube híbrida se refiere a un entorno mixto de computación, almacenamiento y servicios compuesto por infraestructura local, servicios de nube privada y una orquestación de nube pública entre las diversas plataformas. El uso de una combinación de nubes públicas, computación local y nubes privadas en su centro de datos significa que tiene una infraestructura de nube híbrida.

El rendimiento suele tener menor prioridad en una nube híbrida, ya que el enfoque de tener una infraestructura de nube híbrida suele ser la recuperación ante desastres, la disponibilidad y la escalabilidad. En esta publicación de blog, cubriremos algunos consejos generales para impulsar el rendimiento de nuestras aplicaciones, cargas de trabajo y clústeres que se ejecutan en una configuración de nube híbrida.

Hosts dedicados/Instancias/Recursos

Se afirma que el costo de los servicios en la nube es más bajo debido al amplio intercambio de recursos. Sin embargo, un mayor grado de participación significaría automáticamente menos garantías de rendimiento.

Las instancias en la nube son propensas a una estabilidad impredecible, pero con algunos costos adicionales, podemos reducir este riesgo con recursos dedicados. Las instancias dedicadas son instancias que se ejecutan en hardware dedicado a un único arrendatario. Por lo general, las instancias o los hosts dedicados están físicamente aislados en el nivel de hardware del host de las instancias que pertenecen a otros arrendatarios. Esto garantizará recursos adecuados al servicio y estabilizará prácticamente el rendimiento de sus cargas de trabajo a largo plazo. Según su presupuesto, tiene varias opciones para buscar recursos dedicados, como hosts dedicados, instancias o ancho de banda.

También hay muchas ofertas y descuentos si planea ejecutar las instancias durante un período más largo. Por ejemplo, al comprometerse con AWS EC2 Reserve Instance, los usuarios pueden ahorrar hasta un 70 % del costo de la instancia en comparación con el costo estándar bajo demanda. Una vez que las aplicaciones o las cargas de trabajo se prueban y están listas para la producción, se recomienda encarecidamente que opte por un contrato a largo plazo, siempre que asigne suficientes recursos a la instancia para ese período de contrato en particular.

Gestión de ancho de banda

El ancho de banda es caro. Lo que es caro es la infraestructura para llevar el ancho de banda de un lugar a otro. El tendido de fibra, el hardware de enrutamiento de nivel de operador y de nivel de proveedor, los gastos generales de monitoreo y mantenimiento para mantener todo en funcionamiento, el alquiler de la suite del centro de datos, el personal de un ingeniero del Centro de operaciones de red (NOC) las 24 horas del día, los 7 días de la semana, contribuyen al alto precio de un ancho de banda fiable. Sin mencionar el ritmo de la tecnología, las demandas de los usuarios y la vida útil de los productos de los proveedores a menudo requieren que una gran parte de la inversión anterior se deseche y el ciclo de vida sea cada 7 a 10 años, en algunos casos 5 años.

La mayoría de los proveedores de nube pública permiten el intercambio de datos con otro proveedor de servicios en la nube (CSP), que se puede lograr de varias maneras:

  • Transferencia de datos a través de direcciones IP públicas a través de Internet.

  • Uso de un servicio VPN administrado entre la red local y la red CSP.

  • Conéctese directamente desde la red local o redes privadas en la nube con el otro CSP como Partner Interconnect for Google Nube o AWS Direct Connect para AWS.

  • Transferir datos al otro CSP a través de un punto común de presencia (POP).

  • Emparejamiento de redes con redes de nube privada y la red CSP.

Estas opciones difieren en términos de velocidad de transferencia, latencia, confiabilidad, acuerdos de nivel de servicio (SLA), complejidad y costos. Independientemente de las opciones, la idea es la misma:cuanto menor sea la transferencia de datos utilizada, menor será el costo.

Para reducir el uso del ancho de banda, la compresión es lo más importante que debemos hacer. La mayoría de los servicios de replicación ahora admiten la compresión de conexión, lo que puede reducir en gran medida el tamaño de la transferencia de datos entre varios sitios. Por ejemplo, habilitar la compresión de conexión para MySQL maestro-esclavo puede reducir fácilmente el uso del ancho de banda hasta 1,5 veces, sin una configuración adicional en el nivel de compresión o el algoritmo. Esto se llama la técnica de compresión de datos sin pérdidas. Puede configurar una relación de compresión aún más alta, con una compensación de potencia de procesamiento para compresión y descompresión en ambos puntos finales.

La ubicación de la carga de trabajo también es importante. Con la configuración de la nube híbrida, las aplicaciones y las cargas de trabajo pueden existir tanto en nubes públicas como privadas. Para las aplicaciones internas, es mucho mejor colocarlas en la nube privada más cerca de las instalaciones con una latencia de red más baja. Para mejorar el rendimiento de las aplicaciones públicas, coloque las aplicaciones en los servidores perimetrales de la red de entrega de contenido (CDN), lo que reducirá en gran medida la carga del servidor principal para manejar solo la solicitud dinámica y descargar la entrega de contenido estático a varios servidores perimetrales. que geográficamente más cerca de los usuarios finales.

Cifrado más rápido

El cifrado en tránsito y en reposo es obligatorio en una configuración de nube híbrida, ya que solo poseemos una fracción de la infraestructura. No queremos que miradas indiscretas miren nuestros datos mientras se transmiten, o el riesgo de violaciones de datos por robo o personas ajenas que tienen acceso físico a nuestros datos. En palabras simples, cada parte de los datos en movimiento o los datos a los que no se puede acceder físicamente debe cifrarse, punto. Sin embargo, algunos cifrados de cifrado pueden comprometer la velocidad y el rendimiento de las cargas de trabajo.

Una falacia común es suponer que un mensaje cifrado con AES256 es más difícil de descifrar que la misma información protegida con AES128. Tiene sentido lógico que un tamaño de clave más grande introduzca una mayor complejidad, pero como con cualquier sistema, las implementaciones están sujetas a debilidades. Suponiendo que estamos hablando de AES128 versus AES256, existe una debilidad conocida en la función de expansión clave que afecta a AES256. Fundamentalmente, la debilidad reduce la complejidad de AES256 a menos que AES128.

Algunas de las herramientas de tunelización, como WireGuard, son bien conocidas por su encriptación más rápida y bastante sencillas de implementar cuando se realizan túneles entre varios sitios. Funciona de manera similar a cómo funciona el cifrado SSH, utilizando un enfoque de criptografía asimétrica. Según esta investigación, en promedio, WireGuard es un 58 % más rápido que OpenVPN en todas las ubicaciones evaluadas. Un cifrado más rápido significa menos tiempo para cifrar y descifrar datos, lo que permite que el rendimiento de su intercambio de datos aumente significativamente.

Si se pregunta cómo configurar WireGuard VPN para un entorno de nube híbrida, consulte esta publicación de blog, Implementación en varias nubes para la replicación de MariaDB mediante WireGuard.

Supervisar todo

Los entornos basados ​​en la nube dependen de un conjunto complicado de recursos e identificar los problemas de disponibilidad y rendimiento que más afectan a los servicios comerciales es un desafío. El equipo de operaciones debe poder monitorear de manera integral el estado de la aplicación, incluidos los componentes de la infraestructura de la nube que lo acompañan.

La mejora del rendimiento en una nube híbrida no puede ocurrir sin una amplia visibilidad de todos los recursos en todo momento. Es muy importante recopilar y muestrear recursos como la utilización de instancias y redes, el rendimiento de las aplicaciones, la experiencia del usuario, la latencia y los archivos de registro para garantizar que podamos solucionar de manera proactiva los problemas de rendimiento y disponibilidad antes de que lleguen a los usuarios finales o empeoren. La mala asignación de recursos siempre ocurrirá en un entorno de aprovisionamiento deficiente, lo que eventualmente conduce a una mala planificación de la capacidad y al despilfarro de dinero y recursos.

La mayoría de los proveedores de nube pública ofrecen servicios de monitoreo en profundidad, cubriendo múltiples capas y componentes de los servicios de nube suscritos. Sin embargo, la pieza que falta es comúnmente una unificación de monitoreo entre diferentes plataformas, proveedores y entornos en la nube. Las herramientas de monitoreo todo en uno de código abierto como Icinga, Nagios Core y Zabbix se pueden configurar para monitorear casi todo lo relacionado con una nube híbrida, especialmente las instancias, redes, servicios y aplicaciones de la nube.

En el caso de la supervisión del rendimiento de los servidores de bases de datos en el entorno de la nube híbrida, los siguientes recursos pueden ayudar:

  • Supervisión del rendimiento de MariaDB en una nube híbrida

  • Supervisión de PostgreSQL en un entorno híbrido