Comando Add SDC do PowerFlex 3.x que causa pane e failover do MDM
Summary:
Depois de executar o comando add SDC (scli --add_sdc /), ocorre o failover do MDM.
Symptoms
Cenário
O MDM está sendo executado no "modo restrito"
O usuário tenta adicionar um SDC com IPs que não existem nos IPs aprovados do SDC, o que força o MDM a criar um novo objeto do SDC.
O nome do SDC usado é do nome do SDC que já existia anteriormente.
A pane do MDM ocorre no MDM principal e na aquisição do MDM secundário.
Sintomas
O usuário executa o comando add SDC usando IPs e não GUID e recebe um erro de comunicação como stdout, por exemplo:
# scli --add_sdc --sdc_ip 123.234.234.201 --sdc_name SDC40 Error: MDM failed command. Status: Communication error
Verificando o arquivo MDM exp.0, a pane abaixo pôde ser observada.
21/12 02:43:26.897784 Panic in file /data/builds/workspace/ScaleIO-Common-Job@2/src/mdm/control/obj_container.c, line 2291, function objContainer_GetObjId, PID 30902.Panic Expression (((void *)0) != (pObjHeader)) && ((pObjHeader)->magic == 0x68cab8db) . /opt/emc/scaleio/mdm/bin/mdm-3.5.1000.175(mosDbg_PanicPrepare+0x13a) [0x9a51ca] /opt/emc/scaleio/mdm/bin/mdm-3.5.1000.175(objContainer_GetObjId+0xe8) [0x981768] /opt/emc/scaleio/mdm/bin/mdm-3.5.1000.175(iniMgr_ApproveInitiator+0x359) [0x8c7fe9] /opt/emc/scaleio/mdm/bin/mdm-3.5.1000.175() [0x562a08] /opt/emc/scaleio/mdm/bin/mdm-3.5.1000.175(netRecvGroup_WaitForWork+0x3dc) [0x7b2cfc] /opt/emc/scaleio/mdm/bin/mdm-3.5.1000.175(netRecvGroup_WaitForWorkLoop+0x18) [0x7b3008] /opt/emc/scaleio/mdm/bin/mdm-3.5.1000.175(mosUmt_StartFunc+0x7a) [0x7fb5da] /lib64/libc.so.6(+0x48140) [0x7ff1b5a8d140] [(nil)]
Impacto
O comando Add SDC falha — o SDC não será adicionado ao failover do MDM do sistema.
Cause
Como parte do comando "add SDC", o usuário precisa usar parâmetros adicionais, como: "SDC IPs" ou "SDC GUID" com um parâmetro opcional "SDC name".
Depois que o comando "add SDC" é emitido, o MDM tenta pesquisar um SDC existente com esses parâmetros. Em nosso cenário, o usuário forneceu um "SDC IPs" desconhecido e, consequentemente, o MDM não está familiarizado com os "SDC IPs" recém-fornecidos devido à alteração introduzida na versão 3.0, portanto, o MDM criou um novo objeto SDC.
Além disso, o parâmetro "SDC name" que foi usado durante a execução do comando era um nome de SDC existente, portanto, ele excluiu imediatamente o objeto SDC que acabou de ser criado, pois o MDM detectou que esse nome já está em uso.
Depois que o MDM tentou acessar o objeto SDC excluído, ele confirmou e ocorreu um failover.
Resolution
A equipe de desenvolvimento do PowerFlex abordará esse problema nas próximas versões.
Para superar esse cenário e adicionar com sucesso os SDCs que foram conectados anteriormente, use o parâmetro "SDC GUID" em vez de "SDC IP".
Por exemplo:
scli --add_sdc --sdc_guid FA4BFBF6-546A-11E8-B40D-0050568D283E
Versões
afetadasTodas as versões superiores à 3.0
Corrigido na versão
Versão futura do PowerFlex