Instalación y puesta en marcha de HYDRA desde repo
En esta receta se explican los pasos a seguir para poner en marcha un sistema HYDRA desde cero, utilizando la versión SID (Still in Development) del repositorio.
Descripción del Sistema
HYDRA es un sistema distribuido, en el que podemos encontrar 3 roles distintos:
- Manager
- Delegado
- Nodo
Cada uno de ellos requiere una configuración concreta. La estructura de red es la siguiente:
--------- |Manager| --------- | | /-------------\ _____________( )____________ | \_____________/ | | | | | +--------+ +--------+ |Delegado| |Delegado| +--------+ +--------+ | | ___________|__________ ___________|__________ | | | | | | | | | | | | +------+ +------+ +------+ +------+ +------+ +------+ | Nodo | | Nodo | | Nodo | | Nodo | | Nodo | | Nodo | +------+ +------+ +------+ +------+ +------+ +------+
Descarga y Compilación
En primer lugar, es necesario descargarse el código del repo público en el ordenador que vaya a actuar de Manager. Durante la receta, supondremos que el directorio de instalación será ~/hydra, así que para descargarlo hay que ejecutar:
Una vez descargado el código, es necesario definir una variable de entorno HYDRADIR que contenga el path al directorio de instalación. Después, se ejecuta el comando make en dicho directorio.
Manager
En el Manager es necesario tener instalado también el paquete zeroc-ice33, y se editarán los ficheros manager.cfg y registry.cfg (que se encuentran en el directorio $HYDRADIR/manager/config/) según convenga.
Utilizando la herramienta icegrid-gui se puede configurar el grid, cargando el fichero hydra.xml y modificando los parámetros necesarios de los servidores.
Delegado
El Delegado también necesitará el software Ice. Además, debe configurarse para ejercer de servidor PXE y DHCP. Esto está explicado en Instalar Debian desde PXE y Arranque desde red sin disco duro. En nuestro caso hemos utilizado dnsmasq.
También es necesario seguir la receta Bridges y filtrado de protocolos
Es necesario llevar control sobre qué nodos deben arrancar por PXE y cuáles no. Para ello, dnsmasq nos brinda la oportunidad de utilizar un fichero, mediante la opción dhcp-hostsfile. En este fichero añadiremos los nodos que no deben arrancar por PXE, es decir, debe denegárseles el arranque. Esto se hace añadiendo líneas como esta:
La Imagen PXE
La imagen que se sirve por PXE debe contener todas las herramientas necesarias para el sistema HYDRA:
- ZeroC ICE
- libparted
- sudo
Además, debe configurarse para que el nombre de host varíe según el ordenador, y no sean todos iguales. En el repo de hydra hay un fichero hostname.sh para tal fin. También es necesario que exista un usuario hydrauser con permisos de administración.