Ir al contenido principal

Configurar glusterfs en Centos 7

En el siguiente laboratorio se usan 2 maquinas virtuales (server1 y server2)con dos discos duros, 1 para el sistema Centos 7 y otro (sdb) para el sistema de archivos en Cluster. A menos que se especifique lo contrario los comandos se deben ejecutar en ambas máquinas.

Instalar el repositorio de Gluster6 disponible en yum.
#yum install centos-release-gluster

Para el sistema de archivos de la partición sdb1 usaremos el filesystem XFS.
# mkfs.xfs -i size=512 /dev/sdb1

Crear carpeta donde estará montado la partición Gluster.
# mkdir -p /mnt/part1

Hacemos permanente el mount de la partición recien creada en /etc/fstab añadiendo las lineas.
/dev/sdb1 /mnt/part1 xfs defaults 1 2

y remontamos todo el sistema de archivos.
#mount -a

Instalar Glusterfs-server
#yum install glusterfs-server

Habilitar servicio glusterd al iniciar el sistema e iniciarlo.
# systemctl enable glusterd
# systemctl start glusterd

Verificar que el servicio esté arriba
# systemctl status glusterd

Editar /etc/hosts y agregar server1 y server2 con sus ips 192.168.1.7 y 192.168.1.50 respectivamente.

Agregar nodos al gluster server, desde el server1
#gluster peer probe server2

Ahora desde el server2
#gluster peer probe server1

Creamos el brick a volumen a compartir
#mkdir /mnt/part1/gv0

Agregamos volumen a compartir en cualquiera de los dos equipos.
#gluster volume create gv0 replica 2 server1:/mnt/part1/gv0 server2:/mnt/part1/gv0

Por ultimo iniciamos volumen desde cualquier server.
# gluster volume start gv0

Verificar el estado de gluster.
#gluster volume info
Volume Name: gv0
Type: Replicate
Volume ID: b27999de-9988-4581-b33a-23b977bc1d0b
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: server1:/mnt/part1/gv0
Brick2: server2:/mnt/part1/gv0
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off

Para que Gluster sincronize la información de manera activa entre las particiones, debe montarse la partición usando el filesystem glusterfs. Si se va montar sea en server1 o server2 solo debe ejecutarse
#mount -t glusterfs server1:/gv0 /mnt/glusterfs

Y copiar cualquier archivo a /mnt/glusterfs. De copiarla directamente en /mnt/part1 de cualquiera de los nodos no se replica.

En caso de que la particion se deseé montar en otro equipo cliente diferente a los server, debe instalarse el repostorio gluster6.
#yum install centos-release-gluster

Luego instalar herramientas de filesystem.
# yum -y install glusterfs-fuse

Hasta acá, podrá usar los dos servidores y replicar. Si desea agrega un tercer servidor llamado server3 con ip 192.168.1.10 Seguimos los siguientes pasos (esta vez solo en el server3)

Instalar repositorio gluser6
#yum install centos-release-gluster

Preparar la partición sdb1 con el filesystem XFS.
# mkfs.xfs -i size=512 /dev/sdb1

Crear carpeta con el volumen a compartir por Gluster
# mkdir -p /mnt/part1

Hacemos permanente el mount de la partición recien creada en /etc/fstab añadiendo las lineas.
/dev/sdb1 /mnt/part1 xfs defaults 1 2

Remontar las particiones.
#mount -a

Instalar gluster server
#yum install glusterfs-server

Habilitar servicio glusterd al iniciar el sistema e iniciarlo.
# systemctl enable glusterd
# systemctl start glusterd

Editar /etc/hosts de los tres server del cluster y  agergar resolución de nombre server3 con su ip 192.168.1.10

Creamos el volumen a compartir
#mkdir /mnt/part1/gv0

Desde server1 agregamos nuevo server
#gluster peer probe server3

Se agrega el volumen del cluster al nuevo server en modo replica.
#gluster volume add-brick  gv0 replica 3 server3:/mnt/part1/gv0

En caso de querer desmontar/borrarl un volumen (ej gv0)

#gluster volume stop gv0
#gluster volume delete gv0
#rm -rf /mnt/part1/gv0

Cuando existe una falla y el volumen no se está replicando a los nodos del Cluster se realiza un forzado con heal.
#gluster volume heal gv0

O de manera persistente una vez.
#gluster volume heal gv0 full

Ver estado de sincronización de volumenes, "number of entries" debe ser 0
#gluster volume heal gv0 info




To monitor self-heal completion status exeucte : "gluster volume heal
datastore1 info". The number of entries under each brick should be 0.
When the number of entries count becomes 0 the self-heal is completed.


Comentarios

Entradas populares de este blog

Vtiger clic-to-call Asterisk

Cześć, Jak Sie Masz ludzie?. He vuelto con un nuevo manual muy sencillo de integración Asterisk con el popular Vtiger a traves de un conector en Java. Dependencias previas, bueno tener Asterisk 11 y Vtiger 7.3 funcionando, si las tienen, sin mas preambulos manos a la obra. Instalar dependencias.  #yum -y install java-11-openjdk-devel Descargar conector #cd /usr/src/ # mkdir VtigerAsteriskConnector_1.4.2 #cd VtigerAsteriskConnector_1.4.2 #wget https://sourceforge.net/projects/salesplatform/files/addons/SPAsteriskConnector-1.4.2.zip/download  -O SPAsteriskConnector-1.4.2.zip # unzip SPAsteriskConnector-1.4.2.zip Editar la configuración del archivo conf/SPVtigerAsteriskConnector.properties los siguientes parametros: AsteriskUsername   = vtigerclient1 AsteriskPassword   = vtiger2020 VtigerSecretKey = vtiger2020* Agregar a manager.conf [vtigerclient1] secret = vtiger2020 deny=0.0.0.0/0.0.0.0 permit=0.0.0.0/0.0.0.0 read = system,call,log,verbo...

Instalar Queuemetrics desde 0.

Cześć. Queuemetrics a pesar de estar casi personalizada su  instalación a Centos, también puede instalarse en otros sistemas operativos, de hecho en cualquier Linux podría hacerse. A continuación describo los pasos para hacerlo. En este demo se usó Suse. Descargar los siguientes paquetes: - Queuemetrics(obviamente XD)      link http://queuemetrics.loway.it/download.jsp      formato tar.gz - Mysql connector      link https://dev.mysql.com/downloads/connector/j/      formato  "platform independent" tar.gz      debe registrarse previamente. - Tomcat      link http://tomcat.apache.org/      formato tar.gz      en este manual se instaló la version 8.5.37 - JDK      link https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html      formato tar.gz      version linux x64 In...

Asterisk con WebRTC, TLS, libsrtp

  Cześć !! En esta ocasión vamos a explicar cómo configurar Asterisk para que desde un teléfono web podamos sacar y recibir llamadas. Se usará los siguientes componentes de Asterisk: libsrtp tls Asterisk module http Antes que nada debemos tener un teléfono web(obviamente), en el laboratorio vamos a usar Sipml5 en el siguiente link : https://www.doubango.org/sipml5/call.htm El siguiente paso es instalar libsrtp del enlace: https://github.com/cisco/libsrtp . #git clone https://github.com/cisco/libsrtp.git #cd libsrtp #./configure #make && make install Luego verificamos tener los siguientes módulos activos para compilar en menuconfig de Asterisk: res_crypto res_http_websocket res_srtp Comunmente si res_crypto no está selecionable, le falta la dependencia openssl-devel o su equivalente dependiendo del sistema que tengan. Cuando estemos seguros que están cargados en Asterisk continuamos con la instalación de los certificados locales(Si usa Lets'encrypt omitir la generación de c...