Servicios de Asignación y Planificación de Recursos Grid

Slides:



Advertisements
Presentaciones similares
Capitulo 7: Procesamiento batch y el Job Entry Subsystem (JES)
Advertisements

Sistemas operativos Prof. Alberto Rivas.
Bioestadística y su rol en la Salud Pública
Internet y tecnologías web
Administración de procesos Lic. Orlando Zamora Rdz.
Sistemas Operativos Administración del procesador.
Hardware y Software de servidor
Planificación de Monoprocesadores
Sistema operativo Componentes de un sistema operativo
Introducción a LAS Bases de Datos
Sistemas Gestores de Ficheros
Proyecto e-CA: Organización Virtual y Testbed Susana Sánchez Expósito José Ruedas Sánchez II Reunión de e-Ciencia Andaluza 16-17, Octubre 2008.
Sistema de producción de datos de ATLAS Julio Lozano Bahilo Universidad de Granada.
I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís
SISTEMAS OPERATIVOS Un Sistema operativo (SO) es un software que actúa de interfaz entre los dispositivos de hardware y los programas de usuario.
Aplicación informática. formando parte de una red. pone sus recursos a disposición de las demás computadoras(clientes) de la red. Maneja información.
Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
SERVIDOR DNS Y WINS INTEGRANTES: Farroñan Beltran Brenher
Sistemas en estratos. Descripción: se organiza en una jerarquía de estratos, estando construido cada uno de ellos sobre el otro que tiene menor jerarquía.
PROGRAMACION DE ESTRUCTURAS DE DATOS
Condor.
Windows XP sp3.
INSTALACIÓN Y MANTENIMIENTO DE SISTEMAS OPERATIVOS
Introducción a los Sistemas de Bases de Datos Distribuidos
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
Integración de VOs y middleware para EGEE
Sistemas operativos de red
Bioinformática FJS.
Universidad Centroamericana
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Implementación y administración de DHCP
Sistemas Operativos Procesos.
Ing. Fabián Ruano.  Definición  Diferencias con BD Centralizadas.
OMAR SANCHEZ ROBLES HECTOR PEREZ GARCIA. “Sistemas de cómputo compuesto por un gran número de CPU´s conectados mediante una red de alta velocidad”, Tanenbaum.
POP3 UCLV Mapas Conceptuales para la enseñanza de Redes de Computadoras.
Clusters Presentado por : Manuel Alejandro ahumada trochez Yenny carabali.
/ Teléfono : Web : Build Solutions IT.
Planificación del Procesador
SISTEMAS OPERATIVOS →¿Qué es un sistema operativo?
EL SISTEMA OPERATIVO.
Planificación de Procesos
Planificación y Gestión de procesos
Introducción a los Sistemas Operativos
ConceptoDefiniciónCaracterísticas (palabra clave) Ejemplo/Aplicación Sistema operativo Es el software que permite al usuario interactuar con la computadora.
SISTEMAS OPERATIVOS.
Servidores Conceptos Generales.
TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS
1 Descripción y control de procesos Capítulo 3. 2 Requerimientos de un SO relacionados con procesos Ejecutar concurrentemente múltiples procesos para.
Curso de Postgrado ‘GRIDS y e-Ciencia’ ” UTILIZACION DE UNA INFRAESTRUCTURA GRID” J. Salt Grupo de GRID Computing del IFIC IFCA, Santander; de Junio.
Administrador de procesos
Sistema de análisis distribuido de ATLAS (ADA) Farida Fassi / Mª Dolores Jordán IFIC.
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
Sistemas Distribuidos
“condición que necesita el usuario para resolver un problema o conseguir un objetivo determinado”. Los requisitos de un sistema son los aspectos que el.
1 Ana Mercedes Cáceres Instructor: Raúl Aguilar Año 2006 [Parte I ]
Estructura de los Sistemas Operativos
1 GESTIÓN DE UTILIZACIÓN DE REDES Noviembre 2013 Herramienta de Monitoreo Pandora FMS David González.
Unidad 2 – Gestión de Procesos
Roles de Open UP.
LSI. Freddy Veloz Sistemas Operativos
INTERRUPCIONES – ABRAZO MORTAL
BASE DE DATOS DISTRIBUIDAS
TEMA: PROCESOS y PLANIFICACIÓN
MIA - Grupo 5 Unidad 2.
TIPOS DE SISTEMAS OPERATIVOS.  Que es un sistema operativo??  Es el encargado de brindar al usuario una forma amigable y sencilla de operar, interpretar,
Historia de los sistemas operativos. Los Sistemas Operativos han sufrido una serie de cambios revolucionarios llamados generaciones. Hay cuatro generaciones:
Bases de Datos y Sistemas de Gestión de Bases Relacionales.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks The gLite Information System Virginia Martín-Rubio.
Planificación de CPU Conceptos Básicos Criterios de Planificación Algoritmos de Planificación Planificación con Múltiples Procesadores Planificación Real-Time.
Transcripción de la presentación:

Servicios de Asignación y Planificación de Recursos Grid Álvaro Fernández Casaní Grupo de Computación Grid Instituto de Física Corpuscular (CSIC/UV) Valencia IFIC - INSTITUTO DE FÍSICA CORPUSCULAR Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 Contenido Problemática de la gestión de recursos Servicios grid Arquitectura de servicios utilizada en el proyecto Eu-Crossgrid Componentes: Scheduling Agent Resource Selector Aplication Launcher Conclusiones y Trabajo Futuro Jornadas Técnicas RedIris 2003

PROBLEMÁTICA DE LA GESTIÓN DE RECURSOS GRID aúna recursos distribuidos heterogéneos, pertenecientes a diferentes organizaciones Diferentes tipos de recursos: Hardware Software Red Tiempo Datos Objetivo: Proveer acceso eficiente a estos recursos Acceso transparente y simple Requerimientos de varios usuarios Organización temporal Problemas: Sistema heterogéneo y dinámico Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 RESOURCE MANAGERS Diferencia entre planificadores locales, y de alto nivel Planificadores locales: Acceso a recursos locales Control de: Políticas Seguridad Accounting Planificación basada en reducir tiempo de respuesta de ejecución los trabajos: algoritmos FCFS, BackFilling, List Schedulling Planificadores alto nivel: Sobre múltiples planificadores locales Acciones: Descubrir recursos Recoger información y decidir cuáles usar Ejecución Planificación basada en políticas de coste de acceso, prioridades, accounting Jornadas Técnicas RedIris 2003

SERVICIOS PARA LA GESTIÓN DE RECURSOS Para soportar la gestión de recursos los planificadores de alto nivel, se valen de servicios en forma de middleware: Acceso a los recursos/planificadores locales (GRAM) Sistemas de información (GIS, MDS, GMA) Por encima de estos: Resource Brokers (Datagrid WMS) Selección de recursos: Matchmaking Envío de Trabajos: Job Submission Service Base de datos de trabajos: Logging and bookeeping Scheduling Agents Decisiones de planificación dependiendo de requerimientos estáticos y dinámicos Ampliación de selección de recursos Jornadas Técnicas RedIris 2003

Proyecto Crossgrid: objetivos en planificación de recursos Soportar servicios de planificación de recursos para aplicaciones interactivas, intentado garantizar un compromiso entre la utilización de recursos y el speed-up de la aplicación Principalmente: Soporte para aplicaciones paralelas (MPI) sobre uno o varios recursos (sites) distribuidos Soporte a aplicaciones interactivas con requerimientos de alta prioridad Soporte a aplicaciones compuestas de múltiples subprocesos: DAGs Primeros prototipos basados en Middleware Datagrid (version 1.4.8) Jornadas Técnicas RedIris 2003

ARQUITECTURA GENERAL Resource Broker / SA MDS: Grid Index Info Server Llamadas al API del MDS Para localizar recursos MDS: Grid Index Info Server UI PORTAL/RAS Llamadas al API del MDS Para localizar recursos SCHEDULING MDS: Grid Resource Info Server Llamadas al API Gram para pedir reserva del recurso Y creacion de procesos Preguntar el estado Actual del recurso Creacion de callbacks Para notificar cambios De estado GSI Local Resource Manager Creación de procesos Petición Job Manager Crear Control y Monitorización Gatekeeper (CE) Process Parse WN WN Process RSL Library Storage Element (SE) Process WN WN Jornadas Técnicas RedIris 2003

Principales componentes del RB/SA Ejecución típica de pasos de scheduling para 1 trabajo por el Scheduling Agent: 1 - Recepción del trabajo Resource Searcher: 2 - Búsqueda de recursos 3 – Planificación y Prioridades 4 – Reserva Temporal Aplication Launcher: 5 - Envío del trabajo 6 - Monitorización 7 - Finalización Resource Broker / SA RS MDS/RGMA AL Resource Management Condor-G Gatekeeper (CE) Jornadas Técnicas RedIris 2003

1 – Recepción del trabajo JobType= mpich-g2 NumCpus = 7 Executable = “my_app” Requirements = “RH 6.2” Rank = AverageSI Resource Broker / SA El usuario manda su trabajo junto con una descripción del mismo al RB/SA Descripción en JDL Especifica tipo de trabajo, requerimientos, función de preferencia El RB/SA mantiene lista de trabajos recibidos Guarda el estado de cada uno Permite reenvío de los trabajos que pudieran fallar Contacta el RS para la siguiente fase: búsqueda de recursos Jornadas Técnicas RedIris 2003

2 – Resource Selector: Búsqueda de recursos Llamadas al API del MDS Para localizar recursos Resource Broker / SA RS MDS: Grid Index Info Server CE3 Llamadas al API del MDS Para localizar recursos JOB MDS: Grid Resource Info Server Se utiliza los Classads (Condor) para localizar recursos que cumplan requerimientos del trabajo. Tiene en cuenta autorización y requerimientos de datos Sólo se utilizan CEs dónde se está autorizado (pre-match) Se utilizan campos del JDL para los requerimientos de datos: OutputSE, InputData, DataAccess Protocol Se buscán CEs con el OutputSE cerca Se prefieren CEs con mayor número de archivos esté también en el OutputSE Se utiliza el matchmaking simple (1 a 1) para trabajos batch, y set-matching (1 a muchos) para trabajos paralelos Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 Matching 1 a 1 matching 1 a 1 (trabajos batch secuenciales): selecciona un CE que cumpla todos los requerimientos, ordenado por la función de preferencia: 1º) Búsqueda de sites (CE) que cumplan requerimientos del trabajo Sistema operativo, software instalado, disponibilidad de datos, etc. Matching 1 a 1 2º) Ordenación de sites (CE) por función de preferencia: Se consultan principalmente los requerimientos dinámicos: Cpus libres, memoria disponible, Para trabajos mpi con requerimientos de múltiples recursos se utiliza set matching (matching 1 a muchos) Jornadas Técnicas RedIris 2003

Set-matching para trabajos mpi Necesitamos hacer un set-matching de un trabajo con varios recursos Ahora debemos: 1º) Igual al anterior, búsqueda de sites (CE) que cumplan requerimientos estáticos (cada recurso debe cumplirlo) Sistema operativo, software instalado, etc. Matching 1 a 1 2º) Con los recursos anteriores, formar grupos de CE que conjuntamente cumplan requerimientos Cpus libres, espacio en disco disponible total Matching 1 a muchos se ordenan con el siguiente criterio: Grupos con menor número de CEs son seleccionados primero (Preferible ejecutar sobre un único CE) Para grupos con el mismo número de CEs, se ordenan con la funcion de preferencia (ponderada con el número de cpus libres que aportan) Para correr trabajos en un único CE se puede utilizar mpich-p4 Para correr trabajos en distintos CEs se utiliza mpich-g2 Jornadas Técnicas RedIris 2003

Ej. Búsqueda recursos para trabajo mpich-g2 sobre varios sites JobType= “mpich-g2” NumCpus = 7 Executable = “my_app” Requirements = “RH 6.2” Rank = AverageSI CE1 FreeCPUs=9 AverageSI=1000 CE2 FreeCPUs=2 AverageSI=3500 CE3 FreeCPUs=3 AverageSI=1000 RS CE5 FreeCPUs=8 AverageSI=2000 CE5 CE4 FreeCPUs=5 AverageSI=2000 CE Soporta mpich-g2 CE No soporta mpich-g2 Jornadas Técnicas RedIris 2003

Ej. Búsqueda recursos para trabajo mpich-g2 sobre varios sites JobType= “mpich-g2” NumCpus = 7 Executable = “my_app” Requirements = “RH 6.2” Rank = AverageSI Estrategia de búsqueda: 1 – CEs con todas los requerimientos y cpus libres: CE1 FreeCPUs=9 AverageSI=1000 CE1 FreeCPUs=9 AverageSI=1000 CE2 FreeCPUs=2 AverageSI=3500 CE1 2 - Grupos de CEs que conjuntamente cumplan requerimientos y cpus libres: CE3 FreeCPUs=3 AverageSI=1000 RS CE5 FreeCPUs=8 AverageSI=2000 CE5 CE2 + CE4 FreeCPUs=7 AverageSI=2428 CE2 CE4 CE4 FreeCPUs=5 AverageSI=2000 CE3 + CE4 FreeCPUs=8 AverageSI=1625 CE3 CE4 CE Soporta mpich-g2 CE2 CE3 CE4 CE No soporta mpich-g2 Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 3 - Prioridades Cuando tenemos varios trabajos podemos establecer prioridades entre ellos: En el JDL se indica una prioridad relativa a otros trabajos Establecen el orden de búsqueda de recursos y envío de trabajos Pueden servir para parar trabajos menos prioritarios (batch) y ejecutar trabajos interactivos Pare esto se necesita un método de apropiación de recursos “preemtion mechanism”) y suspensión temporal de trabajos. Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 4 - Reserva temporal Puede que se produzca el caso de que al mandar un trabajo mpi a varios sites se produzca interbloqueo con otro: Los procesos esperan a que todos estén inicializados para empezar Puede haber diferencias entre los datos del SI y la información real Un trabajo puede estar esperando que se inicie un proceso en un nodo ocupado por otro trabajo que espera al primero. Para solucionarlo se establece un sistema de reservas temporales en el RB que afecta al RS Se reservan el número de cpus en cada recurso No se tienen en cuenta para siguientes selecciones del RS Cuando acaba el trabajo o falla se quita misma. Jornadas Técnicas RedIris 2003

5 - Aplication Launcher: Ejecución del trabajo El siguiente paso es enviar el trabajo de forma fiable a los recursos. El AL es responsable de mandar el ejecutable y los distintos ficheros (GridFtp) al CE o grupo de estos donde se ejecuta el trabajo. Recibe del Resource Selector la lista de recursos ordenados donde enviar el trabajo Se utilizan las prioridades para determinar el orden de envío de trabajos Para un trabajo, se prepara script que se manda a Condor G: Es un gestor sobre Globus (GRAM) para reenvío fiable de trabajos fallidos. No toma ninguna decisión de planificación Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 Tipos de trabajos Dependiendo del tipo de trabajo se utilizará una u otra aproximación: Trabajos “batch”: se manda al CE/JobManager y su planificador local decide cuándo se ejecuta y en qué WN Trabajos “mpich-p4”: se manda al CE/Jobmanager indicando trabajo mpi: Se manda un solo trabajo que será el que ejecute los siguientes pasos. Condor-G permite el envío del mismo Se reservan a través del planificador local los nodos (WN) necesarios Se ejecuta mpirun sobre los nodos (WN) reservados Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 Tipos de trabajos (II) Trabajos “mpich-g2”: MPICH-G2: implementación mpi para correr sobre globus. Utiliza los servicios globus de autenticación, asignación de recursos, movimiento de ficheros, salida de datos Se mandan n diferentes trabajos, que son coordinados por el AL. Ejecución simultánea en recursos: utilización de librería DUROC Condor-G no da soporte a múltiples rsl, por lo que se utiliza el “universo scheduler” y se llama a programa lanzador auxiliar del AL. Requieren que los WN tengan direcciones públicas (RS lo tiene en cuenta) Jornadas Técnicas RedIris 2003

Envío de Trabajos Mpich-G2 El Aplication Launcher manda un script por cada tarea(proceso) mpich-g2 a Condor-G Condor-G envía cada tarea a su correspondiente CE, que lo envíara a su planificador local Cuando el script finalmente se ejecuta en un WN, realiza las funciones para obtener ficheros, etc.. Y lanza el ejecutable real Este ejecutable espera en una barrera (DUROC), enviando mensaje de sincronización al AL Una vez que el AL ha recibido el mensaje de sincronización de todas las tareas, manda la orden de ejecución Puede haber problemas: Si falla la red, nodos, una tarea, AL AL puede quedarse esperando indefinidamente, esperando la sincronización Soluciones: Matar todos los procesos Quitar trabajo de la cola y volverlo a mandar a otros recursos (RS) Jornadas Técnicas RedIris 2003

6 y 7 - Monitorización y Finalización Durante la ejecución del trabajo se utiliza Condor-G para monitorizar el funcionamiento y ejecución. Todos los cambios de estado se guardan en base de datos permanente. Cuando el trabajo falla se puede reenviar a este u otro recurso Al finalizar se recoge la salida del programa y se guarda en el RB/SA. Los datos puedes ser obtenidos desde por el usuario desde ese momento. Se liberan todos los recursos ( almacenamiento en memoria secundaria, etc). Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 Trabajo Futuro Incluir métodos de preemción de trabajos secuenciales, para aplicaciones interactivas más prioritarias. Mejora de la escalabilidad del sistema. Distribuir los componentes para mejorar la estabilidad. Métodos de selección de recursos basados en predicciones e información dinámica sobre el estado de la red. Pasar los servicios actuales a la nueva versión de Datagrid 2.X. Soporte nativo a trabajos interactivos y DAGs en esta versión. Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 Conclusiones Servicios de gestión de recursos para aplicaciones secuenciales y paralelas mpi sobre uno o varios clusters: Scheduling Agent Resource Searcher Aplication Launcher Basado en middleware Datagrid (v1.4.8), y éste en Condor-G y Globus. Componentes implementados sobre el RB de edg, todavía entidad centralizada. Pasando ahora a arquitectura distribuída. Desarrollos de métodos de selección múltiple de recursos, reserva temporal, aplicación de prioridades y ejecución de las aplicaciones secuenciales y paralelas. Jornadas Técnicas RedIris 2003

Jornadas Técnicas RedIris 2003 Más información… Álvaro Fernández ( Alvaro.Fernandez@ific.uv.es) Miquel A. Senar (miquelangel.senar@uab.es) Elisa Heyman (elisa.heyman@uab.es) Proyecto Crossgrid (http://www.eu-crossgrid.org) ¿Preguntas ahora? Jornadas Técnicas RedIris 2003