ScaleIO: Solução de problemas de erros MDM_Disconnect
Summary: A propriedade do MDM (Primary Metadata Manager) se move entre servidores MDM com frequência.
Symptoms
O seguinte evento é exibido ao usar a ferramenta showevents.py:
6956 2017-07-06 18:21:05.803 MDM_CLUSTER_LOST_CONNECTION WARNING The MDM, ID 27fea9a11c073e82, lost connection
O seguinte é exibido nos logs trc do servidor MDM secundário:
06/07 18:21:05.486947 0x7ffbc89feeb0:netPath_IsKaNeeded:01858: :: Connected Live CLIENT path 0x7ffb9400a060 of portal 0x7ffb94003780 net 0x7ffbac0044b0 socket 17 inflights 0 didn't receive message for 3 iterations from 10.xxx.xxx.xxx:9011. Marking as down
Cause
As desconexões do MDM geralmente ocorrem quando os MDMs secundários ou o tiebreaker não viram um keep alive dentro do período de tempo limite de 500 milissegundos.
Resolution
Verifique se há pacotes descartados nas placas de interface de rede (NICs) nos servidores MDM e TB:
[root@scaleio-1 ~]# ifconfig ens192 ens192: flags=4163 mtu 1500 inet 10.xxx.xxx.xxx netmask 255.xxx.xxx.0 broadcast 10.xxx.xxx.xxx inet6 fe80::250:56ff:feb7:2a06 prefixlen 64 scopeid 0x20 ether 00:50:56:b7:2a:06 txqueuelen 1000 (Ethernet) RX packets 311779767 bytes 53460032583 (49.7 GiB) RX errors 0 dropped 41 overruns 0 frame 0 TX packets 312147963 bytes 45970694962 (42.8 GiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Além disso, verifique a latência da conexão entre os nós do MDM e o TB usando o comando ping:
[root@scaleio-1 ~]# ping 10.xxx.xxx.xxx PING 10.xxx.xxx.xxx (10.xxx.xxx.xxx) 56(84) bytes of data. 64 bytes from 10.xxx.xxx.xxx: icmp_seq=1 ttl=64 time=0.414 ms 64 bytes from 10.xxx.xxx.xxx: icmp_seq=2 ttl=64 time=0.395 ms 64 bytes from 10.xxx.xxx.xxx: icmp_seq=3 ttl=64 time=0.370 ms 64 bytes from 10.xxx.xxx.xxx: icmp_seq=4 ttl=64 time=0.399 ms 64 bytes from 10.xxx.xxx.xxx: icmp_seq=5 ttl=64 time=0.497 ms 64 bytes from 10.xxx.xxx.xxx: icmp_seq=6 ttl=64 time=0.534 ms
Se a latência variar ou chegar perto de 500 ms, esse pode ser o problema para a desconexão.
Também há motivos que não são de rede para a desconexão do MDM. Se o processo ficar travado ou não estiver recebendo os recursos adequados da CPU, ele não poderá enviar o pacote keepalive em tempo hábil. Verifique o sistema quanto à utilização da CPU usando o comando top.
Em sistemas VMware, a máquina virtual (VM) pode não receber recursos suficientes se o sistema estiver inscrito demais. Você pode verificar se essa é a situação examinando o tempo de prontidão da CPU para a VM.