![¿Es el DNS por turnos una posible solución para la alta disponibilidad?](https://rvso.com/image/623630/%C2%BFEs%20el%20DNS%20por%20turnos%20una%20posible%20soluci%C3%B3n%20para%20la%20alta%20disponibilidad%3F.png)
Digamos que tengo 2 IP para un dominio determinado (DNS por turnos).
Si una de las IP deja de responder, ¿los clientes intentarán conectarse a la otra IP? ¿O simplemente no podrán establecer comunicación con el dominio?
Respuesta1
La operación por turnos de DNS no es un buen sustituto de un equilibrador de carga. El servidor DNS continuará entregando la IP del nodo que está inactivo, por lo que algunos de sus usuarios accederán a su servicio y otros no.
Cuando el cliente realiza la consulta DNS, el servidor DNS devuelvetodode las direcciones IP asociadas con ese nombre. La magia la hace el servidor DNS rotando el orden de esa lista para cada consulta. Sin embargo, depende de la aplicación implementar la capacidad de "recorrer" la lista hasta encontrar una IP que funcione. Y algunas aplicaciones no hacen eso.
Windows Telnet, por extraño que parezca, es una de esas aplicaciones que es lo suficientemente inteligente como para recorrer la lista vinculada de IP devueltas. Puedes ver este comportamiento tú mismo si intentas hacer telnet a google.com, por ejemplo. Notarás que se necesita unlargoEs hora de fracasar finalmente. Esto se debe a que google.com tiene muchas direcciones IP y el cliente telnet estaba probando todas.
Respuesta2
El uso de un Load Balancer seguirá dejando un único punto de falla. Si su balanceador de carga se desconecta, su sitio web se cae.
Contrariamente a la respuesta anterior, la mayoría de los clientes HTTP yaHACERadmite probar cada dirección IP devuelta por una consulta DNS hasta que una regrese con una respuesta válida. Por favor vea aquí:
http://blog.engelke.com/2011/06/07/web-resilience-with-round-robin-dns/
Parece que el autor probó los siguientes navegadores y descubrió que funcionan bien.
Chrome 11 en Windows 7
Firefox 4.0 en Windows 7
Internet Explorer 8 en Windows 7
Opera 11 en Windows 7
Safari 5 en Windows 7
Internet Explorer 7 en Windows XP (después de un retraso notable)
Firefox 4.0 en Windows XP (después de un retraso notable)
Navegador nativo de Android en Android 2.3.3
Navegador nativo de iPhone en iOS 4.3.3
El uso de round robin no ofrece todas las funciones de un servidor de equilibrio de carga, cosas como poder monitorear los tiempos de respuesta de ambos servidores y enrutar más tráfico a uno, si el otro no responde tan rápido como debería). En cuanto a la resiliencia, diría que Round Robin DNS es probablemente una mejor solución, ya que ya no hay un único punto de falla.
Respuesta3
Si bien el DNS por turnos normalmente no tiene retroalimentación sobre el estado de los servidores para los que proporciona direcciones, puede ser útil tener algún tipo de balanceador de carga (incluidos trucos basados en enrutadores) para cada una de esas direcciones.
Existen trucos para actualizar DNS cuando algo falla; Si esto sucede, el DNS por turnos con TTL adecuadamente cortos puede ser un pseudoequilibrador de carga.