El clúster de modelización científica tiene disponibles varios espacios en los que los usuarios pueden almacenar sus datos. Estos espacios tienen distintas capacidades y características de manera que, el usuario debe determinar en cual de los espacios se deben colocar sus ficheros para un uso óptimo del clúster. Estos espacios, denominados por su punto de montaje, se describen a continuación.
Comunes a todo los equipos instalados en el clúster | |
Comunes a subclústeres (cmq, cmd, cmi ) |
|
Locales de cada nodo del cluster |
/home
El volumen inicial de este sistema de archivos es de 4.0 TB y está localizado
físicamente en un sistema de almacenamiento compuesto de una cabina
HP EVA4400 y de dos servidores DL380 para
exportación NFS, optimizada mediante el software Polyserve
. La cabina contiene
exclusivamente discos de altas prestaciones (300GB SAS 15k Fibre Channel)
y está configurada en nivel RAID5 que tolera el fallo de un disco duro sin
pérdida de información.
El directorio /home
está destinado a contener los ficheros de los
usuarios y es visible por todos los nodos del clúster. Cada uno de los usuarios
tiene un directorio con su propio nombre en
este sistema de ficheros y debe utilizarse para almacenar datos, códigos,
checkpoints,logs, etc. Los trabajos que requieren el acceso a muchos
datos (o los generen) deben diseñarse para que la escritura/lectura de los
ficheros de datos o ficheros intermedios se haga preferentemente en el disco local
de los nodos de cálculo o en las particiones /msa
exportadas por los
nodos de control de cmq
y cmd
(véase más abajo).
El directorio /home
tiene definida cuota máxima
de ocupación de 425Gb por grupo de usuarios. Para chequear la cuota, debe
emplearse el correspondiente comando:
[user@jaula04 ~]$ quota -g Disk quotas for group gr1 (gid 9999): Filesystem blocks quota limit grace files quota limit grace 192.168.4.152:/polyhome 321922 445644800 524288000 0 0 0
En el ejemplo se destaca la información del sistema de archivos
/polyhome
en el que se localiza el /home
. La primera
cifra (321922) nos informa de la ocupacion real en kb de todo el grupo de
usuarios; la segunda cifra (445644800) nos informa del limite de ocupación
permitido que puede superarse temporalmente hasta alcanzar el limite estricto
definido por la tercera cifra. Se recomienda a aquellos grupos de usuarios que
demanden más espacio ponerse en contacto con el administrador.
El Clúster realiza una copia de seguridad con periodicidad semanal de los
contenidos del /home
haciendo una copia exacta con la
utilidad rsync de los ficheros existentes en el momento en el que se realiza
el backup.
/msa
La cabina MSA1500, que controla en configuración RAID5 un array de
discos SATA de 500GB a 7.5k, tiene un volumen total de unos 8.0 TB: Este
espacio se encuentra dividido en varias particiones en RAID 1 y RAID 5 que son
presentadas a los nodos de control cmq (jaula01)
y cmd
(jaula02)
. Estos nodos, a su vez, exportan por NFS estas particiones a
todos los nodos del clúster.
En este sistema de almacenamiento, se encuentran implementados dos distintos tipos de RAID:
cmq
cmd
Inicialmente, el sistema de almacenamiento se encontraba completamente configurado como RAID5 que, en principio, permite una mayor aprovechamiento del disco. Con la llegada de el nuevo hardware de almacenamiento (EVA 4400), se ha desplazado el espacio de almacenamiento de los usuarios a este nuevo espacio y ha permitido habilitar este sistema como almacenamiento alternativo.
Al realizar esta migración, parte de este espacio se ha utilizado pare realizar pruebas de rendimiento de las distintas posibilidades de RAID que el sistema ofrece. Para ello se ha utilizado Iozone sobre las diversas posiblidades de sistemas de ficheros.
En el gráfico se puede ver un resúmen de los resultados. En una escala arbitraria se representa la ganacia (suavizada) de velocidad promedio de la configuración en RAID 1+0 frente al RAID 5. Para el promedio se han utilizado 13 medidas de lectura, relectura, lecturas aleatorias, escritura, reescritura... sobre ficheros de hasta 50Gb y usando distintos tamaños de lectura.
Se puede ver en el gráfico que la configuración RAID 1 siempre posee una velocidad claramente mayor que el RAID 5. Los descensos (relativos) de rendimiento que se pueden observar en ciertos puntos corresponden con los "números mágicos" que son múltiplos de los tamaños de búfferes.
El espacio se encuentra en el directorio /msa
y se encuentra
dividido en tres particiones distintas. Cada grupo de usuarios tiene en cada
una de ellas un directorio donde puede almacenar sus ficheros. Los grupos de
usuarios pueden usar este espacio para diversos propósitos. Por ejemplo, para
almacenar grandes ficheros de datos cuyo backup no sea necesario o para
ejecutar múltiples trabajos de análisis de los datos almacenados en las
particiones de datos /msa
.
jaula02:/mnt/cmd1 1.6T 1.4T 178G 89% /msa/cmd1 jaula02:/mnt/cmd2 2.0T 768K 2.0T 1% /msa/cmd2 jaula01:/mnt/cmq1 1.9T 544K 1.9T 1% /msa/cmq1 jaula01:/mnt/cmq2 1.5T 528K 1.5T 1% /mnt/cmq2
No hay cuotas actualmente definidas ni tampoco se hacen copias de seguridad de los datos localizados en las particiones /msa.
/opt/apps
En cada nodo de control, cmi
, cmq
y
cmd
, se encuentra un directorio /opt
controlado por el
sistema operativo de cada nodo, y que es exportado vía NFS a través de la red de
administración hacia los correspondientes nodos de cálculo gestionados por los
distintos nodos. En este directorio se sitúan las aplicaciones de uso común.
Aunque los contenidos de los respectivos /opt
son muy semejantes,
existen diferencias debidas a las características de los distintos nodos de
cálculo y/o a las distintas versiones o aplicaciones instaladas para cada
subclúster. No obstante, a medio plazo es previsible la unificación de los tres
/opt
en un único sistema de archivos.
El directorio /opt
tiene la finalidad de almacenar el software
común a todos los usuarios. Adicionalmente, se ha habilitado un espacio
/opt/apps
en cada uno de los nodos de control para que cada grupo
pueda almacenar software o datos comunes a todos lo miembros del grupo. Este
directorio no es accesible a personas que pertenezcan a un grupo distinto.
El directorio tiene implementado un sistema de colas por grupo de unos 5Gb en cada uno de los distintos nodos de control.
/data
El segundo disco duro de cada nodo de cálculo del subclúster CMD soporta el
directorio /data
cuya finalidad es albergar aquellos ficheros de
datos que deban permanecer en el sistema con el propósito de ejecutar trabajos
de análisis de datos.
Aquellos usuarios que realicen análisis masivos de datos serán incluidos en
un grupo con acceso al directorio /data
de los distintos nodos. El
acceso a los datos distribuidos por el conjunto de servidores de cálculo se
facilita por el servicio automount
, configurado en todos los nodos
de cálculo, de modo que todos los discos constituyen un único sistema de
archivos /pool
. De esta manera, un nodo de cálculo,
yed26
por ejemplo, puede acceder a los datos situados en otro nodo
(yed40
) sin más que apuntar al correspondiente directorio
localizado en /pool
como se indica en el ejemplo:
[usuario@yed26 ~]$ ls -l /pool/yed40 lrwxrwxrwx 1 root root 15 Jun 6 21:48 /pool/yed40 -> /mnt_pool/yed40
Así, pues, es posible preparar scripts de trabajos para el sistema colas que empleen datos distribuidos entre los distintos nodos.
No hay cuotas actualmente definidas.
/scratch
Todos los nodos de cálculo disponen de un espacio de almacenamiento local
accesible en su totalidad al trabajo que se esté ejecutando en cada momento.
La siguiente tabla resume las características de los /scratch
de
cada tipo de nodo de cálculo:
/scratch | yei[01-32] cola32 | yeq[01-10]
cola8 |
yed[01-50] cola2/cola2_express |
Volumen accesible | 233Gb x 4 discos | 202Gb | 187Gb |
Tipo de disco | 2 x SAS 15k 143Gb RAID0 | 4 x SCSI 10K 73Gb RAID0 | SATA 7.5k 250Gb |
Este espacio está montado como directorio /scratch
, y su
propósito es acoger los ficheros temporales de los trabajos. La variable de
entorno $SCRATCH
apunta siempre al subdirectorio temporal creado
al efecto en cada trabajo. Los trabajos ejecutados en la cola32 (CMI) tienen
acceso a cuatro discos de scratch distintos (uno por cada nodo BL485c) que son
accesibles mediante las variables $SCRATCH1
, $SCRATCH2
,
$SCRATCH3
y $SCRATCH4
. Estos cuatro directorios son
visibles a los cuatro nodos mediante exportación vía NFS por el servicio automount
.
La entrada/salida de datos es siempre mucho más rápida en los discos
locales de cada nodo de cálculo que en las particiones /home
o
/msa
Por supuesto, no hay cuotas definidas en los directorios
/scratch
. Los directorios temporales asociados a cada trabajo
ejecutado por el sistema de colas se borran automáticamente al finalizar los
trabajos.