Inicio Linux & Systems Networks & Infrastructure Cybersecurity Cloud & DevOps SIEM & Monitoring DFIR & Threat Intel Development & Other Todas las categorias Herramientas

Configurar High-availability cluster en PROXMOX

Configurar High-availability cluster en  PROXMOX

Tabla de contenidos

Proxmox VE 4 soporta grupos de hasta 32 nodos físicos. La gestión centralizada Proxmox hace que sea fácil de configurar todos los nodos disponibles desde un solo lugar. Hay muchas ventajas si se utiliza un clúster Proxmox por ejemplo, es fácil migrar una máquina virtual de un nodo a otro nodo. Puede utilizar 2 servidores Proxmox para una configuración multi-nodo, pero si se desea configurar Proxmox para alta disponibilidad, se necesitan 3 o más nodos Proxmox.

En este tutorial, vamos a montar un cluster Proxmox 4 con 3 servidores Proxmox y 1 servidor NFS almacenamiento.

Esquema de red:

proxmox-cluster

Requisitos:

text
proxmox (Master)

IP          : 192.168.1.230

FQDN     : proxmox.redorbita.com
proxmox01

IP          : 192.168.1.231

FQDN     : proxmox01.redorbita.com
proxmox01

IP          : 192.168.1.232

FQDN     : proxmox02.redorbita.com
openfiler  (Storage)

IP          : 192.168.1.220

FQDN     : openfilter.redorbita.com

Crear volumen

Primero debemos crear un volumen y exportarlo mediante NFS en el servidor de almacenamiento, yo en mi caso voy a utilizar openfilter, tu puedes realizarlo mediante otro tipo de cabinas de almacenamiento (freenas, openmediavault, netapp..etc) o mediante un servidor NFS

Crear volumen y exportarlo mediante NFS en openfilter

Crear volumen y exportarlo mediante NFS en openfilter

Configurar fichero hosts

Debemos configurar el fichero hosts de los tres nodos de la siguiente forma:

bash
cat /etc/hosts
192.168.1.231 proxmox01.redorbita.com proxmox01 pvelocalhost

192.168.1.230 proxmox.redorbita.com proxmox pvelocalhost

192.168.1.232 proxmox02.redorbita.com proxmox02 pvelocalhost

Para crear un cluster en proxmox debemos predefinir uno de los nodos como master, en nuestro caso hemos escogido el servidor: proxmox.redorbita.com192.168.1.230

bash
root@proxmox:~# pvecm create proxmoxcluster

Accedemos a los otros dos servidores y ejecutamos el siguiente comando:

PROXMOX01

bash
root@proxmox01:~# pvecm add 192.168.1.230

The authenticity of host ‘192.168.1.230 (192.168.1.230)’ can’t be established.

ECDSA key fingerprint is 72:ed:38:4e:5f:35:32:c4:a7:5f:5e:5c:7f:49:1f:11.

Are you sure you want to continue connecting (yes/no)? yes

root@192.168.1.230’s password:

copy corosync auth key

stopping pve-cluster service

backup old database

waiting for quorum…OK

generating node certificates

merge known_hosts file

restart services

successfully added node ‘proxmox02’ to cluster.

PROXMOX02

bash
root@proxmox02:~# pvecm add 192.168.1.230

The authenticity of host ‘192.168.1.230 (192.168.1.230)’ can’t be established.

ECDSA key fingerprint is 72:ed:38:4e:5f:35:32:c4:a7:5f:5e:5c:7f:49:1f:11.

Are you sure you want to continue connecting (yes/no)? yes

root@192.168.1.230’s password:

copy corosync auth key

stopping pve-cluster service

backup old database

waiting for quorum…OK

generating node certificates

merge known_hosts file

restart services

successfully added node ‘proxmox02’ to cluster.

Comprobamos si tenemos correctamente los nodos unidos al cluster:

bash
root@proxmox:~# pvecm status

Quorum information

——————

Date:             Tue Mar 29 11:37:53 2016

Quorum provider:  corosync_votequorum

Nodes:            3

Node ID:          0x00000001

Ring ID:          32

Quorate:          Yes
Votequorum information

———————-

Expected votes:   3

Highest expected: 3

Total votes:      3

Quorum:           2

Flags:            Quorate
Membership information

———————-

Nodeid      Votes Name

0x00000001          1 192.168.1.230 (local)

0x00000003          1 192.168.1.231

0x00000002          1 192.168.1.232

Una vez unidos, accedemos mediante nuestro navegador web a la interfaz gráfica y comprobamos que están unidos nuestros nodos.

Captura de pantalla de 2016-03-29 11:33:20

Configuración de NFS

Para configurar el servicio compartido debemos ir a Almacenamiento > Añadir > NFS

Captura de pantalla de 2016-03-29 12:38:13

ID: Nombre del recurso compartido en nuestro cluster PROXMOX

Servidor: Servidor NFS (openfiler)

Export: Recurso compartido a exportar

Contenido: Para que vamos a emplear este recurso

Nodos: los nodos que vamos a incluir.

Captura de pantalla de 2016-03-29 12:39:45

Una ves configurado comprobamos que monta correctamente en todos los nodos el file system

Captura de pantalla de 2016-03-29 12:40:13

bash
root@proxmox01:~# df -h

Filesystem                                                                       Size  Used Avail Use% Mounted on

udev                                                                              10M     0   10M   0% /dev

tmpfs                                                                            401M  5.7M  395M   2% /run

/dev/dm-0                                                                        3.9G  1.1G  2.6G  31% /

tmpfs                                                                           1001M   60M  941M   6% /dev/shm

tmpfs                                                                            5.0M     0  5.0M   0% /run/lock

tmpfs                                                                           1001M     0 1001M   0% /sys/fs/cgroup

/dev/mapper/pve-data                                                             8.4G   20M  8.4G   1% /var/lib/vz

tmpfs                                                                            100K     0  100K   0% /run/lxcfs/controllers

cgmfs                                                                            100K     0  100K   0% /run/cgmanager/fs

/dev/fuse                                                                         30M   24K   30M   1% /etc/pve

192.168.1.220:/mnt/vol_cluster_proxmox/vol_cluster_proxmox/vol_cluster_proxmox/  108G   33M  108G   1% /mnt/pve/nfsproxmox

Habilitar High Availbility a una VM y un CT

primero debemos añadir la VM o CT

Sintaxis:

ha-manager add vm:<ID DEL VM/CT>

bash
root@proxmox:/etc/pve# ha-manager add vm:100

root@proxmox:/etc/pve# ha-manager add vm:101

Una vez añadido debemos habilitarlo

Sintaxis:

ha-manager enable vm:<ID DEL VM/CT>

bash
root@proxmox:/etc/pve# ha-manager enable vm:100

root@proxmox:/etc/pve# ha-manager enable vm:101

Si accedemos mediante nuestro navegador y seleccionamos el servidor podemos observar en la pestaña Resumen si esta habilitado correctamente.

Captura de pantalla de 2016-03-30 11:41:34

Pruebas de High-availability

Vamos a proceder a apagar el nodo proxmox01 y comprobar si detecta su caída y procede a migrar el VM 100 (rredorbita01)

Si todo sale correctamente, como veis en el log, debería detectar la caída del nodo y migrar hacia otro nodo.

Captura de pantalla de 2016-03-30 11:51:51

Un saludo.

:wq!

Comentarios