Ubuntu 18.04 Glusterfs-7.0
Я создал том для своего файлового ресурса и запустил его:
sudo gluster volume create NAME replica 3 transport tcp host0:/path0 host1:/path1 host2:/path2
sudo gluster volume start NAME
Затем добавил моим клиентам запись fstab:
host0:NAME /home/mountpoint glusterfs defaults,_netdev 0 0
И установил на моих клиентах:
sudo mount /home/mountpoint
Затем случайным образом, через 1-7 дней, он отключает моих клиентов (может отключать 2 из 3) в основном ночью, но иногда случается и днем. Если я захожу в этот каталог, он говорит:
Transport endpoint is not connected
Чтобы маунт вернулся в онлайн, мне нужно сделать:
sudo umount /home/mountpoint && sudo mount /home/mountpoint
В большинстве случаев это работает. Но иногда он не работает без какой-либо конкретной причины в файле журнала, но говорит, что «кирпичи отключены». Glusterd работает на всех 3 серверах и не аварийно завершил работу:
[2019-12-14 03:49:54.210690] W [socket.c:774:__socket_rwv] 0-launcher-client-2: readv on <IP>:<PORT> failed (No data available)
[2019-12-14 03:49:54.210718] I [MSGID: 114018] [client.c:2347:client_rpc_notify] 0-launcher-client-2: disconnected from launcher-client-2. Client process will keep trying to connect to glusterd until brick's port is available
[2019-12-14 03:49:54.210735] W [MSGID: 108001] [afr-common.c:5653:afr_notify] 0-launcher-replicate-0: Client-quorum is not met
[2019-12-14 03:49:57.271596] E [MSGID: 114058] [client-handshake.c:1456:client_query_portmap_cbk] 0-launcher-client-2: failed to get the port number for remote subvolume. Please run 'gluster volume status' on server to see if brick process is running.
[2019-12-14 03:50:23.647924] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649274: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:50:23.648092] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649275: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:50:46.192371] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649321: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:50:46.192445] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649322: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:50:46.626681] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649323: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:50:46.626769] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649324: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:50:48.254712] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649328: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:50:48.254862] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649329: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:51:02.002344] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649357: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:51:02.002426] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649358: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:51:02.478503] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649362: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:51:02.478566] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649363: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:51:02.870624] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649364: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:51:02.870713] W [fuse-bridge.c:1276:fuse_attr_cbk] 0-glusterfs-fuse: 1649365: STAT() /www => -1 (Transport endpoint is not connected)
[2019-12-14 03:51:13.450634] W [fuse-bridge.c:2837:fuse_readv_cbk] 0-glusterfs-fuse: 1649389: READ => -1 gfid=270fafc1-615a-4686-a0f8-50e17965ba10 fd=0x7f64c002c468 (Transport endpoint is not connected)
[2019-12-14 03:51:13.450702] W [fuse-bridge.c:2837:fuse_readv_cbk] 0-glusterfs-fuse: 1649390: READ => -1 gfid=270fafc1-615a-4686-a0f8-50e17965ba10 fd=0x7f64c002c468 (Transport endpoint is not connected)
[2019-12-14 03:51:13.450717] W [fuse-bridge.c:2837:fuse_readv_cbk] 0-glusterfs-fuse: 1649391: READ => -1 gfid=270fafc1-615a-4686-a0f8-50e17965ba10 fd=0x7f64c002c468 (Transport endpoint is not connected)
[2019-12-14 03:51:13.450807] W [fuse-bridge.c:2837:fuse_readv_cbk] 0-glusterfs-fuse: 1649392: READ => -1 gfid=270fafc1-615a-4686-a0f8-50e17965ba10 fd=0x7f64c002c468 (Transport endpoint is not connected)
[2019-12-14 03:51:13.450906] W [fuse-bridge.c:2837:fuse_readv_cbk] 0-glusterfs-fuse: 1649393: READ => -1 gfid=270fafc1-615a-4686-a0f8-50e17965ba10 fd=0x7f64c002c468 (Transport endpoint is not connected)
И мне нужно перезапустить сам том на сервере:
sudo gluster volume stop NAME && sudo gluster volume start NAME
Теперь это не первый пул серверов с такой проблемой. Раньше у меня была такая же проблема на другом кластере серверов. Решить не удалось, поэтому пришлось отойти от блеска.
Из того, что я могу сказать: - Серверы не теряли соединение во время отключения glusterfs - На серверах нет проблем с жесткими дисками - На серверах не запускаются какие-либо сверхинтенсивные приложения на glusterfs, в основном папка для nginx.
Как я могу это решить? Спасибо.