Volumen replicado de GlusterFS: problema de montaje

Volumen replicado de GlusterFS: problema de montaje

Estoy ejecutando GlusterFS usando 2 servidores (ST0 y ST1) y 1 cliente (STC), y el nombre del volumen es rep-volume.

Navegué por la red y leí todos los artículos que explicaban cómo solucionar problemas de montaje, pero desafortunadamente nada pudo ayudarme.

La primera vez que utilicé el siguiente comando funcionó perfectamente y tenía acceso de escritura:

$ mount.glusterfs ST0:/rep-volume /mnt/replica/

Pero después de reiniciar el cliente, no puedo volver a montarlo, aquí está el resultado:

$ mount.glusterfs ST0:/rep-volume /mnt/replica/
Mount failed. Please check the log file for more details.

El archivo de registro se muestra a continuación:

$ cat /var/log/glusterfs/mnt-replica.log 

[2016-09-25 04:54:12.438020] I [MSGID: 100030] [glusterfsd.c:2408:main] 0-/usr/sbin/glusterfs: Started running /usr/sbin/glusterfs version 3.8.4 (args: /usr/sbin/glusterfs --volfile-server=ST0 --volfile-id=/rep-volume /mnt/replica)
[2016-09-25 04:54:12.444256] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 1
[2016-09-25 04:54:12.449300] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 2
[2016-09-25 04:54:12.449704] I [MSGID: 114020] [client.c:2356:notify] 0-rep-volume-client-0: parent translators are ready, attempting connect on transport
[2016-09-25 04:54:12.451504] I [MSGID: 114020] [client.c:2356:notify] 0-rep-volume-client-1: parent translators are ready, attempting connect on transport
[2016-09-25 04:54:12.451861] I [rpc-clnt.c:1947:rpc_clnt_reconfig] 0-rep-volume-client-0: changing port to 49152 (from 0)
Final graph:
+------------------------------------------------------------------------------+
  1: volume rep-volume-client-0
  2:     type protocol/client
  3:     option ping-timeout 42
  4:     option remote-host ST0
  5:     option remote-subvolume /replica1
  6:     option transport-type socket
  7:     option transport.address-family inet
  8:     option send-gids true
  9: end-volume
 10:  
 11: volume rep-volume-client-1
 12:     type protocol/client
 13:     option ping-timeout 42
 14:     option remote-host ST1
 15:     option remote-subvolume /replica2
 16:     option transport-type socket
 17:     option transport.address-family inet
 18:     option send-gids true
 19: end-volume
 20:  
 21: volume rep-volume-replicate-0
 22:     type cluster/replicate
 23:     subvolumes rep-volume-client-0 rep-volume-client-1
 24: end-volume
 25:  
 26: volume rep-volume-dht
 27:     type cluster/distribute
 28:     option lock-migration off
 29:     subvolumes rep-volume-replicate-0
 30: end-volume
 31:  
 32: volume rep-volume-write-behind
 33:     type performance/write-behind
 34:     subvolumes rep-volume-dht
 35: end-volume
 36:  
 37: volume rep-volume-read-ahead
 38:     type performance/read-ahead
 39:     subvolumes rep-volume-write-behind
 40: end-volume
 41:  
 42: volume rep-volume-readdir-ahead
 43:     type performance/readdir-ahead
 44:     subvolumes rep-volume-read-ahead
 45: end-volume
 46:  
 47: volume rep-volume-io-cache
 48:     type performance/io-cache
 49:     subvolumes rep-volume-readdir-ahead
 50: end-volume
 51:  
 52: volume rep-volume-quick-read
 53:     type performance/quick-read
 54:     subvolumes rep-volume-io-cache
 55: end-volume
 56:  
 57: volume rep-volume-open-behind
 58:     type performance/open-behind
 59:     subvolumes rep-volume-quick-read
 60: end-volume
 61:  
 62: volume rep-volume-md-cache
 63:     type performance/md-cache
 64:     subvolumes rep-volume-open-behind
 65: end-volume
 66:  
 67: volume rep-volume
 68:     type debug/io-stats
 69:     option log-level INFO
 70:     option latency-measurement off
 71:     option count-fop-hits off
 72:     subvolumes rep-volume-md-cache
 73: end-volume
 74:  
 75: volume meta-autoload
 76:     type meta
 77:     subvolumes rep-volume
 78: end-volume
 79:  
+------------------------------------------------------------------------------+
[2016-09-25 04:54:12.453806] I [rpc-clnt.c:1947:rpc_clnt_reconfig] 0-rep-volume-client-1: changing port to 49152 (from 0)
[2016-09-25 04:54:12.455009] I [MSGID: 114057] [client-handshake.c:1446:select_server_supported_programs] 0-rep-volume-client-0: Using Program GlusterFS 3.3, Num (1298437), Version (330)
[2016-09-25 04:54:12.455225] W [MSGID: 114043] [client-handshake.c:1111:client_setvolume_cbk] 0-rep-volume-client-0: failed to set the volume [Permission denied]
[2016-09-25 04:54:12.455239] W [MSGID: 114007] [client-handshake.c:1140:client_setvolume_cbk] 0-rep-volume-client-0: failed to get 'process-uuid' from reply dict [Invalid argument]
[2016-09-25 04:54:12.455243] E [MSGID: 114044] [client-handshake.c:1146:client_setvolume_cbk] 0-rep-volume-client-0: SETVOLUME on remote-host failed [Permission denied]
[2016-09-25 04:54:12.455256] I [MSGID: 114049] [client-handshake.c:1249:client_setvolume_cbk] 0-rep-volume-client-0: sending AUTH_FAILED event
[2016-09-25 04:54:12.455270] E [fuse-bridge.c:5318:notify] 0-fuse: Server authenication failed. Shutting down.
[2016-09-25 04:54:12.455278] I [fuse-bridge.c:5793:fini] 0-fuse: Unmounting '/mnt/replica'.
[2016-09-25 04:54:12.456149] W [glusterfsd.c:1286:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f039192adc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f0392fbec45] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f0392fbeabb] ) 0-: received signum (15), shutting down

Aquí está la información del volumen de gluster en el Servidor1 (ST0):

ST0: ~ root # gluster volume info
 
Volume Name: rep-volume
Type: Replicate
Volume ID: 566324fc-668b-48cb-a3ee-0f9830cb03e0
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: ST0:/replica1
Brick2: ST1:/replica2
Options Reconfigured:
nfs.disable: on
performance.readdir-ahead: on
transport.address-family: inet
auth.allow: STC

Estaré muy agradecido si alguien puede ayudarme. Gracias.

ACTUALIZAR:

La respuesta que proporcionó @FarazX fue realmente útil y resolvió mi problema, pero todavía estoy interesado en encontrar la razón por la cual esta condición funcionó mientras hacía lo mismo en el servidor del Cliente (sin éxito). Leí muchas cosas en bugzilla.redhat.com pero el motivo todavía me resulta un poco vago.

Respuesta1

Tuve el mismo problema, pero intenté montar los clientes en los mismos servidores y funcionó perfectamente.

En tu caso se haría ejecutando el siguiente comando en ST0 y ST1 respectivamente:

ST0: ~ root # mkdir /mnt/replica
ST0: ~ root # mount.glusterfs ST0:/rep-volume /mnt/replica/
ST0: ~ root # echo 'ST0:/rep-volume      /mnt/replica           glusterfs       _netdev,fetch-attempts=10       0 0' >> /etc/fstab

&

ST1: ~ root # mkdir /mnt/replica
ST1: ~ root # mount.glusterfs ST1:/rep-volume /mnt/replica/
ST1: ~ root # echo 'ST1:/rep-volume      /mnt/replica           glusterfs       _netdev,fetch-attempts=10       0 0' >> /etc/fstab

NÓTESE BIENVerifique la configuración y las reglas de su firewall.

Espero que esto pueda resolver tu problema.

información relacionada