¿Cómo cambiar el servidor de servicio entre primario y secundario cuando uno de ellos no funciona?

¿Cómo cambiar el servidor de servicio entre primario y secundario cuando uno de ellos no funciona?

Soy nuevo en las aplicaciones basadas en web. Mi requisito es que un usuario acceda a una URL que pueda ser atendida por dos servidores: primario y secundario.

Cuando el Primario deja de funcionar, las solicitudes de esa URL deben reenviarse automáticamente al servidor secundario, de modo que ahora sirva en lugar del Primario (y tan pronto como el Primario se reanude, se convertirá nuevamente en el servidor para todas las solicitudes entrantes). ¿Cómo se puede lograr esto? ¿Habrá un guión que me sirva para ese propósito? ¿Y dónde se ejecutará este script?

¿Qué enfoque debo adoptar? Por favor, comparta algunas aportaciones.

Gracias.

Respuesta1

Qué sistema operativo estás usando?

Dos formas comunes de hacerlo son con balanceadores de carga y con clústeres.

El método más sencillo sería colocar un equilibrador de carga de hardware delante de los servidores web. El LB detectaría cuando el servicio está inactivo en un nodo y redirigiría el tráfico al otro nodo. También existen muchos métodos de HA/equilibrio de carga de software.

Con los clústeres, los servidores tienen conexiones de latido y otros métodos para detectar la disponibilidad del servicio. En un clúster activo/pasivo, como parece estar hablando, un servidor sería el nodo activo y, si fallara, el otro servidor se haría cargo de los servicios. No es necesario realizar cambios de IP porque el clúster utiliza una IP virtual para disponibilidad externa.

Aquíes una pregunta de ciencia ficción relacionada con hacer estas cosas con Apache/Linux.

Respuesta2

La conmutación por error de DNS puede resultar útil en un número limitado de casos. Ver¿Por qué no se recomienda la conmutación por error de DNS?

información relacionada