2. Indice general
● Hardware
● Servers: Management Server & Storage Server
● Armario de discos DS4700
● Bladecenter
● Blade JS21
● Myrinet
● Cisco
● E
Esquema ló i d l cluster
lógico del l t
● Redes
● Conexionado
● Nomenclatura DNS
● Software
● DIM (Distributed image management)
● GPFS
● Myrinet Software GM/MX – MPICH
● Monitorización & Sistema de colas
MareNostrum - ITC 2
3. Hardware
● Visión general del cluster
● Servers
● Management Server
● Storage Server
● Armario de discos DS4700
● Bladecenter
● Blade JS21
● Myrinet
● Cisco
MareNostrum - ITC 3
4. Visión Virtual del cluster ITC
Switch Myrinet
Cisco
Management
Server
6 chassis in a rack (42U) Network Connectivity:
KVM &
• 336 processors
p Myrinet & GibEth
Console
• 672GB memory Servers:
Management
Storage
Controladora
Discos
Storage Server
MareNostrum - ITC 4
5. Management Server a.k.a cabeza
● Características:
● 2.1 GHz POWER5+ dual-core processor modules
p
● 1.9MB L2 and 36MB L3 cache per processor pair
● Memoria ??
● 2 discos internos 73 4 GB SCSI
di i 73.4
● Dual-port Gigabit Ethernet
● Tarjeta Myrinet
● Funciones:
● Servidor DHCP
● Servidor DNS
● Servidor NTP
● Gestión del cluster y bladecenters
● Manager del sistema de colas
● Entrada administradores: 3ª interfaz de red
MareNostrum - ITC 5
6. Storage Node Server
● Características:
● 1.65GHz Power5 processor
● Memoria ??
● Dual-port Gigabit Ethernet
p g
● Tarjeta FiberChannel 4 Gbits
● Conectado al armario de discos DS4700
● Funciones:
● Servidor DIM de los 6 bladecenters
● Almacenamiento de las imágenes del SO de los blades
● Servidor TFTP de las imágenes de boot
● S id d l di
Servidor de los discos DS4700
● Servidor principal de GPFS
MareNostrum - ITC 6
7. Armario de discos DS4700
● Características:
● Sistema de almacenaje con doble controladora (sólo 1 en uso)
● 1 GB caché por controladora
● 16 discos duros por bandeja
p j
● Añadida una expansión EXP810 al DS4700
● 21 discos FC de 146.8 GB 15Krpm
● Fuentes redudandas
● Creación de RAIDs 0,1,5
● Funciones:
● Almacenaje de los datos de GPFS
MareNostrum - ITC 7
8. Bladecenter
● Elemento que puede aglutinar 14 blades
● Elemento que ofrece acceso a recursos compartidos:
● Networking: Ethernet, Myrinet, Infiniband, FiberChannel, …
● Redundancia casi completa de cualquier elemento
● Gestión out-of-band del bladecenter y sus blades
● Monitorización del entorno
● Parte Frontal:
● Blades
● LEDs informativos
LED i f ti
● Lector CD-ROM
● Disquetera
MareNostrum - ITC 8
10. Bladecenter parte trasera:
Fuentes de alimentación
● 4 Fuentes de 2000W redundantes 2 a 2
● 2 Turbinas redundantes que fuerzan la circulación del aire
caliente hacia la parte trasera del rack
MareNostrum - ITC 10
11. Bladecenter parte trasera:
Nortel L2/L3 Ethernet Switch
● Switch proporciona conectividad Gigabit Ethernet a los 14
blades
● Gestionable out-of-band: Estadísticas, configuración, …
● F
Funciones: T áfi producción d l bl d y GPFS
i Tráfico d ió de los blades
MareNostrum - ITC 11
12. Bladecenter parte trasera:
Optical Pass-Through Module (OPM)
● Elemento que da conectividad Myrinet hacía afuera de los blades
● Convierte la señal eléctrica en luz (no introduce lógica – Nivel 1)
● Permite conectar 4 conexiones de fibra: quad-cables
● Q d bl 4 li k d fib (8 fib
Quad-cable: links de fibra fibras fí i
físicas) por cable
) bl
MareNostrum - ITC 12
13. Bladecenter parte trasera:
Management Module
● Elemento de gestión del entorno del bladecenter como de los blades:
● Control de los blades
● Sensores ambientales
● Log de eventos
● ...
● C
Conexión out-of-band: Red de servicio invisible para los usuarios
f
MareNostrum - ITC 13
14. Bladecenter parte trasera:
Management module (II)
Telnet
SNMP
● Monitorización
● Estado general
● Log de eventos
● Control de LEDs
● P
Power management t
● Blades
● Power on/off/restart
● Consola de los blades (Serial over LAN)
● Firmware update
● Configuración de boot
g
● Gestión de componentes I/O (Ethernet switches, OPM, …)
● Configuración
● Power on/off/restart
● Configuración de la propia Management Module
MareNostrum - ITC 14
15. JS21 blade
● Características:
● 2 chips PPC970MP @ 2.3 GHz dual-core
dual core
● 8 GB RAM
● Disco duro interno SAS 36.4 GB
● Tarjeta myrinet en (I/O Expansion)
● 2 interfaces Giagabit Ethernet Broadcom
● Soporta instrucciones vectoriales SIMD
● AltiVec
● BMC Conexionado con la Management del
bladecenter
MareNostrum - ITC 15
17. Myrinet
● Cada blade dispone de una tarjeta myrinet o daughter card,
q
que le p p
proporciona acceso a la red myrinet
y
● Todo ello se concentra en un switch de myrinet, en caso de
ITC: Clos 128 puertos
● Latencia de la red: 7-8 µ seg
● Ancho de Banda: 2+2 Gbit / seg
● Interfaz monitorización: out-of-band
MareNostrum - ITC 17
18. Myrinet en MareNostrum
● 10 Clos 256x256 switches
● Conexión de hasta 256 máquinas
● Conexión a los Spine mediante
● 64 puertos con quad-cables
● 2 Spine 1280
● Interconexión hasta 10 Clos
256x256 switches
● Monitorización de los equipos
mediante interfaz ethernet
18
20. Cisco Catalyst 3750
● Características:
● 48 puertos Gigabit Ethernet cobre
● Administración out-of-band
● Funciones:
● Switch que proporciona red a todo el cluster
● Creación de 2 VLANs
● Red de producción: Boot de blades, GPFS (cables verdes)
● Red de servicio: Gestión del cluster (cables amarillos)
MareNostrum - ITC 20
21. Esquema lógico del cluster
● Redes en MareNostrum
● Conexionado de los equipos
● Esquema general del clúster
● Nomenclatura DNS
MareNostrum - ITC 21
22. Redes en MareNostrum
● Myrinet
● Rango: 10.1.x.x /16
g
● Únicamente para el tráfico de aplicaciones paralelas
● Protocolo propio de Myricom: GM ó MX
● Soporta IP over GM or MX ( usado)
(no d )
● GigabitEthernet producción
● Rango: 10.2.x.x /16
● Boot de blades
● Tráfico de GPFS (filesystem global)
● M it i
Monitorización
ió
● GigabitEthernet servicio
● Rango: 10 3 x x /16
10.3.x.x
● Acceso restringido (desde los servers únicamente)
● Tráfico de management y log
● Syslog, SSH, Telnet, SNMP
MareNostrum - ITC 22
23. Resumen de conexiones
Red 10.1 Red 10.2 Red 10.3 Externa
Blade X X X (logins)
Blade Center MM X
Blade center Switch X X
Server X X X
Force10 / Cisco X X X
Myrinet switch X X
Host monitorización X X X
Cabeza X X X
MareNostrum - ITC 23
25. Nomenclatura DNS
● FQDN: <nombre>-<interfaz>.<dominio>; alias:<nombre>
● Ejemplo: s01-gigabit1.mn; alias: s01
● Servers: cabeza,s01,s02,s03,…
S b 01 02 03
● Controladora de discos: fastt1a,fastt1b, …
● Switches Gigabit y myrinet: cisco1,… ; myrisw1
cisco1 myrisw1,….
● Cada bladecenter y sus blades dependen de un server:
● Management de un bladecenter: sXXcYmm
● XX= Número de Server
● Y= Número de Bladecenter de ese server
● Gigabit Ethernet Switch Module del bladecenter: sXXcYesm
● XX= Número de Server
● Y= Número de Bladecenter de ese server
● Blades: sXXcYbZZ
● XX= Número de Server
● Y= Número de Bladecenter de ese server
● ZZ= Número de blade dentro del bladecenter
MareNostrum - ITC 25
26. Software
● DIM (Distributed image management)
● GPFS
● Myrinet Software GM/MX – MPICH
● Monitorización y Sistema de colas
MareNostrum - ITC 26
27. DIM (Distributed Image Management)
● Introducción
● Imágenes
● Boot d
B t de un blade
bl d
● Replicaciones y cambios en las imágenes
MareNostrum - ITC 27
28. DIM: Introducción
● Software de IBM responsable de:
● Boot y montaje p red del sistema operativo de los blades
j por p
● Gestión de bladecenters a través de scripts
● Replicación y actualización de los blades
● Gestión de imágenes para el uso de diversas distribuciones
● Gestión de IP’s del sistema
● A t l
Actualmente Open Source:
t O S
● http://www.alphaworks.ibm.com/tech/dim
● El blade funciona diskless el disco local se utiliza para
diskless,
datos temporales
MareNostrum - ITC 28
29. DIM: Imágenes (I)
● Cada servidor se hace responsable de botar y ofrecer el
sistema operativo a los blades de X bladecenters
● Cada servidor guarda y ofrece por NFS a sus blades:
● 1 imagen readonly que comparten los X blades de este servidor
● 56 imágenes readwrite: Cada blade tiene la suya propia.
Imagen /bin /boot /lib /opt /usr /sbin
Readonly
Imagen
Linux master
Imagen
readwrite
/dev /etc /root /var
MareNostrum - ITC 29
30. DIM: Imágenes (II)
● Cada servidor se hace responsable de botar y ofrecer el
sistema operativo a los blades de X bladecenters
● Cada servidor guarda y ofrece por NFS a sus blades:
● 1 imagen readonly que comparten los X blades de este servidor
● X imágenes readwrite: Cada blade tiene la suya propia.
Diskless Linux
Imagen
Readonly NFS mount –o ro
Imagen
Linux master
NFS mount –o rw
Imagen
readwrite
MareNostrum - ITC 30
31. DIM: Imágenes (III)
● Cada servidor se hace responsable de botar y ofrecer el
sistema operativo a los blades de X bladecenters
● Cada servidor guarda y ofrece por NFS a sus blades:
● 1 imagen readonly que comparten los X blades de este servidor
● X imágenes readwrite: Cada blade tiene la suya propia.
Imagen
Readonly
Imagen Imagen
Linux master readwrite
Imagen
readwrite
MareNostrum - ITC 31
32. DIM: Boot de un blade
● Blade boot
● JS21 OpenFirmware envía un BOOTP broadcast
p
● DHCP Server responde, OpenFirmware configura eth0
● OpenFirmware se baja imagen de boot remoto por TFTP
j g
● OpenFirmware arranca el kernel de dentro de la imagen
conseguida
● K
Kernel monta i i d & ejecuta li
l initrd j linuxrc
● Linuxrc:
● Carga modulos necesarios para eth0
● Configura eth0
● Monta su imagen readwrite por NFS en /mnt
● Monta la imagen readonly por NFS en /mnt
● Chroot al punto montaje NFS ( /mnt )
● Ejecución /sbin/init
MareNostrum - ITC 32
33. Comandos DIM
● Comandos de configuración de BC:
● dim_bcadmin:
dim bcadmin: Control de elementos de bladecenter
● dim_bctool: Acciones sobre los blades de un bladecenter
● dim_console: Consigue la consola de un blade
g
● dim_bbs: Cambia la configuración de boot de un blade
● Comandos gestión de imágenes:
g g
● dim_image: Crea una nueva imagen
● dim_dhcp / dim_newblade: Cambia la configuración de DHCP
● dim_nfs: Chequea, monta, exporta las imágenes
● Comandos de sincronización:
● dim_sync: dim_sync_master + dim_sync_server +
dim_sync_image (a continuación)
MareNostrum - ITC 33
34. DIM: Replicaciones y cambios en las
imágenes del sistema operativo
1 rsync desde
master hasta el
Manager Server
Master: Blade que bota de
q
disco duro y contiene la
imagen original del sistema
MareNostrum - ITC 34
35. DIM: Replicaciones y cambios en las
imágenes del sistema operativo
2 rsync desde el
Manager Server a
cada uno de los
Storage Servers
1 rsync desde
master hasta el
Manager Server
Master: Blade que bota de
q
disco duro y contiene la
imagen original del sistema
MareNostrum - ITC 35
36. DIM: Replicaciones y cambios en las
imágenes del sistema operativo
3 rsync desde la imagen
total a las imágenes readonly
2 rsync desde el y readwrite residentes en
Manager Server a cada server en paralelo
cada uno de los
Storage Servers
1 rsync desde
master hasta el
Manager Server
Master: Blade que bota de
q
disco duro y contiene la
imagen original del sistema
MareNostrum - ITC 36
37. DIM: Replicaciones y cambios en las
imágenes del sistema operativo
3 rsync desde la imagen
total a las imágenes readonly
2 rsync desde el y readwrite residentes en
Manager Server a cada server en paralelo
cada uno de los
Storage Servers
1 rsync desde
master hasta el
Manager Server
Master: Blade que bota de
q
disco duro y contiene la
imagen original del sistema
4 nfs Los blades ven el
cambio de forma automática
MareNostrum - ITC 37
38. GPFS
● GPFS in MareNostrum:
● Storage Hardware (remember)
● Storage node
● GPFS benefits
● GPFS Special Roles
p
● Distributed locking mechanism
● Filesystems definidos en MareNostrum
MareNostrum - ITC 38
39. Storage Hardware
● Total of 20 storage nodes, 20 x 14 TBytes
● Each storage node
g
● 2x IBM p615
● DS4700
● EXP810
● Cabling per node
● 2 Myrinet (not used)
● 2 Gb to Force10 E600
● 2 10/100 cat5 to Cisco
● 1 Serial
MareNostrum - ITC 39
40. Storage Node
GbE GbE
p615 Server p615 Server
2 CPUs x server
4GB RAM
Fiberchannel (250MB/s)
IBM DS4700 Controller
300MB/s
5 LUNs RAID 5 (4+1) 14x 500GB drives 7TB
3 hot spare disks
IBM EXP810 SATA d
drawer
14x 500GB drives 7TB
MareNostrum - ITC 40
41. Storage node (Logic vision)
GbE GbE
p615 Server p615 Server
2 CPUs x server
4GB RAM
/dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh
• E h new RAID5 LUN h a size of 2 TB
Each has i f
• Each LUN will correspond with a GPFS NSD (Network Shared Disk)
MareNostrum - ITC 41
42. NSD
● NSD (Network Shared Disk) provides to GPFS:
● Disk access through disk discovery
Primary NSD Server
● Cluster-wide disk naming
GPFS Client
Secondary NSD Server
s01_s02_nsd1
Access s01_s02_nsd1
Device NSD Name Primary NSD server Secondary NSD server Contents Failure Group
/dev/sdd s01_s02_nsd1 s01-gigabit1 s02-gigabit1 Data & Metadata 1
/dev/sde s01_s02_nsd2 s01-gigabit1 s02-gigabit1 Data & Metadata 1
/dev/sdf s01_s02_nsd3 s01-gigabit1 s02-gigabit1 Data & Metadata 1
/dev/sdg s01_s02_nsd4 s02-gigabit1 s01-gigabit1 Data & Metadata 2
/dev/sdh s01_s02_nsd5
s01 s02 nsd5 s02-gigabit1
s02 gigabit1 s01-gigabit1
s01 gigabit1 Data & Metadata 2
MareNostrum - ITC 42
43. GPFS Clients & GigEth
Blade Center
GbE
GbE
● Force 10 Switch: Interconnection of
Bladecenters
● 225 internal cables
● 183 bladecenters
● 42 for servers
MareNostrum - ITC 43
45. GPFS Benefits
● Allows multiple processes on all nodes access the same file with
standard syscalls
● File reads / writes are stripped across multiple disks
● Increase of aggregate bandwith use
● Balance the load across all disks in a filesystem
● Large files are divided in equal sized blocks, consecutive blocks
allocated on different disks round-robin
● Supports very large fil and fil system sizes
S t l files d file t i
● Allows concurrent reads and writes from multiple nodes
● GPFS uses a local cache on each client (pagepool = 128 MB)
● GPFS prefetches data into its buffer pool, issuing parallel I/O
requests
● Sequential pattern
● Reverse sequential pattern
● Various strided access patterns
p
MareNostrum - ITC 45
46. GPFS Special Roles
● Quorum Nodes
● Those nodes which half plus 1 of them have to be online to be the
cluster online
● Configuration Manager
● Checks if quorum is accomplished to enable or not the start of GPFS
in all client
● Selects the filesystem manager for each filesystem and resolves the
take-over in case of failure in one of them
● Filesystem manager (1 per filesystem)
● Filesystem configuration (Repair filesystem, add/change disks,
mount/dismount operations)
● Management of disk allocation
● Token management
● Quota management
● Metanode (1 per file opened)
● Mantains file metadata integrity
● N clients can read/write data directly but updates to metadata are
only done by the metanode
MareNostrum - ITC 46
47. Distributed Locking Mechanism
● GPFS has a distributed-based token lock system to keep file
consistency
● Tokens are issued at block level or whole-file depending on the
whole file
operation
● File system manager is the token manager server
● Coordinates access to files granting the right to read/write
data/metadata
read (1,*buff,buffsize)
write(1,*buff,buffsize)
Request Token read/write
File system Manager
read (1,*buff,buffsize) GPFS Client 2
write(1,*buff,buffsize) List of nodes holding conflicting tokens
Request Token read/write
q
GPFS Client 1 File system Manager Token
Grant Token Relinquish Token
GPFS Client 1
GPFS Client 2
Grant Token
Token
Read /Write
GPFS Client 1
GPFS Client 1
Token
Read /Write
GPFS Client 2
MareNostrum - ITC 47
48. Filesystems en MareNostrum
● /gpfs/home
● El home de los usuarios. Sources codes y ejecutables propios
● Cuota de 10 GB por usuario.
● Datos duplicados a nivel de GPFS
● 19 TB disponibles.
● /gpfs/projects
● Zona de ficheros comunes a cada proyecto. Un directorio por proyecto.
● Cuota de 50 GB por proyecto.
● Datos duplicados a nivel de GPFS
● 74 TB disponibles.
● /gpfs/scratch
● Espacio temporal. Input/Output de los Jobs.
● Filesystem sin cuotas.
● 56 TB disponibles.
● /gp s/apps
/gpfs/apps
● Binarios de las aplicaciones compiladas. Un directorio por aplicación, con subdirectorios por
versiones.
● 10 TB disponibles.
● Para facilitar la migración de proyectos, debería tener el mismo contenido en todos los
centros.
t
● /gpfs/apps/local: Zona donde se ubicarían las aplicaciones propias de cada centro.
● /gpfs/test
● Filesystem de test. Utilizado para benchmarks, test de nuevas versiones, evaluación de
diferentes configuraciones
configuraciones....
MareNostrum - ITC 48
50. Myrinet: Introducción
● Red dedicada exclusivamente a aplicaciones paralelas
●(
(e.g.: MPI)
● Única red no bloqueante (dependiente del mapeo de rutas)
● Para cada par de nodos existe un camino propio
● Baja latencia
● En la tarjeta myrinet de cada blade se almacena la tabla de
rutas
● Tráfico enrutado a nivel 2: MAC’s
● Switch de myrinet: elemento sin buffers
MareNostrum - ITC 50
51. Myrinet: Administración Unix
● Actualmente se usa el software GM de Myricom, disponible en:
● http://www.myri.com
● Existe la versión de MPICH para el uso del driver GM
p
● Se instala como un módulo más del kernel
● modprobe …
● I i i li
Inicialización d l myrinet como cualquier servicio li
ió de la i t l i i i linux:
● En los blades /etc/init.d/myrinet start (boot time)
● En los servers (si hay) /etc/init.d/gm start (boot time)
● Proceso gm_mapper: corre en cada blade y se encarga de establecer
y
dinámicamente las rutas de la red myrinet.
● Evolución del proceso gm_mapper FMA, carga de la red a nivel de cálculo
de rutas y monitorización
● gm_board_info: comando que muestra la configuración de la red y rutas
calculadas por el gm_mapper.
● Evaluando nueva versión MX del driver de myrinet
MareNostrum - ITC 51