Actualizar OSD de servicio Ceph de almacenamiento compartido en clúster Proxmox VE. Procedimiento para actualizar los paquetes de un nodo Proxmox VE.

Cuando recibimos este aviso en el estado de los OSD del servicio Ceph de almacenamiento compartido hiperconvergente:

Other cluster members use a newer version of this service, please upgrade and restart

Nota importante: este procedimiento actualizará todos los paquetes que tengan versiones inferiores a las actuales en sus respectivos repositorios, no solo ceph. Por lo tanto, es recomendable que el nodo esté en HA con el resto de nodos, de forma que si hay algún problema, las máquinas que tenga se migrarán al resto automáticamente, tal y como indicamos en este tutorial:

Es conveniente actualizar todos los OSD y dejarlos a la misma versión, para evitar este aviso y por seguridad. Para ello, pulsaremos en el nodo que contiene los OSD a una versión anterior, en este caso el nodo proxmox2 [1], pulsaremos en «Updates» y en «Upgrade»:

Se abrirá una consola de shell de comandos, nos indicará que pulsaremos «y» e INTRO para continuar con la actualización de paquetes del nodo seleccionado, en este caso, se actualizarán los siguientes paquetes:

ceph ceph-base ceph-common ceph-fuse ceph-mds ceph-mgr ceph-mgr-modules-core
ceph-mon ceph-osd ceph-volume libcephfs2 libperl5.36 librados2 libradosstriper1
librbd1 librgw2 libsqlite3-mod-ceph perl perl-base perl-modules-5.36
python3-ceph-argparse python3-ceph-common python3-cephfs python3-rados python3-rbd
python3-rgw

Se iniciará la actualización de paquetes, entre ellos el paquete ceph, de la versión 18.2.1-pve3 a la versión 18.2.6-pve1. El proceso finalizará con el mensaje:

Your System is up-to-date

Algunas de las actualizaciones de paquetes pueden requerir del reinicio del nodo para que se apliquen. Por ejemplo, para el caso de la actualización de los OSD, es necesario el reinicio del nodo, tal y como se indica (tras la actualización) en el estado de Ceph, con el mensaje:

A newer version was installed but old version still running, please restart.

En este caso será suficiente con reiniciar el monitor de Ceph. Para ello, desde uno de los nodos, pulsaremos en «Ceph» – «Monitor», seleccionaremos el nodo a reiniciar y pulsaremos en «Restart» (no se reiniciará el SO, sólo el servicio de monitor):

Realizaremos el proceso de reinicio también para cada OSD de cada nodo. Es recomendable ir reiniciando cada OSD paulatinamente, cuando se haya comprobado que el OSD reiniciado está up:

Si queremos ser más «drásticos» y tenemos el HA activo, podremos reiniciar el nodo completo (el SO), seleccionándolo y pulsando en «Reboot». Pero en este caso, las máquinas que contenga, se migrarán a otros nodos:

Tras el reinicio del servicio de monitor, Ceph quedará en estado OK (HEALTH_OK):