PowerScale: Desconexão intermitente para IPs dinâmicos de nó do PowerScale
Summary: Este artigo descreve a desconexão intermitente dos IPs dinâmicos dos nós do PowerScale durante a reinicialização contínua ou o upgrade. Isso acontece devido a entradas inválidas (antigas) do protocolo de resolução de endereços (ARP) no client. ...
Symptoms
Durante uma reinicialização ou upgrade contínuo, alguns clients na mesma sub-rede do cluster do PowerScale podem se desconectar dos IPs dinâmicos do PowerScale. Somente os clients na mesma sub-rede com o cluster do Isilon têm o problema. Os clients não podem nem mesmo fazer ping nos IPs dinâmicos com o problema. Isso também pode acontecer com os outros nós no mesmo cluster do Isilon. Alguns nós do cluster não podem fazer ping de nenhum IP dinâmico em outros nós. A verificação da tabela ARP em uma máquina client que não pode fazer ping em um IP dinâmico mostra uma entrada inválida. A tabela ARP ainda tem a entrada antiga que mapeia o IP dinâmico para o endereço MAC errado.
Por exemplo, o nó 11 foi reinicializado e o IP dinâmico 10.x.x.43 foi movido para o nó 10 para evitar tempo de inatividade. Em seguida, o nó 1 começou a falhar ao fazer ping no IP.
Depois de analisar a tabela ARP no nó 1, a entrada do nó 11 era inválida. Ele mostrou que o IP 10.x.x.43 ainda estava mapeado para o MAC ec:0d:xx:xx:c5:00 do nó 11.
node-1# arp -a ? (10.x.x.43) at ec:0d:xx:xx:c5:00 on mlxen1 expires in 232 seconds [ethernet]
O endereço MAC do nó 11 é ec:0d:xx:xx:c5:00.
node-11: mlxen0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 node-11: options=d07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWFILTER,VLAN_HWTSO,LINKSTATE> node-11: ether ec:0d:xx:xx:c5:00 node-11: inet 10.x.x.43 netmask 0xffffff00 broadcast 10.x.x.255 zone 1 node-11: nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> node-11: media: Ethernet autoselect (40Gbase-CR4 <full-duplex,rxpause,txpause>) node-11: status: active
Quando o nó 11 é reinicializado, o IP 10.x.x.43 foi movido para o nó 10.
2018-11-15T16:06:45+09:00 <3.6> node-1 isi_smartconnect[5222]: Assigned unused IP 10.x.x.43 to { key=10,40gige-1 addr_idx=0 lni=40gige-1 nic=mlxen0[Up] vlan_nic=<NULL> addrs={ 10.x.x.43 } } . 2018-11-15T16:06:45+09:00 <3.6> node-1 isi_smartconnect[5222]: FLXAPI: OP: FLXAPI_OP_CURRENT_STATE Pool[2:1:1:1]: subnet0 zones: filer25.xxx.com IP[18]: 10.x.x.21:up IP[18]: 10.x.x.54:up IP[17]: 10.x.x.32:up IP[17]: 10.x.x.56:up IP[17]: 10.x.x.30:up IP[16]: 10.x.x.37:up IP[16]: 10.x.x.39:up IP[16]: 10.x.x.45:up IP[15]: 10.x.x.29:up IP[15]: 10.x.x.33:up IP[15]: 10.x.x.49:up IP[14]: 10.x.x.31:up IP[14]: 10.x.x.34:up IP[13]: 10.x.x.38:up IP[13]: 10.x.x.40:up IP[13]: 10.x.x.46:up IP[12]: 10.x.x.41:up IP[12]: 10.x.x.36:up IP[10]: 10.x.x.53:up IP[10]: 10.x.x.43:up IP[9]: 10.x.x.44:up IP[9]: 10.x.x.28:up IP[8]: 10.x.x.51:up IP[8]: 10.x.x.26:up IP[7]: 10.x.x.55:up IP[7]: 10.x.x.35:up IP[6]: 10.x.x.42:up IP[6]: 10.x.x.24:up IP[5]: 10.x.x.52:up IP[5]: 10.x.x.25:up IP[4]: 10.x.x.48:up IP[4]: 10.x.x.50:up IP[3]: 10.x.x.22:up IP[3]: 10.x.x.27:up IP[2]: 10.x.x.47:up IP[2]: 10.x.x.23:up
O endereço MAC para o nó 10 é ec:0d:xx:xx:c0:80.
node-10: mlxen0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 node-10: options=d07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWFILTER,VLAN_HWTSO,LINKSTATE> node-10: ether ec:0d:xx:xx:c0:80 node-10: inet 10.x.x.43 netmask 0xffffff00 broadcast 10.x.x.255 zone 1 node-10: nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> node-10: media: Ethernet autoselect (40Gbase-CR4 <full-duplex,rxpause,txpause>) node-10: status: active
A entrada ARP no nó 1 foi mapeada para um endereço MAC inválido (antigo). Isso faz com que qualquer client ou nó não consiga conectar o endereço IP até que seja corrigido.
Cause
De acordo com as "Considerações do projeto de rede do PowerScale https://infohub.delltechnologies.com/es-es/t/dell-powerscale-network-design-considerations/
"Uma zona do SmartConnect com alocação dinâmica para endereços IP move imediatamente de forma quente o endereço IP no nó com falha para um dos outros três nós no cluster. Ele envia várias solicitações ARP (Address Resolution Protocols, protocolos de resolução de endereço) gratuitos para o switch conectado, para que a E/S do client continue sem interrupções."
Os hosts na mesma sub-rede não receberam pacotes de ARP gratuito (GARP) do nó 10 depois que o endereço IP foi atribuído. Portanto, a entrada ARP não foi atualizada corretamente nos hosts, o que resulta em um problema de conexão de rede. A causa é que as transmissões ARP são descartadas ou bloqueadas no nível da rede. A Cisco Application Centric Infrastructure (ACI) contribuiu para esses problemas devido à configuração incorreta.
Resolution
Solução:
Como uma solução de longo prazo, a "inundação gratuita de ARP" deve ser ativada no lado do switch.
Os artigos de conhecimento a seguir destinam-se a descrever (em detalhes) recomendações cumulativas com o Cisco ACI.
- [000032487] Detecção de IP não autorizado em switches de rede Cisco ACI
- [000028116] Os clients se desconectam depois que o endereço IP é movimentado e o Cisco ACI está em uso
Solução temporária:
Como solução temporária, a entrada ARP obsoleta poderia ser excluída com o comando "arp -d" nos hosts afetados. Os hosts transmitem uma nova solicitação de resolução ARP para o IP e atualizam suas tabelas ARP com o endereço MAC atualizado.
Additional Information
Esse problema pode ser solucionado ainda mais com uma captura de pacotes em todos os PowerScale Nodes e máquinas client. Isso prova que o nó recebeu os pacotes GARP conforme projetado. No entanto, o host com problema não recebeu pacotes GARP.
Quando o IP 10.x.x.43 foi movido para o nó 10, o nó 10 realmente enviou pacotes GARP relacionados ao IP 10.x.x.43.
[~]$ tshark -t ad -r node-10_mlxen0.pcap | grep ARP | grep Gratui 3781 2018-11-15 16:06:47.711230 ec:0d:xx:xx:c0:80 Broadcast ARP 42 Gratuitous ARP for 10.x.x.43 (Request) 3783 2018-11-15 16:06:47.753820 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3784 2018-11-15 16:06:47.753841 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3791 2018-11-15 16:06:48.823611 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3792 2018-11-15 16:06:48.823633 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3799 2018-11-15 16:06:49.835902 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3800 2018-11-15 16:06:49.835926 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3807 2018-11-15 16:06:50.933966 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3808 2018-11-15 16:06:50.934000 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3815 2018-11-15 16:06:52.034005 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3816 2018-11-15 16:06:52.034048 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3824 2018-11-15 16:06:53.084292 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3825 2018-11-15 16:06:53.084343 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3832 2018-11-15 16:06:54.134719 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3833 2018-11-15 16:06:54.134764 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3840 2018-11-15 16:06:55.222125 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3841 2018-11-15 16:06:55.222171 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3848 2018-11-15 16:06:56.283997 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3849 2018-11-15 16:06:56.284023 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3856 2018-11-15 16:06:57.370114 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request) 3857 2018-11-15 16:06:57.370142 ec:0d:xx:xx:c0:80 Broadcast ARP 60 Gratuitous ARP for 10.x.x.43 (Request)
A captura de pacotes mostra que o nó 1 não recebeu nenhum pacote GARP em relação à movimentação de IP 10.x.x.43.
[~]$ tshark -t ad -r node-1_mlxen1.pcap | grep -i arp | grep Gratuitous | grep 10.x.x.43 [~]$
A captura de pacotes mostra que o client também não recebeu os pacotes GARP.
[~]$ tshark -t ad -r client.pcap | grep ARP | grep Gratuitous | grep 10.x.x.43 [~]$
Quando os hosts não recebem pacotes GARP, suas entradas da tabela ARP para IP 10.x.x.43 não são atualizadas. Eles ainda estão mapeados para o MAC errado ec:0d:xx:xx:c5:00. Assim, eles não poderiam alcançar o IP 10.x.x.43.