PowerFlex 3.x: Durante o NDU, o SDS entra em pane e interrompe o upgrade
Summary: Durante o NDU, o SDS pode sofrer uma pane de kernel contínuo.
Symptoms
Um upgrade do VxFlex OS 3.0.x.x para o PowerFlex 3.5.x.x ou 3.6.0.x
Uma pane contínua do kernel do SDS impede que o sistema continue o upgrade.
O processo de SDS continua entrando em pane e reiniciando com o seguinte rastreamento de pilha:
27/07 08:07:25.381223 Panic in file /data/build/workspace/ScaleIO-Common-Job/src/tgt/spef/l2p_sm/l2p_resolver/l2p_resolver_sync_services.c, line 1828, function Resolver_Inter_SyncUnmatchedVto, PID 133106.Panic Expression ALWAYS_ASSERT PANIC_ID_tgt_1588256010820.
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(mosDbg_PanicPrepare+0x13a) [0x93b62a]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(Resolver_Inter_SyncUnmatchedVto+0x69c) [0x643ddc]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(Resolver_Inter_SyncOffsetData+0xd2) [0x644082]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(Resolver_SyncOffset+0x3e6) [0x6446f6]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(Resolver_Sync+0x1e4) [0x645c54]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(L2PGateway_Inter_Sync+0x59) [0x6542d9]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(L2PGateway_Inter_UpdateRamCopyEx+0x163) [0x901ba3]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(L2PGateway_Inter_Update+0x4f7) [0x9060f7]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(L2PGateway_Sync+0x64) [0x9073d4]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(feIo_L2PGatewayUpdate+0x3d8) [0x90cf98]
Cause
Durante uma recriação reversa do sistema, ao sair do modo de manutenção instantânea (IMM), uma mensagem de sincronização de dados incorreta é enviada e recebida nos SDSs primário (PRI) e secundário (SEC). Assim, o SEC SDS reinicia o serviço abruptamente para evitar possível inconsistência de dados.
É um cenário raro durante o IMM em que um comando de gravação com falha IO pode levar falsamente a uma verificação de sanidade interna (verificação interna da integridade dos dados que causa a falha do serviço SDS) durante a reconstrução depois que o Exit IMM for concluído. A E/S do comando de gravação com falha ocorre antes de Enter IMM e, durante o IMM, outra E/S foi enviada para um deslocamento próximo no mesmo conjunto de dados.
Resolution
Upgrade automatizado usando o gateway
- Interrompa o upgrade usando a interface do usuário do gateway.
- Remova o SDS com falha do cluster e, em seguida, adicione-o novamente.
- Reinicie o upgrade na interface do usuário do gateway de IM e marque a caixa de seleção "Allow upgrade even when already in Upgrade state" - o upgrade deve recomeçar e prosseguir com componentes que ainda não receberam upgrade:
Upgrade manual
Opção #1
- Se o mesmo dispositivo falhar em cada uma das ocorrências, esse único dispositivo ficará off-line. Caso contrário, remova todos os dispositivos SDS do SDS.
- Aguarde a conclusão da recriação.
- Depois de removido, faça upgrade do SDS e adicione-o novamente ao cluster.
- Remova o próximo SDS que deve receber upgrade do cluster, o que acionará um rebalanceamento.
- Depois de removido, faça upgrade do SDS e adicione-o novamente ao cluster.
- Permita que o rebalanceamento continue até que o sistema tenha capacidade suficiente para remover o próximo SDS que deve receber upgrade - repita até que todos os SDSs recebam upgrade.
Opção #2
Use o PMM (Protected Maintenance Mode, modo de manutenção protegida) em vez do IMM para criar uma terceira cópia completa. O problema não deve acontecer com o PMM, por exemplo, o loop de travamento do serviço acontece porque o SDS trava durante a recriação, volta e repete. Uma saída para isso é remover o SDS que está travando por um período longo o suficiente para que o MDM instrua uma reconstrução para frente em vez de para trás. Depois que o conjunto de dados problemático for reconstruído, o SDS poderá ser trazido de volta com sucesso.
Versões afetadas:
VxFlex OS 3.0.x.x
PowerFlex 3.5.x.x
PowerFlex 3.6.0.x-3.6.1.x
Corrigido na versão:
PowerFlex 3.6.2