¿Debería utilizar proxmox para este caso de uso?

¿Debería utilizar proxmox para este caso de uso?

Básicamente, necesito alojar una aplicación web delante y detrás de todo PHP, y también una base de datos MySQL con HA.

Habrá 2 servidores en diferentes centros de datos.

Y estoy pensando si deberíamos usar Proxmox con 2 VM, una para la aplicación web y otra para la base de datos.

O si debería simplemente instalar Debian, juntar todo y terminar de una vez.

HA para el servidor web está siendo manejado por una instancia de HaProxy que está en otro servidor. La base de datos HA será manejada por ProxySQL en HA (por lo que básicamente el servidor MysQL y ProxySQL estarán en el mismo servidor), pero mis aplicaciones necesitan saber a qué ProxySQL deben conectarse.

Si uso Proxmox, es bastante sencillo hacer esto con Keepalived, porque todo usará IP internas y está bien.

Pero si uso Debian serán las IP públicas, y el hosting que estoy usando ( OVH ) tiene algo que permite esto llamado IP flotantes, pero toma alrededor de 5 minutos hacer el cambio, por lo que son 5 minutos para que el sitio esta abajo.

Al usar proxmox, también tengo otras ventajas: puedo activar servidores para realizar actualizaciones y luego simplemente cambiar y así sucesivamente sin romper nada. Usar Debian implica directamente reformatear el servidor y demás.

Y, por supuesto, el uso de Proxmox afectará ligeramente el rendimiento, pero creo que es insignificante.

Hay pros y contras de cualquiera de las soluciones y no estoy muy seguro de qué dirección tomar.

Entonces, ¿virtualización o bare metal?

Los servidores son:

CPU: Xeon-E 2288G - 8c/16t
Memory: 32GB
Disks: 2× 960GB SSD NVMe - RAID 1

¿Alguna idea? ¡Gracias!

Respuesta1

Su justificación para usar Proxmox aquí parece ser que puede usar keepalived (aunque no estoy seguro exactamente para qué). Eso parece una exageración enorme.

Hay otras razones que podrían tener sentido en este contexto que usted ha insinuado.

También mencionas las IP flotantes de OVH.

Este es el problema XY.

Su principal preocupación parece garantizar que (al menos uno de) los servicios esté disponible a través de una IP virtual.

  • Las IP virtuales no funcionan en los centros de datos sin una configuración de enrutamiento inteligente. La complejidad es mala.

  • Las IP virtuales como mecanismo de HA apestan. Usted está confiando en que su sistema hagaalgocuando está en un estado roto. Existen complicaciones en torno al cerebro dividido. Es difícil de probar/monitorear. Siempre hay una interrupción en el servicio.

  • No necesita una IP virtual: si ProxySQL (o haproxy o similar) está disponible/configurado en cada nodo que necesita conectarse a la base de datos y conoce todos los nodos de la base de datos, tiene HA para su servicio de base de datos. Para el servicio HTTP, la parte clave de HA son las direcciones DNS por turnos en varios hosts. NB: Todavía hay mucha información errónea sobre rrDNS y HTTP flotando en Internet. Se ocupa de casos que un balanceador de carga no puede y maneja la mayoría de los casos de uso que sí hace.

Su mayor costo por usar la virtualización en un contexto como este es la E/S del disco DBMS. Si el rendimiento de MySQL tiene un impacto significativo en el rendimiento general del servicio y su presupuesto lo permite, puede eliminar este problema pasando un controlador de disco dedicado y almacenamiento a la máquina virtual DBMS.

información relacionada