Tema 1: Introducción



Documentos relacionados
ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

Arquitectura de sistema de alta disponibilidad

Asignación de Procesadores

1. Introducción 2. Historia 3. Características clave 4. Cuestiones de diseño

Capítulo 5. Cliente-Servidor.

Informàtica i Comunicacions Plaça Prnt. Tarradellas, FIGUERES (Girona) Tel Fax

Instalación y mantenimiento de servicios de Internet. U.T.3.- Servicio DNS

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

Autenticación Centralizada

Introducción a Java LSUB. 15 de enero de 2015 GSYC

Introducción a las redes de computadores

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes.

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.

Componentes de Integración entre Plataformas Información Detallada

DOMAIN NAME SYSTEM DNS

Arquitectura de Aplicaciones

SISTEMAS DE INFORMACIÓN II TEORÍA

Familia de Windows Server 2003

Windows Server 2012: Infraestructura de Escritorio Virtual

Infraestructura Tecnológica. Sesión 5: Arquitectura cliente-servidor

CAPÍTULO 3: Resultados

CAPITULO 8. Planeamiento, Arquitectura e Implementación

TEMA 2: CAPACIDAD: Diseño del Servicio TI Anexo I: DNS

Proyecto Fin de Carrera OpenNebula y Hadoop: Cloud Computing con herramientas Open Source

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

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

Sistemas Distribuidos Junio 2008

15. Arquitectura de los multiprocesadores. 16. Multiprocesadores de memoria compartida. 17. Multicomputadores.

Capas del Modelo ISO/OSI

Sistemas. Distribuidos

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Servidores de nombres de dominio (DNS) Jesús Torres Cejudo

Almacenamiento virtual de sitios web HOSTS VIRTUALES

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.

RAID. Redundant Array of Independent Disks. Rafael Jurado Moreno Fuente: Wikipedia

CURSO: APACHE SPARK CAPÍTULO 2: INTRODUCCIÓN A APACHE SPARK.

ADMINISTRE CON EFICIENCIA SUS RECURSOS José Flavio Guerra Colorado MBA,PMP,ITIL.

ING. YURI RODRIGUEZ ALVA

Creación y administración de grupos locales

Servidores corporativos Linux

IaaS en los estudios de informática

Memoria Compartida Distribuida (DSM) Sistema de Archivos

MANUAL DE USUARIO DE OFICINA CONECTADA

CAPITULO 9. Diseño de una Base de Datos Relacional Distribuida

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

EXIN Cloud Computing Foundation

Fundamentos de Bases de Datos Distribuidas

CAPITULO 1. Introducción a los Conceptos Generales de Bases de Datos Distribuidas

Administración de Redes

Windows Server 2012: Identidad y Acceso. Módulo 2: Descripción General de Windows Server 2012 Remote Desktop Services.

Global File System (GFS)...

WINDOWS : TERMINAL SERVER

INSTITUTO TECNOLOGICO DE LAS AMERICAS (ITLA) Nombre: Brayhan E. Acosta Hiciano. Matricula: Materia: Sistema Operativo III

Almacenamiento virtual de sitios web HOST VIRTUALES

Ventajas, Características y Aplicaciones de los SGBD Distribuidos.

Cloud Security Alliance. Recomendaciones de Seguridad para Usuarios

En caso de que el cliente nunca haya obtenido una concesión de licencia de un servidor DHCP:

PROYECTO REALIZADO POR: ENTIDAD GESTORA: COFINANCIADO POR:

PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN

Unidad I: La capa de Red

Sistemas Distribuidos

How to Crear Servidor DNS ClearOS

RAID 0 : No redundante

Redes de área local: Aplicaciones y servicios WINDOWS

Es un servicio de resolución de nombres que resuelve direcciones legibles (como en direcciones IP (como ).

4. Programación Paralela

Implementación de plataforma de virtualización con HA basada en Proxmox

GRID COMPUTING MALLA DE ORDENADORES

[CONFIGURACIÓN DE DNS]

Cloud Computing. Lic. Guillermo Montenegro VicePresidente CPCIPC Octubre 2011

Unidad 1: Conceptos generales de Sistemas Operativos.

Preguntas Frec uentes Ia a S

GlusterFS. Una visión rápida a uno de los más innovadores sistema de archivos distribuido

MS_10974 Deploying Windows Server

Nuevas tendencias: Virtualización de computadores / servidores

LiLa Portal Guía para profesores

DOMINIOS DE NIVEL SUPERIOR A NIVEL MUNDIAL.

Motores de Búsqueda Web Tarea Tema 2

Windows Server Windows Server 2003

INTRODUCCION. Tema: Protocolo de la Capa de aplicación. FTP HTTP. Autor: Julio Cesar Morejon Rios

Implantar Microsoft Software Updates Service (SUS)

18 y 19 Sistemas de Archivos Distribuidos y Tarea 05

Componentes del servicio de nombres de dominio. Javier Rodríguez Granados

CENTRO DE RESGUARDO ARQUITECTURA AVANZADA PROF.: JUAN JOSÉ MUÑOZ BUSSI AUTOR: MARIANA FERRETTO

CONSIDERACIONES TÉCNICAS SOBRE LOS SERVICIOS GESTIONADOS DE COPIA DE SEGURIDAD DE STORAGE NETWORKING

CONVERSIÓN DE UN NÚMERO EN BINARIO A DECIMAL Y VICEVERSA

Organización de Computadoras. Turno Recursantes Clase 8

Domine Microsoft Windows Server José Luis Raya Laura Raya Miguel Á. Martínez

CURSOS DE VERANO 2014

PRACTICA NO.24: CLUSTER

Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez

Ministerio de Educación,Cultura y Deporte. Aulas en Red. Windows. Módulo 2: Servicios Básicos. DNS

Administración de infraestructura IT

DNS: Domain Name System

Transcripción:

Tema 1: Introducción Sistemas Distribuidos Enrique Soriano LS, GSYC 10 de septiembre de 2015

(cc) 2015 Grupo de Sistemas y Comunicaciones. Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial - SinObraDerivada (by-nc-nd). Para obtener la licencia completa, véase http://creativecommons.org/licenses/by-sa/2.1/es. También puede solicitarse a Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.

Qué es un sistema distribuido? Conjunto de sistemas o nodos autónomos que para los usuarios se comporta como un único sistema. You know you have a distributed system when the crash of a computer you ve never heard of stops you from getting any work done. Leslie Lamport

Qué es un sistema distribuido? La idea es compartir servicios y recursos: Datos. Hardware: CPU, impresoras, ratones, monitores, etc. Aplicaciones: procesadores de texto, visores, etc. Servicios de localización, sensores, actuadores, etc....

Qué es un sistema distribuido? Ventajas: Económicas: es más barato comprar muchos ordenadores pequeños que fabricar un supercomputador. De hecho, hoy en día, todos los supercomputadores son sistemas distribuidos (p. ej. Blue Gene). Fiabilidad: algunos nodos pueden fallar, pero el sistema puede seguir funcionando. Más del 95 % de las máquinas de Google reinician una vez al mes Lo has notado? Crecimiento incremental: se pueden añadir recursos en demanda. El Cray Titan tiene 18688 CPUs Distribución inherente: algunas aplicaciones dependen de varias máquinas separadas por sus propias características.

Objetivo: Transparencia de distribución Transparencia de distribución: esconder el hecho de que el sistema está formado por distintos componentes. Si se consigue una transparencia total, se obtiene la ilusión de tener un único sistema (single-system image). Tipos: Acceso. Localización. Migración. Relocalización. Replicación. Concurrencia. Fallo.

Transparencia de acceso Esconder los detalles sobre diferencias en la representación de los datos y sus mecanismos de acceso. Ejemplos: Establecer un orden canónico para los bytes (Big Endian / Litte Endian). Acceder una interfaz homogénea para los datos, sin depender de que estos procedan de sistemas de ficheros, BB.DD., sensores, etc.

Transparencia de localización Esconder los detalles sobre la localización de los recursos mediante la asignación de nombres lógicos. Ejemplos: /path/to/a/file http://lsub.org/cursos

Transparencia de migración y relocalización El usuario no se entera si el recurso se mueve de un componente a otro. Si esto pasa mientras que el usuario está usando el recurso, se habla de relocalización. Ejemplos: Cambiar la máquina que autentica a los usuarios en el laboratorio. El componente que sirve un sistema de ficheros cambia mientras que tenemos montado el volumen.

Transparencia de replicación Se oculta que hay varias réplicas del mismo recurso. Requiere transparencia de localización. Ejemplo: El usuario no se da cuenta que cada vez que actualiza una tabla de una BB.DD. se actualizan N réplicas.

Transparencia de concurrencia Ocultar a los usuarios que componentes del sistema necesitan compartir ciertos objetos y deben cooperar para proporcionar el recurso conservando un estado coherente. Ejemplo: El usuario no tiene que reintentar una operación si la base de datos está siendo usada por otro componente en ese mismo instante.

Transparencia de fallo El usuario no se entera si ciertos componentes del sistema han fallado. Enmascarar los fallos es complejo, a veces no es posible, y no siempre es apropiado. Ejemplo: Reemplazar automáticamente un servidor de ficheros que ha fallado por una réplica sin que la operación sobre el fichero falle.

Grado de transparencia Compromiso entre transparencia y eficiencia. Restricciones físicas (latencia, etc.). Conveniencia (p.ej. localización física en un smart space). Comprensibilidad del sistema (p.ej. ocultación de errores a las aplicaciones).

Objetivo: sistema abierto Los recursos se sirven de una forma estándar, siguiendo una semántica y una sintaxis determinada para proporcionar interoperabilidad, portabilidad, y extensibilidad. Descripción de la interfaz del recurso. Formato y semántica de los mensajes. Convenios del sistema. Separación de poĺıticas y mecanismos.

Objetivo: escalabilidad El sistema distribuido debe poder soportar su crecimiento (usuarios, componentes, datos, etc.), su distribución geográfica y su administración. Un servicio centralizado tiende a convertirse en un cuello de botella que reduce la escalabilidad del sistema replicación. Si los clientes del servicio están dispersos geográficamente, un servicio centralizado estará lejos de algunos clientes (p.ej. Akamai) distribución. Un servicio centralizado es más sencillo de implementar. No se puede subestimar la simplicidad de un sistema. Un servicio distribuido es más difícil de asegurar.

Escalabilidad: datos Datos centralizados vs. datos distribuidos. Distribución de los datos en dominios. Ejemplo que ya conocéis: DNS. 10/09/14 12:35 Domain Name Space "zone delegation" NS RR ("resource record") names the nameserver authoritative for delegated subzone = resource records associated with name "delegated subzone" When a system administrator wants to let another administrator manage a part of a zone, the first administrator's nameserver delegates part of the zone to another nameserver. = zone of authority, managed by a name server see also: RFC 1034 4.2: How the database is divided into zones.

Escalabilidad: algoritmos Algoritmo centralizado: los nodos tienen que recolectar todos los datos sobre el estado del sistema para ejecutar el algoritmo. Esto puede no ser asumible. Algoritmo distribuido: Ningún nodo tiene la información completa del sistema. Los nodos toman decisiones en base a su estado. El fallo de un nodo no arruina el algoritmo. No se asume un reloj común exactamente sincronizado. Ejemplos: commit atómico de transacciones, ordenación de eventos, consenso, elección de lider, exclusión mutua distribuida, radiado fiable, etc.

Escalabilidad geográfica Principal problema: latencia*. L1 cache reference : 0.5 ns L2 cache reference : 7 ns Mutex lock/unlock : 25 ns Main memory reference : 100 ns SSD random read : 150,000 ns = 150 us Read 1 MB sequentially from memory : 250,000 ns = 250 us Round trip within same datacenter : 500,000 ns = 0.5 ms Read 1 MB sequentially from SSD* : 1,000,000 ns = 1 ms Read 1 MB sequentially from disk : 20,000,000 ns = 20 ms Send packet CA-Netherlands-CA : 150,000,000 ns = 150 ms La latencia entre nodos lejanos tiene un ĺımite fijo: velocidad de la luz. Comunaciones menos fiables a larga distancia (retransmisiones más latencia). * http://architects.dzone.com/articles/every-programmer-should-know

Técnicas para escalabilidad geográfica Comunicación asíncrona en servicios no interactivos. Agrupación de operaciones (batching). Protocolos con pocos round-trips. Preprocesado en el cliente. Caching coherencia de cache.

Escalabilidad administrativa Dominios de administración. Mezcla problemas técnicos con problemas no-técnicos (poĺıticas, relación entre humanos, etc.).

Algunos tipos de sistemas distribuidos Clusters: El control se suele centralizar en un nodo llamado Master. Nodos homogéneos (hw, OS) Comunicados por una LAN de alta velocidad

Algunos tipos de sistemas distribuidos Grids: El control esta distribuido (federado) Distintas organizaciones comparten sus nodos (organizacion virtual). Nodos heterogéneos (hw, OS). Comunicados por Internet.

Algunos tipos de sistemas distribuidos Transaction Processing Systems. ACID: Atomicy: la operación se realiza de forma indivisible. Consistency: la operación no viola invariantes del sistema. Isolation: las operaciones no interfieren entre sí. Durability: una vez acabada, es permanente.

Algunos tipos de sistemas distribuidos Middleware de integración (OOM, MOM, etc.). Pervasive Computing, AmI. Wearable Computing, Personal/Body Area Networks. Health Care Systems. Sensor Networks.

Algunos tipos de sistemas distribuidos Cloud Computing: IaaS: Infrastructure as a Service, p.ej. Amazon EC2. PaaS: Platform as a Service, p.ej. Google App Engine. SaaS: Software as a Service, p.ej. Google Apps. STaaS: Storage as a Service, p.ej. Amazon S3.

Algunos tipos de sistemas distribuidos Y veremos muchos más! Fog Computing, Internet of Things...