Portal Grid Para La Docencia Universitaria

  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Portal Grid Para La Docencia Universitaria as PDF for free.

More details

  • Words: 3,483
  • Pages: 5
1

“Diseño y desarrollo de un Portal Grid para la docencia universitaria” M.C. Lissethe Lamadrid López Universidad Autónoma de Baja California

Resumen— El presente trabajo describe el diseño y desarrollo de un portal web aplicando la tecnología de computación grid; para los laboratorios de las licenciaturas en sistemas computacionales e ingeniero en computación de la facultad de ingeniería en la Universidad Autónoma de Baja California (UABC), explica brevemente la tecnología grid y la idea primordial del proyecto enfatizando cada fase y la configuración del portal, que se basara en utilizar el protocolo http, diseño de paginas web para el acceso a la red grid con sus respectivas medidas de seguridad de autenticación y la aplicación de Globus Toolkit para la administración de los recursos disponibles, concluyendo con los pros y contras encontrados hasta el momento en la utilización de esta tecnología.

muchos mini-grids para el desarrollo de investigación, como se puede observar algunos en la siguiente Figura 1 y las aplicaciones en la Figura 2 [2].

Palabras clave— Computación Grid, Sistemas distribuidos, Middleware, Clúster.

I. INTRODUCCIÓN

L

a necesidad de aprovechar los recursos disponibles conectados a Internet en forma geográficamente distribuida y la simplificación de su utilización, ha dado lugar a una nueva disciplina en tecnología de sistemas distribuidos, conocida como COMPUTACION GRID (Grid Computing). El concepto de Grid ha surgido en los últimos años para denominar un conjunto de recursos computacionales heterogéneos distribuidos y pertenecientes a distintas organizaciones [1] [9]. Es un concepto análogo a las redes de suministro eléctrico: el cual ofrece un único punto de acceso a un conjunto de recursos distribuidos geográficamente en diferentes dominios de administración (supercomputadoras, clusters, almacenamiento, fuentes de información, instrumentos, personal, bases de datos, programas, hardware, etc.). Así los sistemas distribuidos se pueden emplear como un único sistema virtual en aplicaciones intensivas de datos o con gran demanda computacional [6]. La Grid permite que instituciones de menos recursos tengan acceso a poder computacional de forma remota, o que diversas instituciones puedan unir sus recursos computacionales para obtener uno más poderoso [9]. Esta potente tecnología parece una ficción, pero la marcha a una Grid Mundial cada día se hace más real. Pues existen

L. Lamadrid imparte docencia en el Programa de Licenciados en Sistemas dentro de la Facultad de Ingeniería Mexicali, Universidad Autónoma de Baja California, Mexicali B.C. México (correo e.: [email protected]).

Figura 1. Origen y desarrollo de la Grid Computing

Figura 2. Campos de Aplicación

Con esta tecnología se obtiene un punto de inflexión en los proyectos de súper computación sobre todo en el ámbito estudiantil, profesional y científico, en donde los recursos experimentales y humanos tienen un costo elevado y además requieren un nivel de optimización de gran escala [2]. La intención es que con la tecnología Grid se afronten proyectos de investigación y retos tecnológicos aprovechando los centros de cómputo disponibles para que al compartir recursos, los resultados sean en menor tiempo y con una reducción de costos notables, además de obtener la colaboración de profesionistas en forma multidisciplinaria y a nivel usuario se tiene una visión global de la red Grid como se muestra en la Figura 3 [2].

2

1. La gestión de recursos (Protocolo de Gestión de Recursos en Rejilla o Grid Resource Management Protocol) 2. Servicios de Información (Servicio de Descubrimiento y Monitorización o Monitoring and Discovery Service)

Figura 3. Visualización de la Grid a nivel de usuario

La tecnología Grid plantea el aprovechar de modo optimo los recursos proporcionados por equipos de computación distribuidos mediante el uso de (software) adecuado para planificar su utilización teniendo en cuenta las prioridades y diferentes periodos de demanda de los usuarios. Consta de una arquitectura abierta basada en un estándar que facilita la extensibilidad, la interoperabilidad, la portabilidad, y la comparación de código. Se dice que es una arquitectura de protocolos ya que se definen los mecanismos básicos que permiten a los usuarios y a los recursos negociar, establecer, gestionar y explotar la compartición de recursos. La arquitectura formada por Grid permite utilizar los recursos de procesamiento propios de la empresa, sin tener que invertir más en adquirir capacidad extra de procesamiento. La Arquitectura de la Grid presenta 5 niveles y podemos describir la arquitectura Grid en términos de capas donde cada una proveerá funciones específicas. Las capas más altas de esta estructura se enfocan y acercan más a la relación directa con el usuario, mientras que las de nivel más bajo se aproximan al hardware, es decir a las computadoras y redes, como apreciamos en la Figura 4.

Figura 4. Niveles de la Arquitectura del Grid Computing.

Por otra parte tenemos que considerar la importancia de Globus Toolkit que es el middleware de la Grid, es decir una interface que se ubica entre los recursos finales y la aplicación del usuario. Esta herramienta ha surgido como el estándar de facto para aplicaciones Grid. Los recursos que maneja son:

3. Gestión y Movimiento de Datos (Acceso Global al Almacenamiento Secundario, Global Access to secondary Storage y FTP en grilla, GridFTP) Este esfuerzo a nivel de software ha dado como resultado el Globus Toolkit, el Toolkit además incluye software relacionado con seguridad, información y manejo de recursos e intercambio de datos [2]. Esta herramienta es una mezcla de C con Java, Globus afirma que sigue el estándar OGSI (Open Grid Services Infrastructure), además es libre y esta soportado por los sistemas operativos Linux, Solaris, IRIX, etc. [2]. Utilizando la versión 3.0 (GT3), se tiene la siguiente Tabla 1 donde se describen las capas que conforman su estructura [3]. Gestión de Grandes cantidades de datos, y servicios que nos son del GT3. Servicios de Gestión Gestión de trabajos, servicios de directorio y Servicios básicos monitorización, y los de transferencia de ficheros. GSI, Grid Security Servicios de Seguridad Infraestructure Factorías de recursos, servicio de notificaciones, Núcleo: servicio de persistencia y servicio de ciclo de vida. Tabla 1. Descripción de capas de la estructura de GT3

La evolución de las redes de comunicación de alta velocidad dedicadas a la investigación han creado un escenario idóneo para el despliegue de esta tecnología, y aunque en México no está desarrollada a plenitud, ya se tienen proyectos en la Universidad Autónoma de México (UNAM), CINVESTAV, CICESE, la Universidad de Guadalajara (UDG) por mencionar algunas en nuestro país, quienes ya tienen avances prácticos en redes grid aplicándola en áreas como las matemáticas [8]. La coordinación de recursos geográficamente distribuidos no están sujetos a un control centralizado, utilizan protocolos e interfaces basados en estándares abiertos y de propósito general y permiten interconectar recursos en diferentes dominios de administración respetando políticas internas de seguridad, y con ello optimizando tiempo y costos de inversión tecnológica. La tecnología Grid se enfoca en que se puedan compartir los recursos de forma coordinada y aportar una solución al problema en organizaciones virtuales multi institucionales. El sharing (compartir) que maneja no es el mero intercambio de archivos de forma exclusiva sino que también importa el acceso directo a procesadores, programas, datos y otros recursos como sean requeridos en la solución a

3

problemas y estrategias que emergen de la industria, la ciencia, la educación y la ingeniería. Debe efectuarse a través de altos controles a proveedores de recursos y consumidores definiendo de forma clara y cuidadosa qué recursos compartieron, quién está habilitado a compartir y las condiciones bajo las cuales se efectuará. El conjunto de individuos y/o instituciones definidas por las reglas de sharing forman lo que llamamos organizaciones virtuales que desde ahora las llamaremos como OV como se observa en la siguiente Figura 5 [5] [9].

Figura 5. Organizaciones Virtuales Las OV se componen de aquellas instituciones, individuos y organizaciones que comparten un objetivo común. Para lograr este objetivo recurren a compartir sus recursos lo cual significa el acceso directo a computadoras, programas, archivos, datos, sensores y redes. A esto denominamos sharing y el mismo debe estar controlado, ser seguro, flexible y a menudo limitado en un cierto tiempo. En el caso de Grid, cada nodo tiene su propio manejador de recursos y su objeto no es proveer un sistema de vista singular. El sharing de los recursos es condicional: cada dueño de los recursos hace disponible el mismo sujeto a condiciones de cuándo, dónde, y qué es lo que puede realizarse. Los consumidores de recursos pueden colocar condiciones en propiedades de los recursos para los cuales ellos están preparados para trabajar. Un mismo recurso puede usarse de diversas formas dependiendo de las restricciones situadas en el lugar desde donde se comparten y sus objetivos. Por ejemplo una computadora puede usarse solamente para correr piezas de software específicas en un arreglo de sharing mientras que éste puede proveer ciclos genéricos de operación en otra. También debemos mencionar los servicios que se definen por el o los protocolo con el que habla y el comportamiento que implementa. La definición de servicio estándar (de acceso a computación, datos, descubrimiento de recursos, replicación de datos y más) nos permite mejorar los servicios ofrecidos a participantes de las OV y también abstraer de detalles específicos de los recursos que de otra forma deberían ser posteriores al desarrollo de aplicaciones para OV[9]. II. DESARROLLO DEL PROYECTO Proyecto. En la Facultad de Ingeniería de la UABC, nace la inquietud de aprovechar la infraestructura tecnológica de los laboratorios que dan soporte a la educación de las licenciaturas. Para ello se parte de un diseño básico para compartir recursos localmente entre dos de sus 7 laboratorios,

teniendo como objetivo aprovechar el hardware y software con el que se dispone, reduciendo así los costos de inversión y optimizando tiempos de aprendizaje de las asignaturas y agilizando los accesos demandados por los estudiantes en horas pico. Mediante el uso del software adecuado para planificar su utilización, teniendo en cuenta prioridades y diferentes periodos de demanda de los usuarios que en este caso son académicos y alumnos, se aplica la tecnología Grid. Estamos diseñando y desarrollando un portal Web, con objeto de proporcionar a la comunidad estudiantil de las herramientas necesarias para el acceso a los recursos computacionales de forma eficiente, transparente y segura. Se coordinando los recursos que no están sujetos a un control centralizado, tomando en cuenta planes de estudio de las dos licenciaturas y puntos en común de las asignaturas, utilizamos protocolos e interfaces basados en estándares abiertos y de propósito general, como lo sugiere este paradigma, respetando las políticas internas en este caso de cada laboratorio que fungirá como una organización virtual. Para el diseño y desarrollo del proyecto, se tiene el portal de acceso a la información, mediante la realización de una base de datos con la configuración de directivas y variables de entorno del protocolo SSL; en el portal se considera privacidad y seguridad de la información mediante la autenticación de sus usuarios, la criptografía, utilizando los protocolos de Secure Sockets Layer (SSL), y Transport Layer Security (TLS). Actualmente tenemos instalado el Sistema Operativo Linux 3 y servidores Apache, se tendrán una serie de módulos diseñados para mejorar la funcionalidad del sistema Grid, utilizando parámetros de configuración para los diferentes tipos de nodos que se instalaran basándose en servicios Globus y la distribución de archivos de diseño y programación de las paginas Web del portal y los módulos desarrollados para la integración con los servicios Globus. El portal se desarrolla en cuatro fases: A. El diseño y configuración del portal asociada al acceso autorizado, B. La programación relativa a los servicios proporcionados por el portal, C. La parte que se encarga de la integración de los servicios Globus y los recursos a compartir. D. Nos enfocaremos a la sesión de logout de todo el servicio Grid. A. Diseño y Configuración del portal Se analiza la configuración para el portal basándose en el acceso al portal que girara básicamente en la utilización del protocolo http, el cual utiliza un canal cifrado en Secure Sockets Layer (SSL). La dirección Web correspondiente al portal es http://gridfacin.delfin.uabc.mx y considerando

4

prioridades de acceso a la red grid por cada organización virtual. El portal proporcionara autenticación y privacidad de toda la información mediante el uso de criptografía, utilizando los protocolos Secure Socket Layer (SSL). La autenticación será tanto para el servidor como para los clientes, es decir tanto para maestros como para alumnos, utilizando claves públicas, las cuales serán para alumnos su matrícula y un anexo y para docentes su número empleado y un anexo el cual será definido por cada usuario. Los protocolos permiten a las aplicaciones cliente-servidor comunicarse de una forma segura. El protocolo SSL proporciona una serie de fases básicas que tomaremos en cuenta: (i) negociar entre las partes el algoritmo que se usara en la comunicación, (ii) intercambio de claves publicas y autenticación basada en certificados digitales y (iii) encriptación del tráfico basado en cifrado simétrico. Durante esta fase el cliente y el servidor negociaran que algoritmos criptográficos van a utilizar. Se utiliza HTTPS para asegurar paginas World Wide Web para aplicaciones como correo electrónico, utilizando certificados de clave publica para así verificar la identidad de los agentes externos. Aunque un gran numero de productos clientes y servidores pueden proporcionar SSL de forma nativa, muchos aun no lo permiten. Se deberá tener en cuenta para estos casos un puerto diferente para encriptar las comunicaciones. Se intentara utilizar SSL para crear la red privada virtual (VPN) y poder así facilitar la seguridad de los recursos [4]. El acceso a la información de las páginas Web y de los módulos que se programan, se realiza en base a la configuración de directivas del servidor Web, dentro del conjunto de directivas que se definen en los archivos de configuración del servidor se tienen las siguientes: Las directivas de configuración global * Directorio de nivel superior, donde están ubicados los archivos de configuración (ServerRoot “/etc/httpd”) * Tiempo límite de respuesta del servidor para una petición que sería en segundos (Timeout 300) * Incluir los archivos de configuración correspondientes a los módulos SSL y Perl (Include conf.d/*.conf) * Directorio de correo electrónico del administrador del servidor Web (ServerAdmin manager@ delfin.uabc.mx) *Nombre del Servidor (ServerName gridfacin.delfin.uabc.mx) *Identificación de peticiones utilizando valores especificado en ServerName (UseCanonicalName On) *Directorio de nivel superior, donde se ubican las páginas Web (DocumentRoot “/home/web/https”) *Directorio correspondiente a las aplicaciones que puede ejecutar el servidor Web (ScriptAlias /globus/ “/home/web/globus/”) *Archivo con la información de control de acceso al directorio donde está ubicado (AccessFileName .htaccess)

*Deshabilitar el acceso a las aéreas de usuario (UserDir disable) Y así debemos seguir con las directivas de configuración SSL, como: Cargar el modulo Dynamic Share Object (DSO) que le corresponde ( LoadModule ssl_module modules/mod_ssl.so) Definir el Host Virtual para el protocolo https () Activar el modulo SSL (SSLEngine on) Definir el puerto de comunicaciones para la aceptación de peticiones ( Listen 443) Archivo/fichero que contiene el certificado, codificado en formato PEM del servidor (SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt) Archivo que contiene la clave privada del servidor (codificada en format PEM) (SSLCertificateKeyFile /etc/httpd/conf/ssl.pem/server.pem) La autenticación del cliente no es requerida por default (SSLVerifyClient none) Proporcionar el conjunto de variables de entorno SSL para ScriptAlias SSLOptions +StdEnvVars Directorio donde se requiere un certificado valido para la autentificación del cliente La directive SSLVerifyClient establece el nivel de acreditación del usuario (SSLVerifyClient optional) y se configura con optional, para que el usuario pueda presentar el certificado valido cuando le sea requerido y si el usuario no tiene instalado en su navegador un certificado valido, no podrá tener acceso a este directorio SSLVerifyDepth 1 SSLCACertificateFile /etc/httpd/conf/ssl.crt/ca.crt También tenemos el proceso para la generación del certificado para el servidor Web, las directivas de configuración de Perl, la configuración de directorios; además se especifican las variables de entorno SSL y configuran los directorios para que en este se genere la distribución de los archivos correspondiente al diseño y programación de la página Web del portal y los módulos que se desarrollen para integrar todo con los servicios de Globus ToolKit. Para el diseño de las páginas Web se utilizan las hojas en cascada, por ser mas comúnmente utilizado para la presentación de documentos HTML o XML. Para el acceso de autorización se desarrollan las páginas Web correspondientes al acceso a los recursos Grid, teniendo como objetivo en esta fase proporcionar al usuario toda la información necesaria para el acceso a los servicios Globus que el portal proporciona, como serian las instrucciones de acceso. Hasta este momento estamos inmersos en la fase I el diseño de las páginas web, se generan páginas de interfaces de uso, altas de organizaciones

5

virtuales para ir anexando a los laboratorios restantes, solicitudes de certificados, solicitudes de cuenta de usuario. B. la programación es relativa a los servicios proporcionados por el portal, se desarrollaran paginas para mostrar los servicios y los recursos disponibles, entre los cuales tenemos el compartir software común para administrar bases de datos de los estudiantes, e impartir materias en común como las asignaturas de bases de datos I y II, simulación, redes I y II, y las asignaturas de programación. C. la parte que se encarga de la integración de los servicios Globus y los recursos a compartir y tendremos el desarrollo de páginas Web para enviar y recibir trabajos y mostrar lo relacionado con ellos, como estado e información de los trabajos y su monitoreo en general y por ultimo en la fase IV D. nos enfocaremos a la sesión de logout de todo el servicio Grid. Como podemos apreciar este proyecto llevara algún tiempo de desarrollo de páginas por una parte y por otra la implementación y utilización de la herramienta Globus. En este proyecto participan catedráticos y estudiantes de la etapa disciplinaria de las carreras de Licenciados en Sistemas Computacionales e Ingeniería en Computación. III. CONCLUSIONES Hasta el momento tenemos el diseño y la práctica de desarrollo de páginas web de la fase I orientadas hacia las organizaciones virtuales en donde nos percatamos de que programar pensando en tecnología Grid no es igual que si pensamos en portales para internet ya que el servicio que se pretende va mas allá del simple uso del protocolo http. En aplicaciones previas de la tecnología grid el desarrollo se parece mucho al internet avanzado, sin embargo, no debe confundirse con la propuesta que las redes grid atraen a la globalización tecnológica en sistemas distribuidos. El diseño de portales grid implica la utilización avanzada de la ingeniería de software y de herramientas case que ya preveen este futuro inmediato. La herramienta Globus Toolkit es una implementación de código abierto y es posible descargarlo de la página www.globus.org/toolkit en donde se encontrara la versión actualizada. Las soluciones ofrecidas por compañías dedicadas a los grid utilizan los mismos estándares para aprovechar las ventajas del creciente mercado y resolver problemas de infraestructura o de aplicación específica, nos falta mucho por descubrir y poner en práctica, pero sabemos que la docencia universitaria y la propuesta del portal grid va más allá del salón de clases. IV. Referencias [1] Ponencia “Servicios de asignación y planificación de recursos grid “A. Fernández, E. Heymann, J Salt y M.A. Senar. [2] Clustering y Grid computing, Sánchez Enríquez, Heider Ysaias; 30/Sept 2007, Escuela de Informática/ Universidad Nacional de Trujillo. [3] I. Foster, C. Kesselman, “Globus: A Metacomputing Infrastructure Toolkit”, International Journal of Supercomputer Applications, vol 11 no.2, 1997

[4]Ahmar Abbas, “Grid Computing: A practical Guide to technology and Applications”, Charles River Media Inc, 2004 [5]Guía Rápida de Internet, David Zurdo Saiz, Alejandro Sicilia Burgoa, Fernando Acevedo Quero, Paraninfo. Madrid. 1997. [6]Vidal Díaz Prado, LA ESTRUCTURA DE LA GRID COMPUTING, Universidad Autómata de Nuevo LeónMéxico, 2005. [7]Verónica V. Barrios, GRID COMPUTING, Universidad Nacional de Nordeste – Argentina, 2005. [8] CONSTRGRID INTERENMXICO, UNAM, 2004, Presentación en Power Point [9] Santinelli Mariano, Andre Gustavo, apuntes de Teleinformática y Redes, Universidad Nacional de Luján. Lissethe Lamadrid Realizo estudios en el Centro de Enseñanza Técnica y Superior, CetysUniversidad en Mexicali, Baja California, México la Licenciatura en Sistemas Computacionales en 1988 y obtiene el grado de Maestría en Ciencias de Tecnología de Redes e Informática en el 2004. En 1987 y 1988 ejerció prácticas profesionales como programadora de sistemas en el departamento de informática del Colegio de Bachilleres de Baja California en Mexicali, Baja California México; se integra a la docencia en la Universidad Autónoma de Baja california en México directamente en la Facultad de Ingeniería en el área de sistemas y en Facultad de Ciencias Administrativas en Tijuana; trabaja como docente y coordinadora de la Licenciatura en sistemas computacionales en la misma universidad de 1995 a 1998. En el 2000 Crea el Departamento de Informática del Sindicato de Profesores Superación Universitaria de la Universidad Autónoma de Baja California, (UABC) en México y diseña los proyectos de los sistemas de información a nivel estado del mismo departamento fungiendo como Directora de informática y Secretaria de Finanzas. Su área de especialidad son las bases de datos y sistemas distribuidos, coordinadora del área de redes dentro de la Licenciatura en Sistemas Computacionales en el 2007 y catedrática de tiempo completo actualmente.

Related Documents