Ich führe GlusterFS mit 2 Servern (ST0 und ST1) und 1 Client (STC) aus und der Volname ist Rep-Volume.
Ich habe im Internet gesurft und alle Artikel gelesen, in denen erklärt wurde, wie man Montageprobleme behebt, aber leider konnte mir nichts helfen.
Als ich den folgenden Befehl zum ersten Mal verwendete, funktionierte er einwandfrei und ich hatte Schreibzugriff:
$ mount.glusterfs ST0:/rep-volume /mnt/replica/
Aber nach dem Neustart des Clients kann ich ihn nicht erneut mounten. Hier ist das Ergebnis:
$ mount.glusterfs ST0:/rep-volume /mnt/replica/
Mount failed. Please check the log file for more details.
Die Protokolldatei wird unten angezeigt:
$ 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
Hier sind die Gluster-Volumeninformationen zu Server1 (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
Ich wäre sehr dankbar, wenn mir jemand helfen könnte. Danke.
AKTUALISIEREN:
Die Antwort von @FarazX war wirklich hilfreich und hat mein Problem gelöst, aber ich bin immer noch daran interessiert, den Grund herauszufinden, warum dieser Zustand auftrat, während ich dasselbe auf dem Client-Server tat (ohne Erfolg)? Ich habe viele Dinge auf bugzilla.redhat.com gelesen, aber der Grund ist mir immer noch ein wenig unklar.
Antwort1
Ich hatte das gleiche Problem, aber ich habe versucht, die Clients auf denselben Servern zu mounten und es hat perfekt funktioniert.
In Ihrem Fall würde dies durch Ausführen des folgenden Befehls auf ST0 bzw. ST1 erfolgen:
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
und
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
AchtungÜberprüfen Sie Ihre Firewall-Konfiguration und -Regeln.
Ich hoffe, dies kann Ihr Problem lösen.