Agregar, de forma manual (desde el shell de comandos), un nuevo monitor al servicio Ceph de almacenamiento compartido en un clúster de virtualización Proxmox VE. Eliminar un monitor Ceph de forma manual.

Agregar un monitor de Ceph de forma manual en clúster Proxmox VE

Cuando disponemos de un nodo monitor del servicio de almacenamiento compartido hiperconvergente Ceph en nuestro clúster Proxmox VE en estado detenido (stopped), bien porque no funciona correctamente o bien porque queremos eliminarlo como monitor, si intentamos eliminarlo desde la consola web de Proxmox (seleccionándolo y pulsando en «Destroy») y nos da algún error:

Podemos realizar su eliminación de forma manual, como indicamos en esta sección de este tutorial, y podemos agregarlo (si es lo que necesitamos) nuevamente también de forma manual, como indicamos a continuación.

En primer lugar, obtendremos los datos de los monitores actuales en Ceph. Para ello, desde una consola de shell (abriéndola desde el botón «Shell» de la consola de gestión web de Proxmox VE o bien conectándonos a algún nodo del clúster Proxmox VE por SSH), introduciremos el comando:

Nos mostrará la información básica del clúster Ceph actual. Por ejemplo:

Anotaremos el puerto establecido para los monitores actuales, en este caso el puerto 3300, que será el que indiquemos más adelante para agregar el nuevo monitor.

Desde el nodo que queremos añadir como monitor Ceph, podemos acceder a él desde otro nodo, introduciendo el comando:

ssh 192.168.1.109

Donde sustituiremos 192.168.1.109 por la IP de nuestro nodo a añadir como monitor de Ceph. Para este ejemplo el nodo que queremos añadir tiene estos datos:

  • Nombre/ID: proxmox3.
  • IP: 192.168.1.109.

A partir de ahora, usaremos estos datos para los comandos que ejecutaremos a continuación. Como es lógico, en vuestro entorno cambiaréis el nombre y la IP por el que corresponda.

Desde el shell del nodo a añadir como monitor, crearemos la carpeta donde se almacenarán los datos del nodo para el clúster Ceph, con el comando:

Generaremos el fichero monkeyring (creará un fichero en /tmp, con el nombre pm3_key, se puede cambiar la carpeta y el nombre del fichero), con el comando:

Crearemos el monmap del monitor (igual que el fichero anterior, en la carpeta /tmp, con el nombe pm3_map, que se puede modificar por otra carpeta y otro nombre):

Inicializaremos el monitor, con el comando (pasándole la ruta de los dos ficheros anteriores):

Y, por último, estableceremos la IP del direccionamiento público del clúster Ceph para el nuevo monitor, así como el puerto (el obtenido anteriormente, en este caso el 3300):

A partir de ahora tendremos disponible este nuevo nodo monitor de Ceph, que podemos consultar con el comando:

Que nos devolverá:

También con el comando:

Que nos devolverá:

Y, por supuesto, también podremos consultarlo desde la consola web de Proxmox VE:

Eliminar un monitor de Ceph de forma manual

Cuando no nos funciona la eliminación desde la consola web de Promox VE, podremos eliminar un monitor de forma manual, desde la línea de comandos, como indicamos a continuación.

Para eliminar un monitor Ceph de forma manual, desde una ventana de shell (pulsando en el botón «Shell» del nodo desde la web de gestión de Proxmox VE o bien accediendo por SSH al nodo que queremos eliminar de monitor de Ceph), ejecutaremos el siguiente comando (en este caso, el nodo a eliminar tiene de ID proxmox 3):

En caso de no funcionar el comando anterior, como nos ha ocurrido en este ejemplo, que nos indica que el monitor no existe (ya ha sido eliminado):

mon.proxmox3 does not exist or has already been removed

Podemos intentarlo con:

Si el comando anterior tampoco elimina el monitor completamente podremos forzar su eliminación, siguiendo los siguientes pasos. En primer lugar, editaremos el fichero /etc/ceph/ceph.conf y nos aseguraremos de borrar cualquier referencia al monitor que queramos eliminar:

Eliminaremos la IP en «mon_host» y, también, todas las líneas siguientes:

[mon.proxmox3]
public_addr = 192.168.1.109

Guardaremos los cambios pulsando en Control + O y cerraremos la edición pulsando en Control + X.

Realizaremos el proceso anterior para todos los nodos del clúster.

Por otro lado, ejecutaremos (en el nodo con el monitor a eliminar) los siguientes comandos:

El monitor habrá desaparecido del clúster Ceph:

Si intentamos agregarlo nuevamente, pulsando en «Create»:

Eligiendo el nodo:

Y nos vuelve a mostrar un mensaje como este:

monitor address ‘192.168.1.109’ already in use (500).

Podremos agregarlo de forma manual como indicamos en esta sección de este tutorial.