martes, 26 de febrero de 2019

Actualizar versión de GPFS (IBM Spectrum Scale)



Cómo actualizar GPFS a la última versión, como recuperar GPFS tras una actualización de Linux, cómo hacer que GPFS se inicie automáticamente tras cada reinicio de la máquina.



General Parallel File System (GPFS) es un sistema de ficheros de alto rendimiento desarrollado por IBM. Este sistema de archivos proporciona un acceso de alta velocidad a ficheros ubicados dentro de un clúster de discos y es usado principalmente en servidores con bases de datos de gran tamaño.

Las versiones antiguas de GPFS (< 4.2.0) funcionan correctamente sobre kernels 3.x de Linux. Si actualizamos el kernel de un sistema Linux a una versión de la rama 4, nos encontraremos que GPFS deja de funcionar. Esto se debe a que se realizaron cambios importantes en el código del kernel de Linux en su versión 4, que requirieron una actualización importante del código de GPFS para hacerlos compatibles. Esto significa que una máquina con kernel 4 debe ir acompañada de GPFS >=4.2.

En 2015, IBM renombró GPFS a IBM Spectrum Scale, por lo que a partir de la versión 4.2, deberíamos referirnos a la tecnología GPFS como Spectrum Scale.

Para actualizar a Spectrum Scale en su última versión, primeramente deberemos tener una licencia vigente con IBM y, obviamente, GPFS instalado. En mi caso, teníamos un sistema Linux con kernel 3.12 y GPFS 4.1.1.5. Al actualizar Linux a un kernel 4.12, me encontré con que la partición GPFS no montaba. Después de revisar la web de IBM de arriba a abajo, encontré algún apartado - que no soy capaz de recuperar - en que decía que Spectrum Scale 4.2 no es compatible con kernels 3.x.

Visto lo visto, me descargué los rpms de Spectrum Scale 4.2 y empecé el proceso de actualización.

Primero hay que parar el clúster GPFS:

HOST# mmshutdown Thu Feb 21 12:16:58 CET 2019: mmshutdown: Starting force unmount of GPFS file systems Thu Feb 21 12:17:03 CET 2019: mmshutdown: Shutting down GPFS daemons Shutting down! Unloading modules from /lib/modules/4.12.14-95.6-default/extra mmfsenv: The /lib/modules/4.12.14-95.6-default/extra/mmfslinux.ko kernel extension does not exist. mmfsenv: Unable to verify kernel/module configuration. Thu Feb 21 12:17:06 CET 2019: mmshutdown: Finished

Instalamos los rpms de la nueva versión de GPFS:

HOST# rpm -Uvh gpfs*rpm Preparing... ################################# [100%] Updating / installing... 1:gpfs.base-4.2.3-13 ...

Hacemos un rebuild del GPFS portability layer:

HOST# mmbuildgpl -------------------------------------------------------- mmbuildgpl: Building GPL module begins at Thu Feb 21 12:20:00 CET 2019. -------------------------------------------------------- Verifying Kernel Header... kernel version = 41214095 (41214095006000, 4.12.14-95.6-default, 4.12.14-95.6) module include dir = /lib/modules/4.12.14-95.6-default/build/include module build dir = /lib/modules/4.12.14-95.6-default/build kernel source dir = /usr/src/linux-4.12.14-95.6/include Found valid kernel header file under /lib/modules/4.12.14-95.6-default/build/ include Verifying Compiler... make is present at /usr/bin/make cpp is present at /usr/bin/cpp gcc is present at /usr/bin/gcc g++ is present at /usr/bin/g++ ld is present at /usr/bin/ld Verifying Additional System Headers... Verifying linux-glibc-devel is installed ... Command: /bin/rpm -q linux-glibc-devel The required package linux-glibc-devel is installed make World ... make InstallImages ... -------------------------------------------------------- mmbuildgpl: Building GPL module completed successfully at Thu Feb 21 12:20:24 CET 2019.

Arrancamos GPFS:

HOST# mmstartup Thu Feb 21 12:21:36 CET 2019: mmstartup: Starting GPFS ...

Activamos el autostart del GPFS:

HOST# mmchconfig autoload=yes mmchconfig: Command successfully completed

Hacemos que el servicio arranque automáticamente después de un reinicio:

HOST# systemctl enable gpfs Created symlink from /etc/systemd/system/multi-user.target.wants/gpfs.service to /usr/lib/systemd/system/gpfs.service.

Reiniciamos la máquina y vemos que el filesystem se monta correctamente haciendo un df -h.
En este momento, ya tenemos un sistema Linux con kernel actualizado y clúster Spectrum Scale compatible, a prueba de reinicios.


Fuentes:

https://es.wikipedia.org/wiki/General_Parallel_File_System
https://en.wikipedia.org/wiki/IBM_Spectrum_Scale
https://www.ibm.com/support/knowledgecenter/STXKQY_5.0.0/com.ibm.spectrum.scale.v5r00.doc
0

0 comentarios:

Publicar un comentario