Test de lustre en el IFIC
Transcripción
Test de lustre en el IFIC
Test de lustre en el IFIC Alejandro Lamas / Javier Sánchez 30 de mayo de 2007 1 Características ● ● ● ● ● ● ● Sistema de ficheros distribuido. Único espacio de nombres Escalable de Alto rendimiento POSIX. Con cuotas y ACLs Desarrollo activo. Posee un modo fácil de instalación Usado en entornos de HPC con grandes cantidades de disco. 30 de mayo de 2007 2 Hardware usado Nodos ● Dell poweredge 850 ● ● ● ● ● Procesador: Intel(R) Pentium(R) D CPU 3.20 GHz Memoria: 4 GiB Discos: 1 disco SATA. Seagate modelo ST3160812AS (160 GiB) Red: Broadcom BCM5721 Gigabit Ethernet PCI Express Switch Gigabit Ethernet ● ● SMC 8516T 30 de mayo de 2007 3 Instalación Software: ● Sistema operativo: Scientific Linux IFIC SLI release 4.4 Software lustre: ● ● utilidades lustre ● ● lustre1.6.0.12.6.9_42.0.10.EL_lustre_1.6.0.1smp.x86_64.rpm kernel parcheado ● ● kernellustresmp2.6.942.0.10.EL_lustre_1.6.0.1.x86_64.rpm módulos del kernel ● ● lustremodules1.6.0.12.6.9_42.0.10.EL_lustre_1.6.0.1smp.x86_64.rpm Otro software necesario ● ● e2fsprogs con versión igual o superior a 1.38cfs1para que tenga soporte para atributos extendidos (EA). 30 de mayo de 2007 4 Instalación Software actualizado: ● ● ● ● ● ● ● ● e2fsprogs1.39.cfs20.x86_64.rpm dump0.4b411.x86_64.rpm rmt0.4b411.x86_64.rpm acl2.2.391.1.x86_64.rpm libacl2.2.391.1.x86_64.rpm attr2.4.281.2.x86_64.rpm libattr2.4.281.2.x86_64.rpm 30 de mayo de 2007 5 Configuración Deshabilitado selinux en todos los nodos. Todos los nodos han de estar sincronizados. ● ● ● NTP UID/GID global. ● ● Un usuario tendrá el mismo uid/gid en cualquier nodo del cluster. Un elevador de entrada/salida adecuado. ● ● ● No usar nunca cfq o «anticipatory scheduler». Elegir entre deadline o noop. 30 de mayo de 2007 6 Componentes básicos de lustre ● Servidor de gestión (MGS). ● ● Servidor de metadatos (MDT). ● ● Almacena los metadatos para un sistema de ficheros. Un MDT por sistema de ficheros. Almacenamiento (OST). ● ● Define la configuración de todos los sistemas de ficheros lustre de un cluster. Sólo habrá uno en el cluster. Almacena los ficheros. Clientes. 30 de mayo de 2007 7 Esquema de cluster lustre 30 de mayo de 2007 8 Configuración realizada Un nodo central (64 bits) ● ● ● servidor de gestión servidor de metadatos 4 servidores de almacenamiento (64 bits) ● ● ● 3 servidores con OST de ificfs 1 servidor con OST de ific2fs 3 clientes ● ● ● 1 cliente 32 bit (con demonio gridftp y StoRM) 2 clientes 64 bit 30 de mayo de 2007 9 Configuración realizada 30 de mayo de 2007 10 Configuración de los nodos Nodo central ● MGS: ● mkfs.lustre mgs /dev/sda5 mkdir p /mnt/mgs mount t lustre /dev/sda5 /mnt/mgs ● ● ● MDT: ● mkfs.lustre fsname=ificfs mdt mgsnode=wn173@tcp0 mountfsoptions=acl /dev/sda6 mkdir p /mnt/ific/mdt mount t lustre /dev/sda6 /mnt/ific/mdt ● ● ● ● Entradas en el fichero /etc/fstab. ● ● LABEL=MGS /mnt/mgs lustre defaults,_netdev 0 0 LABEL=ificfsMDT0000 /mnt/ific/mdt lustre defaults,_netdev 0 0 30 de mayo de 2007 11 Configuración de los nodos Servidores de almacenamiento (OSS) ● OST ● ● ● ● mkfs.lustre fsname=ificfs ost mgsnode=wn173@tcp0 /dev/sda5 mkdir p /mnt/ific/ost0 mount t lustre /dev/sda5 /mnt/ific/ost0 Entradas en el fichero /etc/fstab: ● ● LABEL=ificfsOST0000 /mnt/ific/ost0 lustre defaults,_netdev 0 0 30 de mayo de 2007 12 Configuración de los nodos Clientes ● ● ● mkdir p /lustre/ific.uv.es mount t lustre wn173@tcp0:/ificfs /lustre/ific.uv.es Entradas en el fichero /etc/fstab. ● ● wn173@tcp:/ificfs /lustre/ific.uv.es/ lustre defaults,_netdev 0 0 30 de mayo de 2007 13 /proc/fs/lustre Posibilidad de ajustar determinados valores para mejorar el rendimiento. ● Timeouts. ● Readahead (por cliente). ● Cantidad de datos en el caché (por cliente). ● etc. 30 de mayo de 2007 14 Cuotas ● ● ● ● Se administran con el comando lfs. No es necesario usar los parámetros usrquota y grpquota al montar. Cuando la cuota está activada, lo está para cualquier cliente que monte el sistema de ficheros. Actuan sobre todo el sistema de ficheros en el que se establecen. 30 de mayo de 2007 15 Cuotas Asignación ● Valor por defecto de 100MiB por cada OST (modificable). Asignación mínima posible: 100 MiB x número de OST. ● ● ● ● En caso de asignar una cantidad menor de este mínimo, el usuario no podrá crear ficheros. La cuota se consume por OST; de forma que si algún OST no tiene más cuota disponible, el usuario no podrá crear ficheros aunque los demás servidores dispongan de cuota libre. 30 de mayo de 2007 16 Cuotas ● ● ● ● ● ● Permiten la administración del espacio para un experimento o usuario. Ejemplos de uso: lfs quotacheck /lustre/ific.uv.es/ lfs setquota g dteam 100000 200000 0 0 /lustre/ific.uv.es/ lfs setquota g dteam 0 0 0 0 /lustre/ific.uv.es/ lfs quota g dteam /lustre/ific.uv.es/ 30 de mayo de 2007 17 Striping ● ● ● ● Ventajas: mayor ancho de banda y creación de ficheros de mayor tamaño que la capacidad de almacenamiento de un sólo OST. Puede configurarse para directorios y para ficheros individuales. No recomendado para nuestra configuración. Provoca una mayor carga sobre el sistema y el riesgo de perder una gran cantidad de ficheros al perder un OST no compensa. 30 de mayo de 2007 18 Striping Ejemplos de uso: ● ● ● ● lfs setstripe /lustre/ific.uv.es/grid/dteam/ <stripesize> <ost_indexstart> <ost_numbertouse> lfs setstripe /lustre/ific.uv.es/grid/dteam/ 0 1 0 lfs getstripe /lustre/ific.uv.es/grid/dteam/ 30 de mayo de 2007 19 Lustre sobre lustre Se pueden montar varios sistemas de ficheros lustre en un mismo cliente, unos sobre otros sin problema. Permite distribuir las cuotas por directorios. Ejemplo: ● ● ● ● ● ● mount t lustre wn173@tcp0:/ificfs /lustre/ific.uv.es/ mount t lustre wn173@tcp0:/tier2 /lustre/ific.uv.es/tier2/ mount t lustre wn173@tcp0:/tier3 /lustre/ific.uv.es/tier3/ 30 de mayo de 2007 20 Listas de control de acceso ● ● ● ● ● POSIX. Se soportan a través de los atributos extendidos (EA). Se configuran en el servidor de metadatos; en la creación del MDT o en su montaje. Los clientes no necesitan configuración. setacl, getacl y chacl. 30 de mayo de 2007 21 Operaciones con OST's Fallo de un OST. ● Desactivar OST. ● ● ● ● lctl conf_param testfsOST0001.osc.active=0 Provoca error de entrada/salida inmediato en lectura. Las operaciones de borrado se guardan y realizan nada más activarse. Las escrituras irán a parar a los otros OST lfs find r obd ificfsOST0001_UUID /lustre/ific.uv.es/ Activar OST. ● ● ● lctl conf_param testfsOST0001.osc.active=0 /proc/fs/lustre/obdfilter/ificfsOST0001/recovery_status 30 de mayo de 2007 22 Resultados pruebas Escritura de ficheros ● La copia de un sólo fichero fue siempre al mismo OST. La copia de múltiples ficheros se reparte de manera balanceada entre todos los OST disponibles. Si un OST tiene más espacio recibe más ficheros. Copia de un único fichero: ● ● ● ● ● ● ● ● ● rsync av progress /tmp/bigfile /lustre/ific.uv.es/test sync.1 Servidor0: 90% de ocupación: 30.63MB/s Servidor1: 89% de ocupación: 35.04MB/s Servidor2: 50% de ocupación: 48.34MB/s Servidor0: 0% de ocupación: 48.27MB/s 30 de mayo de 2007 23 Resultados pruebas Servidor gridftp ● Se ha instalado el gridftp de un classicSE Funciona sin problemas. ● ● Servidor SRM ● StoRM ● ● ● ● Funciona sin problemas con certificados sin extensión voms. Falla al usar certificados con extensión voms (¿problemas de configuración?) Necesita que los ACL's estén activados. Otros servicios (no probados todavía). ● rfiod: No debería haber problemas para acceso local. ● http: Se puede hacer uso del modulo que valida certificados grid. 30 de mayo de 2007 24 ● Por hacer ● ● ● ● Añadir nodos X4500 con channel bonding (pendiente de switch). Hacer pruebas con «lustre iokit». Planeado testbed en preproducción: ● Lustre + StoRM. ● Sólo necesita 3 nodos. Crear perfil selinux. 30 de mayo de 2007 25 Conclusiones POSIX. Administración sencilla. Facilidad para añadir nuevos nodos en caliente. SUN vende X4500 con lustre: ● ● ● ● ● http://www.sun.com/servers/cr/scalablestorage Terceros usando lustre: ● ● http://20anscc.in2p3.fr/IMG/pdf_MarcHamilton2.pdf 30 de mayo de 2007 26