ANTECEDENTES
Eu tenho um cluster do Windows (2016) com quatro nós (3 NICs cada). Quando tento reiniciar qualquer servidor host do cluster, todo o cluster é interrompido e outros nós estão falhando aleatoriamente.
Quando eu registrei um caso com a Microsoft, eles disseram que é por causa das rotas obsoletas na tabela NETFT que não são apagadas durante a reinicialização e me deram uma solução alternativa para reiniciar todos os nós para abrir o cluster.
Sinto que levará muito tempo até que eu reinicie meus servidores físicos e atualize meu cluster. Estou com o SLA que pode violar.
Existe alguma solução útil?
RESPOSTA DA MICROSOFT
De cluster.log
, o problema parece relacionado com as rotas antigas em NetFT.sys
.
Análise de Log
(Abaixo os erros mantidos relatando em todos os 4 nós do cluster, tomando uma dessas ocorrências como um exemplo:)
HOST1
2018/09/24-18:25:01.067 INFO [FTI][Initiator] This node (1) is initiator
2018/09/24-18:25:01.067 WARN [FTI][Initiator] 'Ignoring duplicate connection: usable route already exists'
2018/09/24-18:25:01.067 INFO [CHANNEL 192.1.0.172:~3343~] graceful close, status (of previous failure, may not indicate problem) (0)
2018/09/24-18:25:01.068 WARN cxl::ConnectWorker::operator (): GracefulClose(1226)' because of 'channel to remote endpoint 192.1.0.172:~3343~ is closed'
HOST2
2018/09/24-18:25:01.095 INFO [FTI][Initiator] This node (2) is initiator
2018/09/24-18:25:01.095 WARN [FTI][Initiator] 'Ignoring duplicate connection: usable route already exists'
2018/09/24-18:25:01.095 INFO [CHANNEL 192.1.0.172:~3343~] graceful close, status (of previous failure, may not indicate problem) (0)
2018/09/24-18:25:01.096 WARN cxl::ConnectWorker::operator (): GracefulClose(1226)' because of 'channel to remote endpoint 192.1.0.172:~3343~ is closed'
HOST3
2018/09/24-18:25:01.057 INFO [FTI][Follower] This node (4) is not the initiator
2018/09/24-18:25:01.057 DBG [FTI] Stream already exists to node 1: false
2018/09/24-18:25:01.057 DBG [CHANNEL 192.1.0.170:~62824~] Close().
2018/09/24-18:25:01.057 INFO [CHANNEL 192.1.0.170:~62824~] graceful close, status (of previous failure, may not indicate problem) (0)
2018/09/24-18:25:01.057 INFO [CORE] Node 4: Clearing cookie [GUID]
2018/09/24-18:25:01.057 DBG [CHANNEL 192.1.0.170:~62824~] Not closing handle because it is invalid.
2018/09/24-18:25:01.058 WARN mscs::ListenerWorker::operator (): GracefulClose(1226)' because of 'channel to remote endpoint 192.1.0.170:~62824~ is closed'
HOST4
2018/09/24-18:25:01.087 INFO [FTI][Initiator] This node (3) is initiator
2018/09/24-18:25:01.087 WARN [FTI][Initiator] 'Ignoring duplicate connection: usable route already exists'
2018/09/24-18:25:01.087 INFO [CHANNEL 192.1.0.172:~3343~] graceful close, status (of previous failure, may not indicate problem) (0)
2018/09/24-18:25:01.088 WARN cxl::ConnectWorker::operator (): GracefulClose(1226)' because of 'channel to remote endpoint 192.1.0.172:~3343~ is closed'
Essas rotas obsoletas são responsáveis por os nós se unirem ao cluster e é por isso que o nó não conseguiu se associar ao cluster.
Para o NetFT, como a rede do cluster, qualquer inesperado removido da associação, a tabela de rotas do NetFT não está sendo limpa. A conexão permaneceu.
Quando o nó iniciador tentou criar uma nova conexão, como a tabela de roteamento ainda tinha a antiga, os nós finalmente falharam em se unir ao cluster. O NETFT é um driver de nível do kernel e é por isso que precisamos reinicializar os nós para atualizar a tabela NETFT.
Plano de ação
Por favor, tente reiniciar todos os nós do cluster ao mesmo tempo para remover as rotas antigas.