Balance de Carga - La aproximación vía DNS con BIND

3 - La aproximación vía DNS con BIND

[editar]
Curso gratis creado por Mauricio Paredes. Extraido de: http://www.tejedoresdelweb.com/307/article-5819.html
18 de Octubre de 2005
Para implementar esto se configura al dominio www.chilerock.cl como in alias mapeado a los servidores del cluster wwwN.chilerock.cl usando multiples lineas CNAME (nombre canónico):

Listado con varios CNAMEwww.chilerock.cl. IN CNAME www1.chilerock.cl IN CNAME www2.chilerock.cl IN CNAME www3.chilerock.cl IN CNAME www4.chilerock.cl IN CNAME www5.chilerock.cl IN CNAME www6.chilerock.cl

Todo esto suena perfecto, el tráfico está distribuido igualitariamente en el cluster, pero en la práctica hay que luchar contra el hecho de que los servidores de DNS guardan un cache que resuelve los números IP en cualquier nivel de la jerarquía. Este cache es controlado por el parámetro TTL (time-to-live), que es agregado en cada pieza de información entregada por el servidor de DNS, y que reside el campo SOA (start of authority) de los archivos de zona de BIND, mismo archivo donde residen los CNAME.

Ahora aparece un nuevo problema: cuando se setea el parámetro TTL muy alto disminuyen las consultas DNS por el enlace a Internet, pero por otra parte los otros servidores DNS retienen la información en el cache por mucho tiempo, lo que lleva a tener una mala distribución del tráfico en la carga de los servidores. En cambio setear el parámetro TTL muy bajo aumenta el tráfico de solicitudes DNS y el tiempo de solicitus del visitante dramaticamente dado que los otros servidores de DNS expiran la información más rápido y por lo tanto deben resolverla más seguido, pero se obtiene un mejor balance de la distribución del tráfico. La desición de cual es el valor que el parámetro TTL debe tener depende de cuantos delays intermitentes se piense que un visitante esta dispuesto a aceptar anter de considerar que se perdió en la calidad del servicio, y cual es el nivel de balance que se desea. En el artículo Load Balancing Your Web Site: Practical Approaches for Distributing HTTP Trafficse sugiere un valor de una hora para parámetro TTL.

Un último problema queda, al disminuir el parámetro TTL del archivo de zona para se obtiene el efecto deseado, pero al mismo tiempo se el TTL de todos las direcciones en el archivo, por ejeplo para ftp.chilerock.cl. La solución en este caso es utilizar un pequeño truco, separando los servidores del cluster en un archivo de zona distinto y por lo tanto en un subdominio de chilerock.cl, para el ejemplo llamado rr.chilerock.cl. Como resultado se obtiene un archivo de configuracion de BIND y dos archivos de configuracion de zona:

Configuración de Bind;; ;; named.boot -- configuración de BIND ;; : : ;type domain source-file primary chilerock.cl db.chilerock primary rr.chilerock.cl db.chilerock.rr : : Configuración de Zona:; ; db.chilerock -- zona de BIND DNS para chilerock.cl ; IN SOA world.chilerock.cl. root.world.chilerock.cl. ( 1998021502 ; SERIAL 604800 ; REFRESH: Secondaries refresh after 1 week 3600 ; RETRY: Secondaries retry after 1 hour 604800 ; EXPIRE: Maximum TTL of Data is 1 week 86400 ; MINTTL: Minimum TTL of Data is 1 day ) IN NS ns.chilerock.cl. ;; ;; the resource record for www.foo.dom which ;; maps to the Round-Robin domain ;; www IN CNAME www.rr.chilerock.cl. ;; aqui es donde apunta a otro archivo ftp IN A 192.168.1.253  Archivo de zona para el dominio rr.chilerock.cl.; ; db.chilerock.rr -- zona de BIND DNS para rr.chilerock.cl ; ; ; the start of authority (SOA) resource record which ; forces a minimal time-to-live (TTL) for this zone file ; IN SOA world.chilerock.cl. root.world.chilerock.cl. ( 1998021501 ; SERIAL 3600 ; REFRESH: Secondaries refresh after 1 hour 600 ; RETRY: Secondaries retry after 10 minutes 3600 ; EXPIRE: Maximum TTL of Data is 1 hour 1800 ; MINTTL: Minimum TTL of Data is 30 minutes ) IN NS ns.chilerock.cl. ;; ;; the multiple canonical name (CNAME) resource record ;; which implies BIND's Round-Robin (RR) feature ;; www IN CNAME www1.rr.chilerock.cl. IN CNAME www2.rr.chilerock.cl. IN CNAME www3.rr.chilerock.cl. IN CNAME www4.rr.chilerock.cl. IN CNAME www5.rr.chilerock.cl. IN CNAME www6.rr.chilerock.cl. ;; ;; the address (A) resource records for the ;; final NAME -> IP mapping ;; www1 IN A 192.168.1.1 www2 IN A 192.168.1.2 www3 IN A 192.168.1.3 www4 IN A 192.168.1.4 www5 IN A 192.168.1.5 www6 IN A 192.168.1.6
[editar]

1 opinión

Un poco de respeto.

El contenido del artículo no está mal, por lo que, en primer lugar, gracias por ponerlo a disposición de todos. Pero se nota descaradamente que es una traducción (y no muy buena) de algún artículo en inglés. ¿por que los hispanos somos tan poco respetuosos con el trabajo ajeno y no ponemos una referencia al trabajo original ni a tiros? particularmente si la traducción que hacemos es una chapuza.

Cursos gratis relacionados con 'Balance de Carga'

Se discute cómo mejorar el performance aumentando el número de servidores Web. Esto involucra distribuir... Más »
Generalmente tendemos a culpar a la perversidad intencional, a la malicia astuta, la megalomanía, etc.... Más »
El presente es un trabajo de síntesis destinado a todos los que se preocupan con... Más »
Resulta una paradoja en nuestro siglo que la innovación tecnológica que ha facilitado la velocidad... Más »
Ningún problema de la política económica contemporánea, es tan crucial y complejo como el considerar... Más »

Autor y licencia de 'Balance de Carga'


Curso gratis de Mauricio Paredes. Extraido de: http://www.tejedoresdelweb.com/307/article-5819.html CopyLeft
Los contenidos de este sitio pueden ser reproducidos solamente bajo estas condiciones. La licencia está respaldada con el registro de propiedad intelectual número 97.125 en Chile y otros países.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.