1 Tema 8: Web Distribuido, Servidores Replicados
2 Servidores Replicados: Clusters de Servidores Copias “identicas” de servicio (datos o aplicación). Tranparencia replicación: Clientes no necesitan saber que existen multiples servidores/copias. Mecanismos de redirección. Arquitecturas: Cluster/granjas de servidores. Situado en un único lugar: data center. Red de distribución contenidos (CDN, ADN). Cluster distribuido por Internet. Client Redi rec ción Server1 Server2 Server3 Cluster de Servidores
3 Servidores Replicados: Pros y Contras Ventajas: Escalabilidad: 1 sola máquina no puede servidor a miles de clientes. Rendimiento: Repartir la carga de manera “inteligente”. Disponibilidad: Si una máquina falla, n-1 disponibles (backup). Desventajas: Mecanismos replicación de datos.
4 Redirección HTTP a Servidor Local Servidor Web Redirector que usa la orden HTTP 3xx Redirect. Client server Client GET GET HTTP GET server GET
5 Redirección DNS DNS Redirector resuelve nombre a varias IPs. Client server Client w2.ebay.com GET GET DNS : : :… server w1.ebay.com Virtual Host
6 Redirección Proxy Server w2.ebay.com w1.ebay.com GET GET GET w2.ebay.com GET w1.ebay.com Es un servidor Web que reenvia petición, y devuelve respuesta. Cluster de Servidores
7 Balanceo de Carga en Redirector w2.ebay.com w2.ebay.com w1.ebay.com w1.ebay.com GET GET GET w2.ebay.comw2.ebay.com GET w1.ebay.comw1.ebay.com w1.ebay.com - 2/3 w2.ebay.com - 1/3 Repartir peticiones en base a carga, capacidad, etc.. En proxy server, redirector HTTP o DNS. Cluster de Servidores
8 Proxy Server distribuidor vender.ebay.com comprar.ebay.com Fichero httpd.conf: ProxyPass /comprar/ ProxyPass /vender/ GET GET GET vender.ebay.com GET comprar.ebay.com Un proxy server puede distribuir peticiones a diferentes servidores según la página Web / Aplicación Web Cluster de Servidores
9 Proxy Server distribuidor de servidor TOMCAT Capa Web Linux Aplicación /Applic2/ Tomcat Context Aplic Java Virtual Machine Apache Aplicación /Examples/ Java Virtual Machine AJP Worker1 Worker2 mod_jk.so JK host1.unavarra.es host2.unavarra.es Tomcat Context Aplic JK Fichero httpd.conf : LoadModule jk_module libexec/mod_jk.so AddModule mod_jk.c JkWorkersFile.conf/workers.properties JkMount /Examples/* worker1 JkMount /Applic2/* worker2 Fichero Workers.properties: worker.worker1.type=ajp13 worker.worker1.host=host1.unavarra.es worker.worker1.port=8009 worker.worker2.type=ajp13 worker.worker2.host=host2.unavarra.es worker.worker2.port=8009
10 Proxy Server Cache Reverso (delante del Servidor) 1. y 2. igual, mismo software. Ventajas: Hit Rate > 99%. Desventajas: servidor proxy debe tener mejor rendimiento que servidor web, p.e. optimizado para ficheros. 1.a 1.b 1.c. 1.d 2.a. 2.b. 2.c. Situados en mismo lugar Cluster de Servidores
11 Red Distribución Contenido, CDN “Cluster de Servidores Distribuido” Servidores en diferentes lugares del mundo: Gran tolerancia a fallos, Proximidad clientes. Client server Client GET GET DNS : : :… server Alojado en USA Alojado en UK
12 Servidores Replicados: Mismos Datos (y Aplicaciones) Replicación de Ficheros, Aplicaciones, BBDD,….. Client server Client w2.ebay.com GET w2.ebay.com GET w1.ebay.com HTTP GET w1.ebay.com w1.ebay.com, w2.ebay.comw1.ebay.comw2.ebay.com server w1.ebay.com 301 w2.ebay.com GET
13 Replicación Datos (I) Replica principal – secundarios: Se escribe un principal, se lee de secundarios. Mecanismos consistencia sencilla. Todas replicas principales: Se escribe y lee de todas las replicas. Mayor disponibilidad en escritura. Mecanismo consistencia complejo. Client leer escribir Client leer escribir
14 Replicación Datos (II) Consistencia fuerte: Todas las replicas devuelven la misma versión de un dato (no tiene que ser la última). Mecanismos complejo: protocolos multicast fiable, propietario de BBDD, etc. Consistencia debil: (consistencia fuerte no puede lograrse en Internet). Alguna replica no devuelve la última versión de un dato. Mecanismos sencillos iniciados por cliente: HTTP- Cache-IMS. Rsync: periodicamente o bajo demanda se sincronizan los archivos.
15 Servidores Replicados en Cluster Todas replicas principales. Replicación consistencia fuerte. Client server Client w2.ebay.com GET w2.ebay.com GET w1.ebay.com HTTP GET w1.ebay.com w1.ebay.com, w2.ebay.comw1.ebay.comw2.ebay.com server w1.ebay.com 301 w2.ebay.com GET Cluster de Servidores
16 Replicación en Red Distribución de Contenido, CDN Replicas secundarias. Mecanismos consistencia debil: replicas secundarias son caches de principal. Client server Client GET GET DNS : : :… server USA UK server Copia Principal ES HTTP-IMS