Condor.

Slides:



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

Sistemas operativos Prof. Alberto Rivas.
Planificación de Monoprocesadores
Cuentas de Usuarios Como Mac OS X es un verdadero sistema operativo multiusuario, por tanto una computadora puede usar mas de un usuario, integrando.
MAC OS.... CONCEPTOS GENERALES
UNIX COMP 240.
¿QUÉ ES DATO? LOS ELEMENTOS DATOS SE REFIEREN A DESCRIPCIONES BÁSICAS DE COSAS, ACONTECIMIENTOS, ACTIVIDADES Y TRANSACCIONES QUE SE REGISTRAN, CLASIFICAN.
Sistema operativo Componentes de un sistema operativo
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.
ARQUITECTURA CLIENTE-SERVIDOR
Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
TEMA 2: «CONFIGURACIÓN DE MÁQUINAS VIRTUALES»
Los servicios de red son la fundación de una red de trabajo en un ambiente de computadoras. Generalmente los servicios de red son instalados en uno o.
Subsistemas De un Sistema Operativo Celeste Domínguez Romo
Miguel Martin Iglesias 4º B E.S.O Trabajo Informática
Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
Introducción al software
Introducción a los Sistemas Operativos Memoria Virtual
UNIDAD 2. ADMINISTRACION DE PROCESOS Y DEL PROCESADOR
Base de Datos Distribuidas
INSTALACIÓN Y MANTENIMIENTO DE SISTEMAS OPERATIVOS
TIPOS DE SERVIDORES 4/2/2017 3:29 PM
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
ARIS-G: Software de Monitoreo Geomecánico de Superficies
En las empresas se generan documentos que tienen que ser administrados, revisados y autorizados por varias personas, por lo cual es necesario determinar.
Sistemas Operativos Distribuidos Plataforma Cliente/Servidor
Direcciones físicas y direcciones virtuales (lógicas)
Elemento Lógico (Software)
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Servicios de las Redes Por: Karen Caraballo Álvarez Marisol Sánchez Márquez Educ. 676 Prof. Carmen Robles Sánchez (Ed, D (c) )
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.
Profesor: Rodrigo Sanhueza Figueroa
BASE DE DATOS BY: Julián Villar Vázquez.
Introducción al modelo Cliente-Servidor Carlos Rojas Kramer Universidad Cristóbal Colón.
Hebras Cecilia Hernández. Qué es un proceso? Consiste Espacio de direccionamiento Código a ejecutar Datos estáticos y dinámicos Pila o stack CPU: PC,
Hilos En La Computación. (THREADS).
Introducción a los Sistemas Operativos
FUNDAMENTOS TECNOLÓGICOS DE INFORMACIÓN
Gestión de procesos Sistemas Operativos Edwin Morales
The nesC Language: A Holistic Approach to Networked Embedded Systems Tomado de paper de: D. Gay, P. Levis, R. Behren, M. Welsh, E. Brewer, D. Culler.
1 Descripción y control de procesos Capítulo 3. 2 Requerimientos de un SO relacionados con procesos Ejecutar concurrentemente múltiples procesos para.
COMPONENTES DEL SISTEMA OPERATIVO.
Introducción a los Sistemas Operativos
Memoria virtual.
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.
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
Sistemas Distribuidos
Agenda  Introducción  Relevamientos de tecnologías Objetivos de la fase de relevamiento de tecnologías Principales tecnologías disponibles -OpenMosix,
S.O. WINDOWS SERVER 2003.
SISTEMAS OPERATIVOS. Cómo trabaja un SO Qué es el SO El sistema operativo (SO) es el software del sistema destinados a la realización de algunas tareas.
Clase #7 – Sistemas de Procesamiento de Datos
Estructura de los Sistemas Operativos
Explicación de los Temas del Segundo Período.
UNIVERSIDAD LATINA BASES DE DATOS ADMINISTRACIÓN.
María José Freire Mayra Coello Juan Francisco Pérez
Monitorización y optimización del rendimiento en Windows 2000.
UNIVERSIDAD LATINA II. FUNCIONES DEL ADMINISTRADOR.
LIA. SUEI CHONG SOL, MCE..  1.- SOFTWARE BÁSICO O DE SISTEMA. Conjunto de programas imprescindibles para el funcionamiento del sistema.  2.- SOTWARE.
ARQUITECTURA ALTERNATIVA DE SERVIDORES SISTEMAS OPERTIVOS DE RED En un sistema operativo de red los usuarios saben que están conectados a la red y que.
Funcionamiento del equipo de computo Luz Elva Seas Lopez.
DOCENTE: DAISY KATERINE RODRÍGUEZ DURÁN. CONTENIDO TEMÁTICO SISTEMAS OPERATIVOS PAQUETES INTEGRADOS DE OFICINA PROCESOS Y PROCEDIMIIENTOS DE UNIDAD ADMINISTRATIVA.
SEGURIDAD INFORMATICA II VIII. DEFINICIÓN DE POLÍTICAS DE SEGURIDAD .
TIPOS DE SISTEMAS OPERATIVOS.  Que es un sistema operativo??  Es el encargado de brindar al usuario una forma amigable y sencilla de operar, interpretar,
Evelin Ramos Cabrera 1° B
El Sistema Operativo es el software básico necesario para el funcionamiento de cualquier ordenador Los Sistemas Operativos están en continua evolución.
CAPITULO III El Sistema Operativo (OS)
Conociendo el modelo Cliente-Servidor
Conociendo el modelo Cliente-Servidor. Introducción En el mundo de TCP/IP las comunicaciones entre computadoras se rigen básicamente por lo que se llama.
Un equipo de computo esta compuesto por hardware, software y humanware; el Software es la parte lógica de la computadora, el humanware es el usuario y.
Transcripción de la presentación:

Condor

Introducción Proyecto de investigación nacido en la Universidad de Wisconsin. Maneja más de 1000 estaciones de trabajo. De acuerdo con las estadísticas distribuye más de 650 CPU a diario.

¿Que es el proyecto Condor? Sistema de manejo de carga de trabajo tareas de cómputo intensivo. encolado de tareas. políticas de scheduling. esquemas de prioridades. manejo y monitoreo de recursos.

¿Que es el proyecto Condor? Puede configurarse para usar sólo las máquinas inactivas. Migra procesos de máquinas re-activadas a máquinas inactivas. No requiere de un sistema de archivos compartidos. ClassAd provee un framework que combina los requerimientos con respuestas.

Cómputo de Alto Rendimiento ¿ Que es HTC ? Cómputo de Alto Rendimiento High-Throughput Computing. Problemas que requieran semanas o meses de cómputo para ser resueltos. Ambiente de cómputo que maneje grandes cantidades de cómputo.

Computo de Alto Rendimiento Uso eficiente de los recursos disponibles. Evolución: un mainframe  muchas pc´s. Condor:  pone a disposición recursos ociosos.  estos los accede cualquier usuario en ambiente distribuido.

¿Por que usar Condor? Aprovechar todos aquellos recursos que se encuentran sin uso. Procesar las tareas en máquinas ociosas. No es necesaria la modificación del código fuente. Redireccionamiento con las librerías de Condor.

¿Por que usar Condor? Checkpoints y System calls remotas. Manejo de checkpoints  reducción del tiempo de cómputo. Tolerancia a fallas. Migración de procesos.

¿Como ejecutar tareas en Condor? Preparación del código. Tareas en modo background y batch. El universo Condor. Distintos ambientes para la ejecución. Standard y Vanilla.

Ejecución de tareas en Condor Archivo de descripción del envío. información sobre la tarea. plataforma requerida, ejecutable a correr, etc. Enviar una tarea condor_submit. monitorear el progreso de la tarea. modificar las prioridades. informar checkpoints y migraciones.

Universos en Condor Especificado en el archivo de envío. Indica características en la ejecución.

Universos en Condor Universo Standard checkpoints y systems calls remotos. checkpoints: snapshots del estado actual del proceso. systems calls remotos: simulan ejecución en la máquina origen. Proceso condor_shadow.

Universos en Condor Universo Vanilla Ejecutar programas que no podrán ser re-direccionados. Scripts del sistema operativo. No posee checkpoints y systems calls remotos. Suspende o reinicia la tarea. Archivos de E/S mediante NFS.

Universos en Condor Universo PVM/MPI Universo Globus Para programas con PVM o MPI. Universo Globus Tareas Globus desde Condor. Traducida al lenguaje de especificación de recursos Globus (RSL). Enviada a Globus con GRAM.

Universos en Condor Universo Java Universo Scheduler Para programas java. Deben correr en cualquier JVM. Universo Scheduler Distintas condiciones de ejecución de tareas. Ejecución en máquina de envío. Sin apropiación.

Características Particulares Checkpoint y Migración Máquina no disponible, nuevo checkpoint. La tarea continúa luego de ser migrada, en el punto de checkpoint. Tolerancia a fallas. Llamadas de Sistemas Remotas Preserva el ambiente de ejecución local. Los archivos a ejecutar no necesitan permisos especiales.

Características Particulares Sin necesidad de cambios en el código fuente del usuario Capaz de ejecutar programas no interactivos Checkpoints y las migraciones son transparentes y automáticas Ordenamiento de Tareas Grafico acíclico dirigido. El orden de ejecución sigue las tareas dadas por el grafo.

Características Particulares Sensible al deseo del propietario de la máquina remota Propietario tiene prioridad absoluta. Máquina ociosa, puede ser usada por otros. Para volver a la actividad no es necesaria ninguna acción ClassAds Combinación de requerimientos y respuestas. Especificación de características de la máquina requerida. Especificación de usuarios que pueden acceder a una máquina.

Prioridades y Apropiación Prioridad de Tareas Asignación de prioridades por tarea Controlar el orden de ejecución Rango -20 .. +20

Prioridades y Apropiación Prioridad de Usuarios Asignación de maquinas según la prioridad de usuario. Valor bajo  Prioridad alta Tamaño del conjunto de maquinas inversamente proporcional al nivel de usuario. Procura un reparto equitativo de las maquinas disponibles

Mecanismo de Checkpoints Snapshot del estado actual del programa Reconsideraciones de las decisiones de scheduling Checkpoints periódicos  Tolerante a fallas Implementado mediante manejador de señales

Mecanismo de Checkpoints Que se guarda? Contenido de la pila del proceso Segmento de datos Código de todas las librerías compartidas Datos mapeados en el espacio de memoria del proceso Estado de todos los archivos abiertos Señales pendientes

Mecanismo de Checkpoints Apropiación de proceso  Recuperación a partir del ultimo checkpoint. Checkpoints Periódicos Cada pool configura su PERIODIC_CHECKPOINT Se suspende la tarea  se realiza el checkpoint  se reaunuda la tarea

Mecanismo de Checkpoints Checkpoints por demanda Se realiza de forma manual, no posee periodicidad Mediante el comando condor_ckpt En ambos casos: Las tareas continúan desde el ultimo checkpoint registrado Falla durante el checkpoint  Reanuda desde el checkpoint anterior Algoritmo al estilo commit,

Mecanismo de Checkpoints Por defecto se almacenan en maquina de origen Se puede configurar un servidor para almacenar todos los checkpoints (repositorio)

Seguridad en Checkpoints Limitación de programas  Tornan inseguro el uso de checkpoints Se almacena una imagen de checkpoint. Se lee desde el archivo. Se escribe en el archivo. Falla la ejecución, se vuelve al punto 2.

Calculo por Demanda (COD) Extensión de Condor Se utiliza para la ejecución de tarea que conllevan periodos cortos de cálculo Acceso inmediato a los recursos Requieren tiempo de respuesta interactivo Ejemplo Rendering de gráficos Hojas de calculo

Funcionamiento de COD Recursos que ejecutan tareas Encolamiento de una tarea COD  Se suspende la tarea de mas baja prioridad Ejecución inmediata de la tarea Finalización de una COD  Reanudacion de la tarea suspendida

Creación y manejo de COD El encargado de definir qué usuarios podrán manejar COD’s es el administrador Un usuario autorizado puede suspende o reiniciar una tarea COD Un usuario autorizado puede crear y usar tareas COD

Como definir aplicaciones COD Para ejecutar un COD, se deben definir las características de la tarea Ejecutable o el script a usar * Directorio en donde ejecutar la aplicación Archivos para la entrada y salida estándar * Las características se especifican en una ClassAd Por ahora nos hay mecanismo que permita la transferencia de información a una tarea COD La E/S debe ser ejecutada localmente o en NFS

Introducción al computo Grid IDEA: Poder ejecutar tareas que pertenece a un pool en otro distinto. Se denomina flocking (migración) Maquinas no disponibles  Migracion hacia otro pool Soporte de Globus (http://www.globus.org/)

Computo Grid ¿Qué es Globus? Su investigación se centra en la construcción de la infraestructura necesaria para soportar computo de alta performance sobre redes WAN En nuestro caso se limita a proveer de la autenticación, autorización y captura de tareas remotas (inclusive de la transferencia de datos).

Computo Grid Flocking Ejecución de tareas sobre maquinas no pertenecientes al pool en donde fueron enviadas Un pool hará flocking solo si no es capaz de ejecutar la tarea localmente Problemas con el Universo de la tarea

Computo Grid ¿Que es Condor-G? Se vera cuando desglosemos como esta compuesto el software de Condor Dos partes principales: Modulo de manejo de tareas Modulo de manejo de recursos

Limitaciones 1. No se permiten el uso de procesos multi-tarea (fork(),exec(), y system()). 2.No hay comunicación entre procesos (pipes , semáforos y memoria compartida). 3.Comunicación de red debe ser breve, puede causar retraso en los checkpoints y las migraciones. 4.No se permite enviar o recibir las señales SIGUSR2 o SIGTSTP. Se reserva para uso interno. 5.No están permitidas las llamadas a sistemas como alarm(), getitimer(), y sleep().

Limitaciones 6.No se permiten múltiple threads a nivel de kernel. Si esta permitido el uso de múltiples threads a nivel de usuario. 7.No se permite el mapeo de archivos a memoria. Esto incluye llamadas a sistema como mmap() y munmap(). 8.Se permite el bloqueo de archivos, pero no en medio de checkpoints 9.Todos los archivos deben ser abiertos como solo-lectura o solo-escritura. 10.Se debe reservar gran espacio en disco en la maquina de envió para el almacenado de las imágenes de los checkpoints de las tareas.