El sábado hice un taller en vivo sobre proxmox en el que enseñé a configurar tanto ceph como glusterfs.
Aquí el vídeo sólo de la parte de la entrevista:
Instalar proxmox es super fácil, pero preparar bien el entorno ya es otra cosa. Al prepararlo cometí un fallo de diseño al reutilitzar configuración antigua.
Tal como dije, se recomienda destinar una red específicamente para la comunicación de los ceph. Así que vamos a ello.
El contenido de mi fichero de configuración de red es el siguiente
# vi /etc/network/interfaces
auto lo
iface lo inet loopback
iface eth0 inet manual
auto vmbr0
iface vmbr0 inet static
address 10.139.39.166/27
gateway 10.139.39.161
bridge_ports eth0.10
bridge_stp off
bridge_fd 0
auto vmbr1
iface vmbr1 inet static
address 172.31.0.11
netmask 255.255.0.0
bridge_ports eth0.1000
bridge_stp off
bridge_fd 0
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
auto vmbr2
iface vmbr2 inet manual
bridge_ports eth0.1001
bridge_stp off
bridge_fd 0
# ceph - glusterfs # dades
iface eth1 inet manual
auto vmbr11
iface vmbr11 inet static
address 192.168.10.1/24
bridge-ports eth1
bridge-stp off
bridge-fd 0
He cambiado los bridge_ports tanto de vmbr1 como de vmbr2 y añadido el bridge vmbr11 sin vlans y con la red 192.168.10.0/24.
He aplicado la configuración correspondiente a cada nodo del cluster y los he reiniciado.
Una vez iniciados de nuevo y comprobado que lleguen los servidores entre ellos por la red 192.168.10.0/24, he ido al fichero de configuración del ceph (/etc/pve/ceph.conf) y he cambiado el parámetro cluster_network
# vi /etc/pve/ceph.conf
[global]
auth_client_required = cephx
auth_cluster_required = cephx
auth_service_required = cephx
cluster_network = 192.168.10.1/24
fsid = a29d0269-a12f-4a57-890b-1b8c7f35c1ab
mon_allow_pool_delete = true
mon_host = 172.31.0.11 172.31.0.12 172.31.0.13
osd_pool_default_min_size = 2
osd_pool_default_size = 3
public_network = 172.31.0.11/16
[client]
keyring = /etc/pve/priv/$cluster.$name.keyring
[mon.planet1A]
public_addr = 172.31.0.11
[mon.planet1B]
public_addr = 172.31.0.12
[mon.planet1C]
public_addr = 172.31.0.13
De este fichero una cosa que no me cuadra es el public_network que pone una IP de un host en lugar de una IP de red. Pero proxmox en su momento lo dejó así, así que así lo dejamos.
He querido pasar inicialmente todo a saco a la 192.168.10.0/24 pero al arrancar no había comunicación entre los monitores y los managers, así que esta parte que corresponde a public_network, la dejo con el rango 172.31.0.0/16. Me he estado peleando un rato y si quieres cambiar también este rango, lo mejor es reinstalar todo y volver a empezar desde 0 (que es lo que voy a hacer y en una tarde me lo saco).
Reiniciamos todos los nodos del cluster, uno a uno y cruzamos los dedos para que todo levante correctamente.
No hace falta recordar que recomiendo hacer esta operación sin carga en los OSD.