TEMA 2: CAPACIDAD: Diseño del Servicio TI



Documentos relacionados
TEMA 2: CAPACIDAD: Diseño del Servicio TI Anexo II: Amazon EC2

Sistemas de Operación II

Capítulo 5. Cliente-Servidor.

UNIVERSIDAD DE ORIENTE FACULTAD DE ICIENCIAS ECONOMICAS LAS REDES I. Licda. Consuelo Eleticia Sandoval

Sistemas de Operación II

Manual de puesta en Cluster del Servidor de Firma de la 4.0.

Arquitectura: Clusters

toda la potencia de un Dedicado con la flexibilidad del Cloud

Obtenga más información acerca de LoadMaster para Azure

Virtualización en Servidores. Conceptos básicos

COPPEL MANUAL TÉCNICO MCC DE SISTEMAS PROGRAMACIÓN DESCRIPCIÓN DEL PROCESO DE ARQUITECTURA DE SOFTWARE

INFORME TECNICO PREVIO DE EVALUACIÓN DE SOFTWARE N /UIE-PATPAL - FBB

Descripción de Arquitectura Repositorio de metadatos de componentes de software

NORMATIVA DE HOSTING VIRTUAL DE LA UNIVERSIDAD DE SEVILLA (SIC - JUNIO 2014)

Sistema de Provisión Centralizada CPS

Cloud Computing. Rodrigo Moreno Rosales DN-11

Alcatel-Lucent VitalQIP Appliance Manager

DEPARTAMENTO ADMINISTRATIVO NACIONAL DE ESTADÍSTICA. Oficina de Sistemas

Virtualización. El valor de la Virtualización de Servidores en la PYME

TEMA 1: INTRODUCCIÓN A SERVICIOS TI

SISTEMAS DE INFORMACIÓN II TEORÍA

Arquitectura de sistema de alta disponibilidad

Consolidación inteligente de servidores con System Center

Global File System (GFS)...

Manual de Procedimientos

Alumno: Jorge Sordo Balbín Profesor: Luis Joyanes Aguilar Nº Expediente: Correo Electrónico:

CAPÍTULO I. Sistemas de Control Distribuido (SCD).

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES

Sistemas. Distribuidos

Planificación, Administración n de Bases de Datos. Bases de Datos. Ciclo de Vida de los Sistemas de Información. Crisis del Software.

Introducción al Capacity planning para servicios

Pruebas y Resultados PRUEBAS Y RESULTADOS AGNI GERMÁN ANDRACA GUTIERREZ

Plataforma de expediente

II.1. Situación actual 2. II.2. Necesidades requeridas 3 III. DESCRIPCIÓN DE LOS SERVICIOS A CONTRATAR 3 5 IV. ORGANIZACIÓN DE LOS TRABAJOS 6

Infraestructura Convergente (CI)

CURSOS DE VERANO 2014

REDES AD HOC INFORME DE REDES DE COMPUTADORES I. Felipe Muñoz Jonathan Porta Matías Contreras

PLATAFORMA SAP HANA Diez preguntas principales al elegir una base de datos in-memory. Empiece aquí

4. Base de datos XML nativa: Marklogic

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

Operación 8 Claves para la ISO

INFORME TÉCNICO PREVIO DE EVALUACIÓN DE SOFTWARE N SOFTWARE DE VIRTUALIZACIÓN

Computación de Alta Performance Curso 2009 TOLERANCIA A FALLOS COMPUTACIÓN DE ALTA PERFORMANCE 2009 TOLERANCIA A FALLOS

Actividades para mejoras. Actividades donde se evalúa constantemente todo el proceso del proyecto para evitar errores y eficientar los procesos.

SERVICIO DE SOPORTE Y MANTENIMIENTO ADAPTATIVO, PERFECTIVO Y EVOLUTIVO DEL GESTOR DE EXPEDIENTES Y REGISTRO (REGEXLAN) DE LANBIDE

Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Síntesis Lecturas Recomendadas. Arquitectura de Computadoras

ESQUEMAS DE SISTEMAS VOIP CON ALTA DISPONIBILIDAD Y ALTO RENDIMIENTO

Peer-to-Peer (Punto a Punto) Cliente-Servidor

SMV. Superintendencia del Mercado de Valores

Bechtle Solutions Servicios Profesionales

ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS

Almacenamiento virtual de sitios web HOSTS VIRTUALES

Windows Server 2012: Infraestructura de Escritorio Virtual

IAP ENTORNOS INFORMATIZADOS CON SISTEMAS DE BASES DE DATOS

Autenticación Centralizada

Arquitectura Cliente/Servidor

GUÍA DE SEGURIDAD DE LA INFORMACIÓN GUÍA GOBIERNO CORPORATIVO PARA EMPRESAS SEP

Planificación de Proyectos con SAP HANA Cloud

III. INTRODUCCIÓN AL CLOUD COMPUTING

protección y replicación remota de datos... dib backup remoto GARANTÍA DE CONTINUIDAD DE NEGOCIO ante cualquier contingencia de pérdida de datos

Herramientas de. Sistemas Informáticos I.E.S. Virgen de la Paloma

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

DISCOS RAID. Se considera que todos los discos físicos tienen la misma capacidad, y de no ser así, en el que sea mayor se desperdicia la diferencia.

Curso de seguridad informática en el entorno docente. Sesión 4. PONENTE: Jaime López Soto.

Soluciones de Transformación a Cloud

Curso: Arquitectura Empresarial basado en TOGAF

IaaS en los estudios de informática

CONSOLIDACIÓN DE SERVIDORES PARA RENOVACIÓN DE PLATAFORMA DE SERVICIOS SERPES

Análisis de costos proyectado de la plataforma SAP HANA

Sistema de Interconexión de Registros (SIR)

INTELIGENTE Y VERSÁTIL

Familia de Windows Server 2003

Intel Tera-Scale Computing Alumno: Roberto Rodriguez Alcala

GERENCIA DE INTEGRACIÓN

Windows Server Información general para partners

PLIEGO DE PRESCRIPCIONES TÉCNICAS PARA LA CONTRATACIÓN DE SERVICIOS DE MANTENIMIENTO DEL SISTEMA DE INFORMACIÓN ESTADÍSTICO DE LA CONSEJERÍA DE

Administración de Centros de Computo. ITIL. MSG.ING. DARWIN CERCADO B dcercado@primma.com.ec

RODRIGO TAPIA SANTIS com) has a. non-transferable license to use this Student Guide

UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO CENTRO UNIVERSITARIO U. A.E. M. TEMASCALTEPEC. LICENCIATURA EN INFORMÁTICA ADMINISTRATIVA

Preguntas Frec uentes Ia a S

BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN

REQUERIMIENTOS NO FUNCIONALES

Evaluación del Software

ANEXO XII. Denominación: Administración y programación en sistemas de planificación de recursos empresariales y de gestión de relaciones con clientes.

Symantec Desktop and Laptop Option

GESTIÓN Y CONTROL DEL DESARROLLO E IMPLANTACIÓN DE APLICACIONES

CAPÍTULO 3: Resultados

Software y Plataformas a demanda

GANETEC SOLUTIONS HPC Banca / Aseguradoras

Capítulo 5: Pruebas y evaluación del sistema. A continuación se muestran una serie de pruebas propuestas para evaluar varias

Estrategia de Cómputo en la Nube. Servicios en la Nube

pymegnu v2.0 PRESENTACIÓN DE PRODUCTOS

Trabajo TP6 Sistemas Legados

Medellín, martes 27 de octubre del 2015

Hadoop. Cómo vender un cluster Hadoop?

ELEMENTOS GENERALES DE GESTIÓN.

GUÍA TÉCNICA. Desarrollo de Proyectos en Plataforma Liferay en el Gobierno de Extremadura

RESUMEN EJECUTIVO. La gestión de riesgos corporativos incluye las siguientes capacidades:

MACROPROCESO GESTIÓN TECNOLÓGICA

SurfCop. Libro blanco técnico

Transcripción:

CIMSI Configuración, Implementación y Mantenimiento de Sistemas Informáticos TEMA 2: CAPACIDAD: Diseño del Servicio TI Daniel Cascado Caballero Rosa Yáñez Gómez Mª José Morón Fernández E.T.S. de Ingeniería Informática

Contenidos Introducción Gestión de la Capacidad Escalabilidad Replicación Distribución Caching

Gestión de la Capacidad (I) Catálogo Diseño del Servicio Niveles del Servicio Capacidad Disponibilidad Continuidad Seguridad Proveedores

Gestión de la Capacidad (II) Gestión de la Capacidad Suministro y Demanda Análisis de Coste y Beneficio Dimensionamiento de Recursos Cumplimiento de Requisitos

Gestión de la Capacidad (III) Gestión de la Capacidad: Se asegura de que existe la capacidad en tiempo presente y futuro, y que ésta se corresponde en todo momento con las necesidades del cliente Capacidad Recursos Coste Demanda

Sistema: Definición Interfaz Hardware Software Comunicaciones Documentación SISTEMA

Sistema: Características (I) Funcionalidad: Propósito del sistema, qué tiene que hacer. Se describe mediante especificaciones funcionales. Rendimiento: Criterios que determinen requisitos no funcionales exigidos al sistema. Se especifica en términos de tiempos de ejecución, tiempos de respuesta, consumo de recursos, coste, etc. Dependencia (dependability): Restricciones que hacen al sistema dependiente de otros y limitan su rendimiento o disponibilidad. Seguridad: Nivel de riesgos característicos del sistema, sean de acceso al sistema como de errores conocidos del mismo

Sistema: Características (II) Coste: Referido al coste total de la propiedad: licencias, puesta en marcha, mantenimiento, costes de administración, coste eléctrico, de refrigeración, etc. Usabilidad: Grado en que puede ser utilizado el sistema Facilidad de aprendizaje y de uso. Capacidad para ser gestionado (manageability): cómo y en qué medida. Adaptabilidad: Versatilidad del sistema en lo que concierne a la capacidad de aceptar cambios a lo largo de su tiempo de vida.

SERVICIO: Perspectiva ITIL PERSONAS (RRHH) PROCESOS (Procedimientos) PRODUCTOS (Infraestructura) PROVEEDORES (Acuerdos y contratos)

Sistema Distribuido vs. Sistema en red Sistema Distribuido: 1. conjunto de computadores 2. interconectados 3. que comparten un estado, 4. ofreciendo una visión de sistema único. Sistema en red: 1. conjunto de computadores 2. interconectados 3. con estados independientes

Servicio Distribuido Infraestructura subyacente: sistema distribuido, de forma que: Cada uno de los nodos ofrece sólo un subconjunto del servicio por sí mismo Función de distribución: Según el tipo de petición de acceso al servicio o recurso determina que nodo o conjunto de nodos lleva a cabo la tarea requerida. Petición Respuesta Función de distribución

Contenidos Introducción Gestión de la Capacidad Escalabilidad Replicación Distribución Caching

Gestión de la Capacidad: Actividades (I) Monitorización de Rendimiento Planificación de Capacidad Análisis de Rendimiento

Gestión de la Capacidad: Actividades (II) 1. Monitorizar: Medir y obtener datos de: Sistema: Rendimiento de servidores Tráfico de Red Ejemplo: Nagios 2. Analizar Datos: Reactiva: En respuesta a problemas imprevistos (fire-fight) Proactiva: Prevención de Problemas evita el impacto en la prestación del servicio

Gestión de la Capacidad: Actividades (III) 1. Planificar Capacidad: Predecir los niveles de carga considerando: Evolución de carga de trabajo Niveles de Servicio acordados. Utilizando: Modelos analíticos: Teoría de Colas Simulaciones: Carga de trabajo Escenarios alternativos o exploratorios

Gestión de la Capacidad: Actividades (IV) Capacidad Coste

Contenidos Introducción Gestión de la Capacidad Escalabilidad Replicación Distribución Caching

Contenidos Introducción Gestión de la Capacidad Escalabilidad Definición Enfoques. Tipos. Modelos Efectos Leyes Gestión Replicación Distribución Caching

Escalabilidad: Definición Sistema escalable: Capaz de manejar la adición de usuarios y recursos sin: Sufrir una degradación notoria de su rendimiento Incrementar excesivamente la complejidad en su administración. Ejemplo: DNS Incrementar la complejidad de la administración Degradación del rendimiento

Contenidos Introducción Gestión de la Capacidad Escalabilidad Definición Enfoques. Tipos. Modelos Efectos Leyes Gestión Replicación Distribución Caching

Escalabilidad: Enfoques Un sistema puede escalarse desde el punto de vista: Geográfico: Los nodos del sistema están distribuidos en zonas geográficamente dispersas y se necesita mantener la capacidad de ampliar dicha distribución Administrativo: La administración del sistema requiere capacidad de delegación en nuevas organizaciones o personas. Funcional: El sistema necesita ampliar su funcionalidad sin causar impacto en rendimiento y complejidad administrativa.

Escalado: Tipos Vertical (scaleup): En este caso se añaden recursos a un nodo del sistema. Típicamente se trata de añadir capacidad de computación (CPU), memoria o disco a una computadora concreta. Ejemplo: Una aplicación transaccional como la gestión de una cuenta bancaria. Horizontal (scaleout): Consiste en añadir un nuevo nodo al sistema. Ejemplo: Cualquier aplicación web de hoy en día.

Escalado: Modelos Físico Infraestructura basada en un conjunto de máquinas unidas en red y con algún sistema de almacenamiento compartido o no. Esta infraestructura física puede ser compartida entre distintos servicios o dedicada a uno de ellos. El dimensionamiento de esta infraestructura debe dar soporte a la suma de máximas capacidades requeridas por los servicios que soportan.

Escalado: Modelos Virtual (I) Modo tradicional de trabajo: Máquinas con un único S.O. sobre el que se ejecutan aplicaciones Bajo índice de aprovechamiento (típico < 20%) Poca flexibilidad al trabajar con máquinas físicas. HW actual muy potente Procesadores Multicore Memoria RAM muy barata Espacio en disco asequible Redes de alta velocidad confiables

Escalado: Modelos Virtual (II) VIRTUALIZACIÓN: Capacidad de ejecutar múltiples S.O. en el mismo HW: Infraestructura: Basada en un conjunto de máquinas virtuales unidas en red virtual o física y con algún sistema de almacenamiento compartido o no. Puede ser compartida entre distintos servicios o dedicada a uno de ellos. Hipervisor: software que nos permite virtualizar. Ventajas: Mayores índices de aprovechamiento de HW: 60-70%. Alto grado de consolidación.

Escalado: Modelos Virtual (III) Ventajas: Infraestructura física que da soporte a la virtual NO tiene por qué estar dimensionada para la suma de máximos requeridos El coste total de dimensionamiento es menor. Mayor flexibilidad: Es posible migrar una máquina virtual de una máquina física a otra sin reinstalar. Simplificación de las tareas de mantenimiento y gestión al consolidar servicios. Ampliar el HW beneficia a todas las máquinas virtuales. Mucho más sencillo tener entornos de prueba o preproducción y/o S.O. antiguos.

Escalado: Modelos Virtual (IV) Inconvenientes: Demasiadas capas de abstracción Se pierden las optimizaciones de los gestores de: Procesos Memoria virtual MMU (Memory Management Unit) Ficheros Thin-provisioning Asunción de que: No coexisten en el tiempo los picos de consumo de recursos Se compensan los picos

Escalado: Modelos Virtual (V) Ejemplos: Vmware ESX / ESXi. Citrix Xen Server. Red Hat Enterprise Linux Virtualization Hypervisor (KVM) Oracle xvm Server.

Escalado: Modelos Virtual (VI) Ejemplos: Vmware Server Oracle VirtualBox Microsoft HyperV Vmware Fusion (Mac) Parallels (Mac)

Escalado: Modelos Cloud(I) Modelo de contratación de infraestructuras en las que hay una transparencia total respecto al mundo físico. Se contratan unos recursos bajo unas condiciones pactadas y se consumen: IaaS (Infraestructure as a Service): plataformas físicas sobre las que desplegar un software determinado. PaaS (Platform as a Service): software middleware sobre el que desplegar aplicaciones. SaaS (Software as a Service): conjuntos completos de software y hardware. Ventaja: Gran capacidad de adaptación a requisitos muy cambiantes en el tiempo (Servicios con alta estacionalidad)

Escalado: Modelos Cloud (II) Fuente: http://www.saasblogs.com/saas/demystifying-the-cloud-where-do-saas-paas-and-other-acronyms-fit-in/

Escalado: Modelos Cloud(III) PrivateCloud: Los datos y procesos son gestionados desde la organización sin restricciones de ancho de banda, problemas de seguridad y requisitos legales que conllevaría el uso de servicios de tipo Public Cloud sobre redes públicas y abiertas. PublicCloud: Los recursos se proporcionan dinámicamente, sobre Internet, a través de un proveedor de servicios o aplicaciones web que explota los recursos de terceros. HybridCloud: Modelo mixto en el que se integran proveedores internos y externos.

Escalado: Modelos Cloud(IV) Inconvenientes: Los datos se alojan en servidores de otros países con otros marcos legales Problemas legales con la cesión de los datos La marcha atrás no está asegurada Las empresas cliente tienen que ser muy maduras Tener muy claro qué necesitan contratar Efectuar una monitorización propia para validar que el servicio ofrecido se ajusta al SLA contratado Desconocimiento de la infraestructura subyacente Consumo en competencia con el resto de los clientes. Troobleshooting complicado porque todo se convierte en una caja negra.

Escalado: Modelos Cloud(V) La auditoría de los controles y mecanismos de seguridad a nivel de usuario, abarcando: La virtualización de recursos segura, Modelos de programación, Análisis binario del SW para testificación remota y protección del cloud. SAS70 typeii: Proporciona una guía para auditar si una organización cumple los aspectos de seguridad relativos al almacenamiento de los datos, su disponibilidad, gestión, etc. Ejemplo: Salesforce, Google y AWS.

Escalado: Modelos Cloud(VI) AMAZON EC2: Los usuarios son capaces de monitorizar y controlar sus aplicaciones como una pero no como un servicio. Para lograr la gestión del servicio, se requieren las siguientes capacidades SLAs definido a nivel de aplicación, en términos de capacidad de carga de trabajo y concurrencia de tareas Provisión dinámica de servicios adicionales para gestionar la carga de trabajo adicional Enfoque Focal Server AWS (Amazon Web Service) se ha popularizado como un estándar de facto. EUCALYPTUS: Implementación open-source de la API AWS.

Escalado: Modelos Cloud(VII) GigaSpaces: Utiliza la técnica IMDG (In-Memory Data-Grid) para gestionar el estado de los datos en una BBDD relacional que constituye el cuello de botella de la escalabilidad y del rendimiento Proporciona todas las características básicas de un grid de datos de alta calidad Altas prestaciones Alta disponibilidad Tolerancia a fallos Seguridad Interoperabilidad de datos En los Gridsde Datos (DataGrids) el recurso a compartir es el Espacio de Almacenamiento y los Datos

Escalado: Modelos Cloud(VIII) GigaSpaces: Utiliza la técnica IMDG (In-Memory Data-Grid) para gestionar el estado de los datos en una BBDD relacional que constituye el cuello de botella de la escalabilidad y del rendimiento Características únicas: Peticiones continúas e integración transparente con fuentes de datos externas. Simplificación del despliegue y actualización Capacidad de asegurar la alta disponibilidad de aplicaciones que se ejecuten sobre Amazon EC2. Un enfoque basado en la arquitectura SBA (Space- Based Architecture) de GigaSpace permite ejecutar aplicaciones transaccionales de baja latencia en un entorno altamente distribuido como Amazon EC2.

Escalado: Modelos Cloud(IX) GAE (Google App Engine): Útil para startups o desarrolladores independientes que desarrollan aplicaciones web desde cero, sin necesidad de preocuparse por la infraestructura Incluye escalado automático y balanceo de carga Conlleva riesgos potenciales y mayores costos, debido a la dependencia de Google, derivada del uso de APIs adaptadas como BigTable, lanzadores de Python.

Escalado: Modelos Cloud(X) SunCloud: Múltiples arquitecturas HW para la adaptación de sistemas a la carga de trabajo. Multi-cliente (Multi-tenancy) Compartición de recursos entre un gran pool de usuarios permitiendo una infraestructura centralizada a bajo coste. Modelo de almacenamiento abierto con las siguientes características, sin coste adicional: Snapshot, Replicación, Compresión Diez veces más rápido de desplegar que un datacenter convencional

Escalado: Modelos Cloud(XI) Arquitectura computacional AWS EC2 (Elastic Compute Cloud) Public Cloud Servicio IaaS PaaS Gestión de la Virtualización Balanceo de carga Nivel de SO ejecutándose en un hypervisor Xen El servicio permitirá a los usuarios balancear las peticiones entrantes y el tráfico entre múltiples instancias EC2 Técnica de balanceo: Round-Robin, HAProxy GigaSpaces SBA (Space-Based Architecture) Virtualización a nivel de aplicación Realizado a través del protocolo de comunicación de alto rendimiento de GigaSpaces sobre la infraestructura de red EC2 Seguridad SAS70 type II SSH-tunneling

Escalado: Modelos Cloud(XII) Arquitectura computacional Google App Engine Arquitectura geodistribuida de Google Servicio PaaS PaaS Gestión de la Virtualización Balanceo de carga Arquitectura multicliente Escalado y balanceo de carga automático SunCloud Cluster de servidores con direcciones IP públicas Hybrid Cloud Hypervisor (Sun xvm Server) Balanceadores HW Seguridad SAS70 type II User provisioning Gestión de acceso basado en roles

Escalado: Tipos vs. Modelos Entorno Físico Scale out Scale up Entorno Virtual Cloud Computing

Escalado: Tipos vs. Modelos Entorno Físico Entorno Virtual Scale out Añadir más recursos físicos: máquinas, infraestructura de red y/o almacenamiento. Añadir nuevos recursos virtuales: nuevas conexiones virtuales de red y/o almacenamiento. Scale up Añadir más recursos físicos al nodo concreto: CPU, memoria, disco o ancho de banda de red. Añadir más recursos virtuales al nodo concreto: CPU, memoria, disco o ancho de banda de red. Cloud Computing Contratar más capacidad al proveedor del Cloud.

Contenidos Introducción Gestión de la Capacidad Escalabilidad Definición Enfoques. Tipos. Modelos Efectos Leyes Gestión Replicación Distribución Caching

Escalado: Efectos Incrementar la complejidad de la administración Degradación del rendimiento

Escalado: Efectos sobre Rendimiento Confiabilidad (reliability): Nº. de nodos en el sistema la probabilidad de que todos estén funcionando al mismo tiempo Escalado geográfico la probabilidad de que todos los componentes puedan comunicarse. El sistema no debe dejar de funcionar por el fallo de un subconjunto de los nodos que lo componen. Carga del Sistema: Nº. de nodos en el sistema la cantidad de datos y el Nº de peticiones que debe manejar Escalado horizontal para repartir la carga entre los distintos nodos del sistema se aplican técnicas de replicación, distribución y caching.

Escalado: Efectos sobre la Administración Carga administrativa: Nº. de nodos en el sistema Complejidad de la gestión: Administración centralizada: directorios de usuarios y servicios, servicios de nombre o, incluso, repositorios de binarios de sistema Administración delegada: las distintas organizaciones mantienen la administración de sus usuarios y datos Heterogeneidad: Nº. de nodos en el sistema la variabilidad de HW, S.O., SW, etc. Imposible imponer homogeneidad Requisito de COHERENCIA.

Contenidos Introducción Gestión de la Capacidad Escalabilidad Definición Enfoques. Tipos. Modelos Efectos Leyes Gestión Replicación Distribución Caching

Escalado: Leyes (I) Geométrico: Cada dimensión L, W y H se multiplica por el mismo factor, p.e., el doble. Volumen crecerá en potencias de tres de L, W, H. En el caso del cubo V= L 3 Allometric: Cambio de forma en respuesta a cambios de tamaño No mantiene la similitud geométrica Existe un punto crítico a partir del cual el sistema no podrá mantener el escalado geométrico y si no cambia de forma degradará su funcionamiento.

Escalado: Leyes (II) Speedup: Cuantifica la reducción en el tiempo consumido al ejecutar una tarea determinada incrementando progresivamente el número de procesadores Scaleup: El objetivo es mantener constante el tiempo de ejecución (o tiempo de respuesta) por usuario incrementando la carga de trabajo en proporción al número de procesadores disponibles. Se invierte en capacidad de procesamiento adicional PARA dar soporte a un mayor Nº de usuarios, sin que la carga de trabajo adicional impacte negativamente en el tiempo de respuesta El incremento de capacidad computacional ha de efectuarse mediante un escalado vertical proporcional a la carga de trabajo adicional.

Escalado: Leyes (III) T 1 Tarea a paralelizar T 1 Paralelizable Sec. Reducción de Tiempo (1-σ) T 1 /P σ T 1 0 < σ < 1

Escalado: Leyes (IV) Speedup: Cociente entre el tiempo consumido en la ejecución de una tarea en un sistema monoprocesador y el requerido para su ejecución en un sistema multiprocesador S( p) = T 1 σ σ T + T p 1 1 1 0 < σ < 1 Eficiencia: Definida en términos de la aceleración, como el promedio de la aceleración por procesador E( p) = S( p) p

Escalado: Leyes (V) Scaleup: La capacidad de escalado viene dada por el cociente entre el throughput logrado con p procesadores y el obtenido con un procesador: X p : Throughput logrado con p procesadores X 1 : Throughput logrado con 1 procesador C( p) = ASUNCIÓN: Un sistema monoprocesador: Realiza operaciones intensivas en computación al 100% de utilización Tiempo de espera consumido en E/S despreciable. X 1 =C 1 /T 1. X p X 1

Escalado: Leyes (V) Sistema multiprocesador: p=2: C 2 = 2 C 1 T 2 = T 1 + σ T 1 p=3: C 3 = 3 C 1 T 3 = T 1 + 2 σ T 1 p=n: C p = p C 1 T p = T 1 + (p-1) σ T 1 X ( p) p C C p T + p T T + p σ 1 1 = = ( 1) σ 1 ( 1) 1 1 1 p X ( p) = X (1) 1 + 1 σ ( p ) X ( p) p C( p) = = X (1) 1 + p 1 σ ( )

Escalado: Leyes (VI) Modelo Universal de Escalado: Contempla el overhead introducido por la comunicación entre los procesadores: ASUNCIÓN: Un proceso puede comunicarse con hasta (p-1) procesos La interacción entre procesadores, crecerá cuadráticamente con el número de procesadores: p (p-1). k: Contribución a la latencia introducida por la comunicación entre procesadores: p C( p) = 1 + σ p 1 + k p p 1 ( ) ( )

Contenidos Introducción Gestión de la Capacidad Escalabilidad Definición Enfoques. Tipos. Modelos Efectos Leyes Gestión Replicación Distribución Caching

Escalado: Gestión (I) Método: Análisis cuantitativo de datos de monitorización: 1. Obtener ecuación de regresión: curva a la que responden los datos de consumo de recursos (cpu, memoria, disco, etc.) 2. Determinar el punto en el que sistema se degrada: allometric scaling Se asume que la configuración de la infraestructura HW subyacente permanece inalterable para todos los niveles de carga medidos

Escalado: Gestión (II) OBJETIVO: Estimar la función de escalabilidad: C( N) = N 1 + α N 1 + β N N 1 ( ) ( ) C(N): Función de Escalabilidad N: Carga de usuario Parámetros de escalabilidad Universales: α, β MÉTODO: Regresión cuadrática: 2 y = a x + b x + c

Escalado: Gestión (IV) 1. Calcular capacidad: C(N)= X(N)/X(1) 2. Calcular la eficiencia: C(N) /N 3. Calcula el inverso de la eficiencia: N/C(N) 4. Obtener X=N-1 5. Calcular Y= [N/C(N)]-1 Ejemplo: (1) (2) (3) (4) (5) Virtual Users (N) Script/Hour X(N) RelCap C(N) Efficiency C/N Inverse N/C Linearity (N-1) Deviation (N/C)-1 1 65,00 1,00 1,00 1,00 0 0,00 18 996,00 15,32 0,85 1,17 17 0,17 36 1.652,00 25,42 0,71 1,42 35 0,42 72 1.853,00 28,51 0,40 2,53 71 1,53 108 1.829,00 28,14 0,26 3,84 107 2,84 144 1.775,00 27,31 0,19 5,27 143 4,27 216 1.702,00 26,18 0,12 8,25 215 7,25

Escalado: Gestión (III) OBJETIVO: Estimar mediante Regresión cuadrática: C( N) N C( N) = N 1 + α N 1 + β N N 1 ( ) ( ) = 1+ α N 1 + β N N 1 ( ) ( ) Transformación de variables: X = N 1 N Y = 1 C( N) Realizando el cambio de variable y comparando con: 2 y = a x + b x + c α = b β = a a

Escalado: Gestión (V) 6. Hacer análisis de regresión: Insertar gráfico de dispersión Agregar Línea de Tendencia Linearity (N-1) Deviation (N/C)-1 0 0,00 17 0,17 35 0,42 71 1,53 107 2,84 143 4,27 215 7,25 X Y

Escalado: Gestión (VI)

Escalado: Gestión (VII) 6. Hacer análisis de regresión X Y Virtual Users (N) Script/Hour X(N) RelCap C(N) Efficiency C/N Inverse N/C Linearity (N-1) Deviation (N/C)-1 1 65,00 1,00 1,00 1,00 0 0,00 18 996,00 15,32 0,85 1,17 17 0,17 36 1.652,00 25,42 0,71 1,42 35 0,42 72 1.853,00 28,51 0,40 2,53 71 1,53 108 1.829,00 28,14 0,26 3,84 107 2,84 144 1.775,00 27,31 0,19 5,27 143 4,27 216 1.702,00 26,18 0,12 8,25 215 7,25 a b = 8 10 5 = 0, 0172

Escalado: Gestión (VIII) 7. Calcular los parámetros de escalabilidad: α, β y N* / C max =C(N*) 8. Calcular C(N): α = b a β = a * 1 α N = β N C( N) 1 α N 1 β N N 1 ( ) ( ) (7) (8) Trendline Parabola Parameterss Super-Parameter Coefficients Serial Values Users Predicted C(N) Capacity Modeled Measured a 8,00E-05 alfa 0,0170 1 1,00 65,00 65,00 b 0,0171 beta 8,00E-05 18 13,70 890,53 996,00 c 0,0000 N* 110 36 21,22 1.379,31 1.652,00 72 27,51 1.788,05 1.853,00 108 28,83 1.874,19 1.829,00 144 28,34 1.842,08 1.775,00 216 25,79 1.676,52 1.702,00

Escalado: Gestión (IX) 9. Calcular X(N)=C(N) X(1) Trendline Parabola Parameterss Super-Parameter Coefficients Serial Values Users Predicted C(N) Capacity Modeled Measured a 8,00E-05 alfa 0,0170 1 1,00 65,00 65,00 b 0,0171 beta 8,00E-05 18 13,70 890,53 996,00 c 0,0000 N* 110 36 21,22 1.379,31 1.652,00 72 27,51 1.788,05 1.853,00 108 28,83 1.874,19 1.829,00 144 28,34 1.842,08 1.775,00 216 25,79 1.676,52 1.702,00 Throughput 2.000,00 1.800,00 1.600,00 1.400,00 1.200,00 1.000,00 800,00 600,00 400,00 200,00 0,00 1 18 36 72 108 144 216 Virtual Users (9) Capacity Modeled Measured

Contenidos Introducción Gestión de la Capacidad Escalabilidad Replicación Distribución Caching

Sistema o Servicio replicado Un servicio o un sistema está replicado cuando tiene más de una instancia lógica idéntica y autónoma, que aparece hacia el usuario como una sola. Cada petición de acceso al servicio o al sistema se redirige a una y sólo una de estas instancias Las réplicas pueden disponerse dispersas en la red de manera que los fallos de la red no aíslen al conjunto completo y permitan el acceso a algunas de ellas. También se pueden reconfigurar dinámicamente el conjunto de servidores usados por el cliente de manera que este último no perciba ninguna interrupción del servicio.

Replicación: Consideraciones Localización de las Réplicas: Depende del objetivo: fallos de conectividad o retardo: réplicas distribuidas. confiabilidad (reliability) disponibilidad (availability): réplicas cercanas unas de otras. Consistencia de los datos: Los cambios en un nodo o en la información de un nodo han de ser visibles para los restantes nodos del sistema.

Replicación: Consistencia Un conjunto de nodos replicados es consistente, en un instante dado, si la información contenida por todos ellos es la misma desde el punto de vista de quien la lee. Aproximaciones: Soportar la replicación para información en RO. Replicar sólo la información que no cambia. Las peticiones de actualización han de enviarse a todas las réplicas Disponibilidad de las réplicas Orden importante

Replicación: Consistencia (II) Aproximaciones: Primary-siteapproach: Las peticiones de actualización se envían a un nodo primario que se encarga de reenviarlas a los demás nodos: Orden de aplicación: dos fases. Fallo en el nodo primario promoción de un nuevo nodo primario entre los restantes. Inconveniente: las actualizaciones se retrasan Consenso por quorum o voto: Las peticiones de actualización se envían a un conjunto determinado de réplicas

Replicación: Ej.: Jboss AS (I) En Jboss AS: Cluster Partición Nodo Instancia Cluster: Conjunto de nodos que se comunican entre sí y trabajan en la consecución de un objetivo común

Replicación: Ej.: Jboss AS (II) La comunicación entre nodos se realiza mediante la librería JGroups que proporciona: Trazabilidad del cluster Comunicación confiable de mensajes: Los canales JGroups con la misma configuración y nombre tienen capacidad de autodescubrimiento dinámico. Ejecuntado run -c all en dos instancias AS en la misma red, es suficiente para que formen parte del mismo cluster.

Replicación: Ej.: Jboss AS (III)

Replicación: Ej.: Jboss AS (IV) Es importante la arquitectura desde el punto de vista de una aplicación cliente. Dos arquitecturas básicas: Client-side interceptors (= smart proxies, stubs) Load Balancers externos

Replicación: Ej.: Jboss AS (V) Client-side interceptors La mayoría de los servicios AS (JNDI, EJB, JMS, RMI y Jboss Remoting) requieren que el cliente obtenga un objeto proxy remoto. Generado por el servidor e implementa la interfaz de negocio del servicio. El cliente hace las peticiones al proxy local como si se tratara realmente del objeto remoto. El proxy local intercepta las peticiones y las enruta a los nodos del cluster.

Replicación: Ej.: Jboss AS (VI) Client-side interceptors El proxy mantiene información actualizada acerca del cluster: Conoce las IP de todos los nodos disponibles del servidor Conoce la función de distribución definida Sabe como hacer failover de las peticiones si el nodo del cluster que debía responder no está disponible

Replicación: Ej.: Jboss AS (VII) Client-side interceptors

Replicación: Ej.: Jboss AS (VIII) Load Balancer Externos Los servicios HTTP no necesitan que el cliente se descargue ningún objeto. Cliente: Desconoce la arquitectura del cluster AS que está trás él. Se conecta a un balanceador externo y Se requiere un elemento externo que conozca: La localización y disponibilidad de los nodos del cluster La función de distribución y cómo hacer failover

Replicación: Ej.: Jboss AS (IX) Load Balancer Externos

Contenidos Introducción Gestión de la Capacidad Escalabilidad Replicación Distribución Caching

Servicio Distribuido Infraestructura subyacente: sistema distribuido, de forma que: Cada uno de los nodos ofrece sólo un subconjunto del servicio por sí mismo Función de distribución: Según el tipo de petición de acceso al servicio o recurso determina que nodo o conjunto de nodos lleva a cabo la tarea requerida. Petición Respuesta Función de distribución

Distribución: Ventajas Permite que la información mantenida se reparta entre los distintos nodos Imprescindible en los casos en los que no es posible que la mantenga un solo nodo. Reduce el número de peticiones que tiene que manejar cada nodo. Permite que la administración pueda dividirse y delegarse por fracciones.

Distribución: Consideraciones Localización: Criterios de: Confiabilidad (reliability) Organización administrativa Transparencia De ubicación De identificación De compartición de recursos Función de distribución: Complejidad para garantizar TRANSPARENCIA Replicada: balanceadores de carga duplicados

Contenidos Introducción Gestión de la Capacidad Escalabilidad Replicación Distribución Caching

Caching: Concepto. Implicaciones Técnica de replicación lógica y temporal: Se mantiene memorizada la respuesta a una petición de forma para evitar: El recálculo. Acceso al nodo que la proporciona. Implicaciones: tiempo de espera de respuesta por parte del cliente rendimiento de cada nodo Nº de consultas y cálculos la escalabilidad Técnicas de validación para asegurar la validez de la información

Caching: Consistencia (I) Time-outs: Se verifica la validez periódicamente. Check-on-use (hints): Si es posible discernir cuándo es correcta o no la información obtenida. Las entradas o hints no tienen por qué acogerse a mecanismos de mantenimiento de la consistencia. Si la información no está actualizada: se detectará cuando vaya a ser usada y en ese momento se descartará.

Caching: Consistencia (II) Callbacks: En algunos sistemas, el único modo de chequear la validez de un dato cacheado es volver al origen de los datos y rescatar la información original: Ventajoso: volúmenes de datos muy grandes. Optimización: Nodo propietario de un dato cacheado anota en una lista el nodo en el que está cacheado. Si el dato cambia se notifica a todos los nodos que tengan una copia cacheada. Leases: Similar a la anterior pero en este caso el dato cacheado cuenta con un tiempo de vida (lease) en el que está garantizado que no va a modificarse.

Caching: Ejemplo Fuente: http://www.flickr.com/photos/faceyspacey/2637848351/lightbox/