2008-12-30 7 views
10

Me interesan las estrategias de conmutación cruzada de colores cruzados para aplicaciones web, de modo que si el sitio principal falla, los usuarios llegan sin problemas al sitio de conmutación por error en otro sitio.Diseño de fail-over cross-colo, conmutación por error de nivel DNS?

El lado de la aplicación de las cosas parece que se resuelve en su mayoría con una configuración de base de datos maestro-esclavo entre los colos y servicios diseñados para recuperar y poder recoger a mitad de camino. Estoy intentando descubrir la estrategia para mover el tráfico del sitio principal al sitio de conmutación por error. La conmutación por error de DNS, incluso con TTL bajos, parece llevar un fair bit of latency.

¿Qué estrategias recomendaría para mover rápidamente el tráfico entre colos, suponiendo que los servidores en el colo principal no están disponibles?

Si tiene otra experiencia/palabras de sabiduría sobre el failover cross-col me encantaría escucharlas también.

Respuesta

3

DNS son molestos, incluso si se pone TTL bajas en sus archivos de zona.

La razón de esto es que muchas aplicaciones (por ejemplo, MSIE) mantienen sus propios cachés que ignoran el TTL. Otro software hará una sola llamada gethostbyname() o equivalente y almacenará el resultado hasta que se reinicie el programa.

Peor aún, se sabe que muchos servidores DNS recursivos de los ISP ignoran los TTL por debajo de su mínimo preferido e imponen sus propios TTL más altos.

En última instancia, si el sitio se va a ejecutar desde ambos centros de datos sin cambiando su dirección IP, entonces necesita ver los arreglos para "Multihoming" a través de anuncios de rutas globales BGP4.

Con multihoming necesita obtener al menos un bloque de 24 netos de espacio de direcciones IP "independiente del proveedor" (también conocido como "PI") y luego solo debe anunciarse a la tabla de enrutamiento global desde el sitio de respaldo si el principal el sitio se desconecta

+0

Leyendo la página de la wikipedia de Multihoming ahora, muchas gracias. ¿Algún comentario sabio sobre la efectividad de esta técnica y el nivel de dificultad para configurarla? – Parand

+0

es bastante peludo: realmente necesita asesoramiento de nivel de ISP, y también cooperación de los sitios que proporcionan conectividad en ambos sitios. No todos los ISP permitirán a los clientes anunciar sus propias rutas. – Alnitak

0

Si puede, Multicast - http://en.wikipedia.org/wiki/Multicast o anycast - mecanismos basados ​​http://en.wikipedia.org/wiki/Anycast

+0

multicast no sirve de nada, el resto de Internet no tendrá en cuenta – Alnitak

+0

La multidifusión dependerá del peering de los colos. Anycast funciona a través de Internet como un todo. Sin embargo, es posible que hayas perdido esa parte de mi publicación, accidentalmente salvé la publicación antes de que hubiera terminado ... :-) –

+0

de hecho, no estaba allí entonces. Sin embargo, anycast normalmente se usa para servicios UDP sin estado, y no se lleva bien con TCP (ver advertencias en el artículo de wikipedia). – Alnitak

3

En cuanto a DNS, me gusta hacer referencia, "Why DNS Based Global Server Load Balancing Doesn't Work". Para todo lo demás: use BGP.

El diseño de redes con el fin de equilibrar la carga utilizando BGP no es una tarea fácil y yo mismo no soy un experto en esto. También es más compleja de lo que Wikipedia le puede decir pero hay un par de artículos interesantes en la web que detalle la forma en que puede realizarse:

siempre hay más si búsqueda de BGP y equilibrio de carga. También hay un par de libros blancos en la red que describen cómo Akamai hace su balance de carga global (creo que también es BGP), que siempre es interesante de leer y conocer.

Más allá de los conceptos obvios que puede usar para lograr el software y el hardware, también puede consultar con su ISP/proveedor/colo si pueden configurarlo.

Además, sin ofender con respecto a su elección de colo (¿Quién es el proveedor?), pero la mayoría de los lugares deben configurarse para hacer frente a los tiempos de inactividad, etc., no deberían exigirle que tome medidas. Por supuesto, las inundaciones o los extraterrestres siempre pueden golpear, pero en ese caso, creo que hay cuestiones más importantes. :-)

+0

En mi experiencia y en charlar con amigos que usan varios proveedores de colo, no pude encontrar una sola persona que no había experimentado el tiempo de inactividad de un tipo u otro, debido a que el proveedor colo. Me encantaría encontrar un proveedor que se ocupe de manera elegante del problema, no dude en recomendarlo. – Parand

+0

Sé lo que dices. Pero, p. no tuvimos problemas alguna vez con ServerCentral. En Europa estoy colocando en un Telia POP. Caro, pero sin problemas! Con PEER1 (NYC), hemos estado bien, en realidad sufrimos un menor tiempo de inactividad cuando falló la fuente de alimentación de su enrutador. :( – Till

Cuestiones relacionadas