Clase 08 Arquitectura De Servidores

18
Clase 08: Clase 08: Arquitectura de Arquitectura de Servidores Servidores Curso: Internet y Curso: Internet y desarrollo intranet desarrollo intranet Profesor: Jaime Profesor: Jaime Valenzuela A. Valenzuela A.

description

Clase 08 Arquitectura De Servidores

Transcript of Clase 08 Arquitectura De Servidores

Page 1: Clase 08   Arquitectura De Servidores

Clase 08: Clase 08: Arquitectura de Arquitectura de

ServidoresServidoresCurso: Internet y desarrollo Curso: Internet y desarrollo

intranetintranet

Profesor: Jaime Valenzuela A.Profesor: Jaime Valenzuela A.

Page 2: Clase 08   Arquitectura De Servidores

ConexionesConexiones ConmutadasConmutadas Telefónicas dedicadasTelefónicas dedicadas ISDNISDN ADSLADSL CableCable LANLAN Dedicadas (Fibra)Dedicadas (Fibra) Inalámbricas:Inalámbricas:

Conmutadas Conmutadas (Smartcom)(Smartcom)

Área Local (hub Área Local (hub inalámbrico)inalámbrico)

WILLWILL

Parámetros de Parámetros de decisión:decisión: DisponibilidadDisponibilidad Ancho de bandaAncho de banda ConfiabilidadConfiabilidad PrecioPrecio

Page 3: Clase 08   Arquitectura De Servidores

Servidor WebServidor Web Genera páginas webGenera páginas web Se preocupa de:Se preocupa de:

AccesosAccesos CachesCaches Conexión con módulo de scripting/CGIsConexión con módulo de scripting/CGIs Mantención de bitácorasMantención de bitácoras

Ejemplos:Ejemplos: ApacheApache iPlanet (Netscape)iPlanet (Netscape) RoxenRoxen ZeusZeus IISIIS

Page 4: Clase 08   Arquitectura De Servidores

Servidor de BDServidor de BD Mantiene y consulta una BDMantiene y consulta una BD Se preocupa de:Se preocupa de:

AccesosAccesos Optimización de consultasOptimización de consultas RespaldosRespaldos ConcurrenciaConcurrencia TriggersTriggers

Page 5: Clase 08   Arquitectura De Servidores

Servidor de MailServidor de Mail Envía y/o recibe emailsEnvía y/o recibe emails Se preocupa de:Se preocupa de:

SeguridadSeguridad Despacho a usuarios (POP/IMAP)Despacho a usuarios (POP/IMAP) Despacho a otros servidoresDespacho a otros servidores

Opcionales:Opcionales: Análisis de virusesAnálisis de viruses Anti-spammingAnti-spamming RegistrosRegistros

Page 6: Clase 08   Arquitectura De Servidores

FirewallFirewall Selecciona que información entra (o Selecciona que información entra (o

sale) de la red.sale) de la red. Puede utilizar diversos criterios:Puede utilizar diversos criterios:

Puerto de entrada o salidaPuerto de entrada o salida Dirección IP de origen/destinoDirección IP de origen/destino ProtocoloProtocolo HorarioHorario Por contenidos (ej. archivos .EXE)Por contenidos (ej. archivos .EXE)

Page 7: Clase 08   Arquitectura De Servidores

NATNAT Permite utilizar un número IP para Permite utilizar un número IP para

“enmascarar” a varios más.“enmascarar” a varios más. Ofrece un punto único de control. Ofrece un punto único de control.

Ideal para colocar un firewall.Ideal para colocar un firewall. Permite ahorrar números IP.Permite ahorrar números IP. Mejora la privacidad y la seguridad.Mejora la privacidad y la seguridad.

Page 8: Clase 08   Arquitectura De Servidores

Balanceador de CargaBalanceador de Carga Máquina que redirecciona consultas a una Máquina que redirecciona consultas a una

URL entre varios servidores web URL entre varios servidores web replicados.replicados.

Debe tomar en consideración la carga de Debe tomar en consideración la carga de las máquinas y las sesiones de los las máquinas y las sesiones de los clientes.clientes.

Permite mejorar la escalabilidad de un Permite mejorar la escalabilidad de un sitio web, agregándo más computadores sitio web, agregándo más computadores commodity.commodity.

Page 9: Clase 08   Arquitectura De Servidores

ClustersClusters Conjunto de servidores que actúan como Conjunto de servidores que actúan como

una máquina.una máquina. Permite:Permite:

Alta disponibilidadAlta disponibilidad Alto desempeñoAlto desempeño

Existen distintos tipos de clustersExisten distintos tipos de clusters El ejemplo más simple es un balanceador de El ejemplo más simple es un balanceador de

carga con varios servidores webcarga con varios servidores web Otro ejemplo son los “beowulf” clusters: un Otro ejemplo son los “beowulf” clusters: un

conjunto de máquinas en red que actúan conjunto de máquinas en red que actúan como una sola.como una sola.

Existe un nodo maestro, que controla que hace Existe un nodo maestro, que controla que hace quienquien

Existen N nodos de cómputoExisten N nodos de cómputo Utilizan un sistema operativo modificado (ej. Utilizan un sistema operativo modificado (ej.

Linux Scyld)Linux Scyld) Se controlan desde una línea de comandos o Se controlan desde una línea de comandos o

GUI en el nodo maestroGUI en el nodo maestro Se programan en lenguajes tradicionales que Se programan en lenguajes tradicionales que

llaman a una API de clusterllaman a una API de cluster

Page 10: Clase 08   Arquitectura De Servidores

Sitio MínimoSitio Mínimo

1 servidor conectado 1 servidor conectado directamente a la Internet directamente a la Internet hace todo el trabajo:hace todo el trabajo: Páginas webPáginas web Base de datosBase de datos Servidor de mailServidor de mail FirewallFirewall NATNAT

Switch

Servidor

PC1 PCN…

Internet

Page 11: Clase 08   Arquitectura De Servidores

Sitio SimpleSitio Simple

Servidor Web 1

Firewall + NAT

Switch

PC1…Servidor

de MailBase de Datos

PCN

Internet

Page 12: Clase 08   Arquitectura De Servidores

Sitio más seguroSitio más seguro

Firewall

Servidor Web

Servidor BD

NAT

Hub

PC1 PCN…

Servidor de Mail

Hub

Page 13: Clase 08   Arquitectura De Servidores

Soportando más cargaSoportando más carga Balanceo de carga Balanceo de carga

en base a:en base a: Algoritmo “round Algoritmo “round

robin”robin” Carga de los Carga de los

servidoresservidores DNS aleatorioDNS aleatorioServidor

Web 1Servidor

Web 2

Base de Datos

Servidor de

Balanceo

Firewall

Page 14: Clase 08   Arquitectura De Servidores

““Clusters” de Clusters” de Servidores (Farms)Servidores (Farms)

CONTENIDOREPLICADO

CADA SOLICITUD ENVIADAA UN SERVIDOR LIBRE

Page 15: Clase 08   Arquitectura De Servidores

“Clusters” de Servidores (Farms)

Hit#1... Hit#2... Hit#3 ....

Balanceo de Carga

Log Hit#1Hit#5Hit#8Hit#10

Log Hit#2Hit#7Hit#11Hit#12

Log Hit#3Hit#4Hit#6Hit#19

Flujo de hits del tráfico Web

Page 16: Clase 08   Arquitectura De Servidores

SeguridadSeguridad

Anti-hackers:Anti-hackers: Firewall bien programadoFirewall bien programado Análisis de redAnálisis de red Parches a los sistemasParches a los sistemas Software bien programadoSoftware bien programado

Anti murphy:Anti murphy: BackupsBackups UPS: energía ininterrumpidaUPS: energía ininterrumpida Redundancia de servidoresRedundancia de servidores Conexión a varios ISPConexión a varios ISP

Un buen hosting puede Un buen hosting puede hacer parte de estas tareashacer parte de estas tareas

Page 17: Clase 08   Arquitectura De Servidores

Cálculos de CargaCálculos de Carga SupuestosSupuestos

1 página = 40 KB1 página = 40 KB 1 visitante lee 10 páginas1 visitante lee 10 páginas Espero atender 1000 visitantes al díaEspero atender 1000 visitantes al día Supongo que la hora peak es el 20% del tráfico del díaSupongo que la hora peak es el 20% del tráfico del día

CálculoCálculo 40 x 10 x 200 = 80.000 KB/hora (80 MB/hora) = 22 40 x 10 x 200 = 80.000 KB/hora (80 MB/hora) = 22

KB/seg = 176Kb/segKB/seg = 176Kb/seg Factor de seguridad = 2 -> necesito una conexión de Factor de seguridad = 2 -> necesito una conexión de

356Kb/seg356Kb/seg Es una conexión casi casera (ADSL).Es una conexión casi casera (ADSL). Con respecto al PC, un Pentium III:Con respecto al PC, un Pentium III:

Puede servir 10 (depende) páginas por segundo = Puede servir 10 (depende) páginas por segundo = 36.000 paginas/hora36.000 paginas/hora

Puede atender 200 visitantes simultáneosPuede atender 200 visitantes simultáneos

Ejemplo

Ejemplo

Page 18: Clase 08   Arquitectura De Servidores

¿Qué tecnologías utilizaría si ¿Qué tecnologías utilizaría si tuviese que desarrollar un sitio tuviese que desarrollar un sitio

grande?grande? LenguajeLenguaje Base de DatosBase de Datos ServidorServidor ConexiónConexión Lado del ClienteLado del Cliente Herramientas de desarrolloHerramientas de desarrollo