x
1

Sun Grid Engine



Sun Grid Engine (SGE), también conocido en la actualidad como Oracle Grid Engine, es un software de código abierto desarrollado por Sun Microsystems, cuya función principal es la gestión de un sistema manejador de recursos computacionales o procesos distribuidos en ambientes heterogéneos, de modo que se utilicen los dichos recursos de la manera más eficiente posible. A su vez Sun Microsystems proporciona al mercado un sistema no gratuito que se basa en el funcionamiento del SGE, denominado N1 Grid Engine (N1GE).

Grid Engine por poseer la característica de ser de código abierto y gratuito está destinado para ser utilizado en la página web del proyecto bajo la licencia del estándar de la industria Sun (Sun Industry Standards Source License). Oracle proporciona una versión comercial, destinada a otros usos, disponible para su adquisición en su página web. A pesar de esta situación, parece ser que a partir de la versión 6.2u6 todas las versiones posteriores que se vayan distribuyendo serán para uso comercial, siendo gratuitas únicamente durante un periodo de prueba de 90 días a partir de adquisición.

SGE se usa normalmente en aquellos lugares que disponen de un gran número de ordenadores o de clústeres de Computación de alto rendimiento (HPC). En estas estructuras, el SGE se encarga principalmente de funciones como la aceptación, programación, envío y gestión de la ejecución remota y distribuida de un gran número de tareas en el espacio de usuario, ya sean estas secuenciales, paralelas o interactivas. Además de las funcionalidades ya mencionadas de SGE, existe la posibilidad de gestionar y programar la reserva de recursos distribuidos en toda la estructura, como procesadores, memoria, espacio de disco y licencias de software.

Es un sistema altamente configurable, sencillo de administrar y de utilizar por parte de los usuarios. Su escalabilidad lo ha llevado a ser el sistema de mayor éxito entre los mayores clúster de supercomputación.

Al igual que Condor y PBS, SGE trabaja con shellscripts que definen los requisitos de los trabajos de los usuarios, pero además puede tratar directamente con binarios e incluso ejecutar trabajos interactivos.

Se trata, sin lugar a dudas, del producto más completo disponible en el mercado, tanto por rendimiento como por facilidad de uso y capacidad de configuración. A todo esto hay que sumar el hecho de que se trata de un proyecto de código abierto con una comunidad de desarrolladores y administradores enorme y, algo de lo que pecan otros proyectos, el respaldo de una empresa del prestigio como Sun Microsystems y, en la actualidad Oracle.

SGE es la base del sistema Sun Grid Utility Computing, es decir, la base del control de la utilización de los recursos computacionales y procesos distribuidos, siendo puesto a disposición de los usuarios para su adquisición a través de internet en Estados Unidos en el año 2006, para pasar a ser asequible después en el resto de países del mundo.


SGE es un sistema multiplataforma, destacando las siguientes:

Otras plataformas menos comunes:

Incluyendo diferentes variantes de Linux

Un clúster con el sistema Grid Engine típico consiste en un host principal o maestro y uno o más host en ejecución. Además se pueden configurar varios host maestros secundarios, similar a una estructura RAID, que asumen el papel del host principal en caso de que éste se bloquee o deje de funcionar de forma correcta.

En el caso del SGE, cada host recibe un nombre que lo diferencia de los demás, siendo estos nombres Grid1, Grid2,…, hasta nombrar todos y cada uno de ellos. El único host que recibe un nombre diferente a los demás es el host principal, al que se le suele denominar Grid (sin poseer un número que lo determine). Los SGE funcionan mejor cuando todos los usuarios que usan máquinas del sistema utilizan una cola de trabajos, puesto que aplican todas las características y potencia de este sistema.

Antes de comenzar a detallar más aspectos del funcionamiento es necesario explicar algunos conceptos, como job y cola.

Los usuarios envían trabajos (jobs): El usuario especifica el perfil de requisitos (CPU disponible, disco, arquitectura...).

SGE registra el trabajo, su perfil de requisitos e información de control (usuario, grupo, proyecto, departamento, fecha/hora de envío...).

Tan pronto como una cola, quede disponible, SGE lanza a ejecución uno de los trabajos en espera:

A partir de estos datos ya podemos explicar el último punto del funcionamiento del SGE, conocido como ciclo de vida del trabajo o job, donde se observa el camino que sigue cada trabajo desde que un usuario lo envía hasta que recibe el resultado. El ciclo de vida de un trabajo es el siguiente:

SGE tiene tres políticas de planificación a la hora de establecer un orden y distribuir los trabajos. Estas políticas se pueden combinar para implementar nuevas políticas de uso de un clúster:

El sistema SGE es un gestor de recursos distribuidos (DRM) que administra la distribución de las cargas de trabajo de los usuarios teniendo en cuenta la disponibilidad de dichos recursos.

Uno de las primeras ventajas, y de los más destacables, es la situación que tiene lugar en un centro de trabajo donde la utilización de los recursos suele estar en torno a un promedio del 10-25%, y que al emplear el SGE puede aumentar al 80-90%. Esta mejora procede de la inteligente distribución de la carga de trabajo y de la correcta utilización de los recursos, de tal modo que ningún host se encuentre sobrecargado en comparación con el resto, existiendo un equilibrio en las cargas de trabajo.

Cuando los usuarios envían su trabajo al SGE, el sistema controla el estado actual de todos los recursos del clúster y es capaz de asignar dichos trabajos a los recursos más adecuados. Además este sistema permite a los administradores adaptar sus entornos informáticos y sus recursos para conseguir el mayor rendimiento.

Además este sistema permite la posibilidad de supervisar los trabajos enviados y consultar los host en donde se están ejecutando, si han terminado, si ha tenido lugar algún tipo de error, entre otras consultas. También proporciona un historial de trabajo donde comprobar distintos datos, como fechas, usuarios, etc.

Por otro lado si se trabaja con Apache Hadoop, el SGE reduce el coste de ejecución de estas aplicaciones y permite compartir y utilizar los recursos para otras tareas, evitando el uso único de un grupo de host para esta tarea. Si se trabaja con Amazon EC2 el SGE proporciona recursos adicionales de forma automática, reduciendo la “picos” de demanda a los centros de datos que se producen.

Como resultado de estas ventajas, se producen varios beneficios:

Sun proporcionó contratos de soporte para la versión comercial del Grid Engine en la mayoría de plataformas UNIX y Windows. Los servicios profesionales, de consultoría y formación fueron proporcionados por Sun Partners. Sun Partners se asoció con la Universidad de Georgetown para impartir clases de administración de Grid Engine. El personal de estas instituciones proporcionó breves talleres de formación, con una duración de 1 o 2 días. Este tipo de talleres ha tenido lugar en la ciudad de Regensburg (Alemania) en los años 2002, 2003, 2007, 2009 y 2012.

Por otro lado, los usuarios de este sistema pueden obtener cualquier tipo de soporte y solución a través de las listas de correo que proporciona la comunidad de Grid Engine.

Los principales y más destacados usuarios de este sistema son:

En el año 2000, Sun adquirió Gridware, empresa especializada en sistemas de gestión de recursos de computación con oficinas en San José, California y Regensburg (Alemania), para ofrecer una versión gratuita para Solaris y Linux, a la que denominó Sun Grid Engine.

En el año 2001, Sun liberó el código y adoptó el modelo de desarrollo open source o código abierto, lo que provocó la aparición de adaptaciones para otros sistemas UNIX, Mac OS, etc.

En 2010, después de la compra de Sun MicroSystems por Oracle, renombró el SGE y lo denominó Oracle Grid Engine. Posteriormente el código fuente de la actualización de la versión 6.2 del Grid Engine no se incluyó con los archivos binarios y los cambios no se pusieron de nuevo en el repositorio del proyecto. Como respuesta a esta situación la comunidad del Grid Engine comenzó a desarrollar el proyecto Open Grid Scheduler, para continuar con el desarrollo y mantenimiento de una implementación libre y gratuita del Grid Engine.

El 18 de enero de 2011, la empresa privada Univa anunciaba que había reunido a varios ingenieros de gran importancia del equipo de Sun Grid Engine y que estaba desarrollando su propia versión del Grid Engine. Además, la empresa ha anunciado que su sistema, conocido como Univa Grid Engine incluirá soporte comercial, lo que supone que competiría con la versión oficial de Oracle Grid Engine.



Escribe un comentario o lo que quieras sobre Sun Grid Engine (directo, no tienes que registrarte)


Comentarios
(de más nuevos a más antiguos)


Aún no hay comentarios, ¡deja el primero!