8.1.1. Instalación en Proxmox VE

Configuración de Volúmen Lógico y Filesystem

Para comenzar con GlusterFS, necesitamos instalar las dependencias

$ apt-get install glusterfs-server -y

Luego de eso necesitaremos crear el volúmen lógico donde configuraremos Gluster.

$ pvcreate /dev/sdb
$ vgcreate vg_glusterfs /dev/sdb
$ lvcreate -l100%FREE -n lv_gluster vg_glusterfs

Nota

El dispositivo /dev/sdb puede variar en base a su servidor, tenga cuidado de no usar el disco de raíz del sistema en un ambiente de producción si es posible.

Cree un Filesystem para que sincronize Gluster.

$ mkfs.xfs /dev/vg_glusterfs/lv_gluster

Advertencia

Asegúrese de que el filesystem que utiliza soporta extended attributes, XFS y/o ZFS son recomendados.

Ahora podemos encender el servicio de glusterd.

$ systemctl enable glusterd
$ systemctl start glusterd

Y crear el directorio de datos para glusterfs

$ mkdir -p /data/gluster

# Create an FSTAB entry for the volume:

$ echo /dev/vg_glusterfs/lv_gluster /data/gluster xfs defaults 0 0 >> /etc/fstab

$ mount /data/gluster
$ mkdir -p "/data/gluster/brick{1}"

Nota

El número entre llaves varía dependiendo de en que nodo se encuentra actualmente. Ej.: Si está en pve02 el data set será /data/gluster/brick2

Una vez hayamos verificado que el Volúmen Lógico local (por ejemplo con df -h) está montado correctamente, y hayamos hecho esto en todos los nodos que tendrán GlusterFS podemos comenzar a añadir peers!

$ gluster peer probe pve01.local.home
$ gluster peer probe pve02.local.home
$ gluster peer probe arbiter-a.local.home

#Output should be the following:
$ gluster peer probe pve02
Probe successful
$ gluster peer probe arbiter-a
Probe successful

Configuración de Gluster con 2 Nodos Par y un Árbitro

Advertencia

Si va a utilizar más de 2 nodos sin un Árbitro (ya que sería innecesario) salte a la sección Configuración de Gluster con 3 Nodos de Storage o Más

En esta configuración habrá 2 nodos de storage y un árbitro con menos espacio (para evitar split-brain).

Nota

El tamaño de los Bloques del Árbitro dependen del espacio en disco, y es recomendable que revise la documentación de gluster.

Src: https://docs.gluster.org/en/latest/Administrator-Guide/arbiter-volumes-and-quorum/

Luego de probe-ar todos los nodos podemos crear el volúmen de gluster

$ gluster volume create gluster_vol replica 3 arbiter 1 pve01:/data/gluster/brick1 pve02:/data/gluster/brick2 arbiter-a:/data/gluster/arbitera

Nota

Puede revisar el estado escribiendo gluster peer status en la terminal/shell

Ahora tenemos que activar el volumen para que todos los datos se repliquen entre los nodos de storage.

$ gluster volume start gluster_vol

Configuración de Gluster con 3 Nodos de Storage o Más

Para configurarlo con más nodos, sin árbitro, es básicamente el mismo proceso que el explicado arriba, pero más fácil porque no hace falta calcular el tamaño del bloque del árbitro:

$ gluster volume create gluster_vol replica 4 pve01:/data/gluster/brick1 pve02:/data/gluster/brick2 pve03:/data/gluster/brick3 pve04:/data/gluster/brick4

Y ahora puede activar el volumen.

$ gluster volume start gluster_vol

Listo!