Bueno, me queda unos 400 metros duros de verdad durante estos tres meses para presentar el proyecto, porque además nuevos proyectos pueden aparecer… Os contaré en tal caso.
Mi informe:
Objetivos
- Realizar un estudio de diferentes modelos económicos aplicados a sistemas distribuidos
- Crear un modelo en un entorno real
Trabajo realizado
Estudio de modelos económicos
Este hecho ha llevado que tan sólo que se haya realizado modelos económicos muy acotados y específicos y todos ellos enfocados en la negociación de los recursos, pero no en el estudio de la usabilidad y servicios que debe contemplar un mercado computacional.
Escenario
- Un modelo de mercado que beneficia al mismo Grid: premia a aquellos que introducen recursos más potentes y con mejor rendimiento
- Los partipantes están todos debidamente autenticados y pueden realizar transacciones económicas seguras
Definición del modelo de mercado
El mercado debe beneficiar la competencia así como premiar aquellos productores de recursos que ofrecen recursos de mayores prestaciones y con mejor rendimiento. Para ello, los precios se basarán en dos conceptos: la demanda y las prestaciones de los recursos.
La demanda, cuanto más usuarios adquieran un recurso, más valor adquirirá.
Las prestaciones, se basarán en estáticas o aquellas prestaciones teóricas del recurso y dinámicas o aquellas prestaciones reales que logra el recurso en su funcionamiento. Para las prestaciones, se tienen en cuenta los siguientes componentes de los recursos:
- net_in: capacidad máxima de entrada de red
- net_out: capacidad máxima de salida de red
- machine_type: arquitectura del recurso
- cpu_speed: frecuencia de reloj máxima
- cpu_int: número de procesadores
- mem_total: memoria máxima de intercambio temporal
- disk_total: memoria máxima de almacenamiento
Diseño
Partiendo que el mercado se implementa en un escenario bien definido que es el de una red de ordenadores de un parque tecnológico, el comportamiento de los usuarios no aporta problemas de escabilidad del sistema. En cualquier caso, si los usuarios aumentan considerablmente, este escenario permite redimensionar con tiempo los servicios centrales.
El diseño se basará en un servidor centralizado multi-cliente donde se conectarán n usuarios con un cliente gráfico para realizar todas las gestiones del mercado. El servidor consultará un servicio de información de recursos distribuido para calcular los precios.
Implementación servidor
- Implementado en JAVA
- Servidor multi-cliente
- Dos puertos de escucha con el cliente, uno no seguro y un segundo seguro usando autenticación por certificados, encriptación mediante RSA y autorización
- Comunicación mediante mensajes XML con el cliente
- Rutina independiente y automática que accede al servidor de información de recursos del Grid, procesa la información de los recursos, calcula el precio de cada recurso en función de las fórmulas propuestas y guarda la información en forma de histórico en la Base de Datos
- Base de Datos mysql con tabla de históricos del rendimiento de recursos y tabla de autorización clientes
Implementación cliente
- Implementado en JAVA con interficie gráfica SWING
- Gestión básica del certificado personal para concexión con el mercado
- Comunicación con el mercado mediante canales no seguro y seguro ssl y mensajes XML
- Formulario funcional de consulta básica de recursos disponibles a partir de parámetros del usuario. Presentación del resultado del servidor en tabla
- Servidor de información
- Estudio, instalación, configuración y desplegamiento del servicio de información de clustering Ganglia (gmon) sobre un Grid de 20 computadoras
- Estudio, instalación, configuración del índice de información de los recursos Ganglia (gmetad)
CA
- Se ha creado una pequeña Autoridad Certificadora para la creación de certificados del servidor y del cliente
Memoria
- Introducción, motivación y estado del arte
Trabajo a realizar
Servidor
- En la base de datos tablas de cartera y registro de operaciones de los usuarios así como de triggers para gestionar operaciones de mantenimiento automáticos
- Activación/Desactivación de los recursos de un compra por un cliente para que pueda ejecuatar trabajos mediante el middleware Globus.
Cliente
- Formulario de compra de recursos
- Formulario de visualización de la cartera
- Activar/desactivar un recurso de su propiedad en el Grid
Pruebas
- Analizar el comportamiento de diferentes parámetros en la generación de los precios
- Probar diferentes escenarios de recursos
Memoria
- Diseño, tecnología, anexo