PowerFlex 3.x 添加 SDC 命令导致 MDM 崩溃和故障切换
Summary:
执行 add SDC 命令 (scli --add_sdc /),将发生 MDM 故障切换。
This article applies to
This article does not apply to
This article is not tied to any specific product.
Not all product versions are identified in this article.
Symptoms
场景
MDM 在“受限模式”下运行。
用户尝试添加 IP 不在已批准的 SDC IP 中的 SDC — 这会强制 MDM 创建新的 SDC 对象。
使用的 SDC 名称是以前已存在的 SDC 名称。
主 MDM 和辅助 MDM 接管上发生 MDM 崩溃。
症状
用户使用 IP 而不是 GUID 运行 add SDC 命令,并收到 stdout 形式的通信错误,例如:
# scli --add_sdc --sdc_ip 123.234.234.201 --sdc_name SDC40 Error: MDM failed command. Status: Communication error
检查 MDM exp.0 文件,可能会观察到下面的崩溃。
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)]
影响
添加 SDC 命令失败 — 不会将 SDC 添加到系统 MDM 故障切换。
Cause
在 VxFlex v3.0 之前,MDM 组件存储所有 SDC 的 IP,即使对于断开连接的 SDC 也是如此。从版本 3.0 及更高版本开始,MDM 组件仅跟踪已连接或已批准的 SDC IP。
作为“add SDC”命令的一部分,用户必须使用其他参数,例如:“SDC IPs”或“SDC GUID”,可选参数为“SDC name”。
发出“add SDC”命令后,MDM 会尝试查找具有这些参数的现有 SDC,在我们的场景中,用户提供了不熟悉的“SDC IP”,因此,由于版本 3.0 中引入的更改,MDM 不熟悉新提供的“SDC IP”,因此 MDM 创建了新的 SDC 对象。
此外,运行命令时使用的“SDC name”参数是现有的 SDC 名称,因此它立即删除了刚刚创建的 SDC 对象,因为 MDM 检测到此名称已在使用中。
一旦 MDM 尝试访问已删除的 SDC 对象,它就会进行断言并进行故障切换。
作为“add SDC”命令的一部分,用户必须使用其他参数,例如:“SDC IPs”或“SDC GUID”,可选参数为“SDC name”。
发出“add SDC”命令后,MDM 会尝试查找具有这些参数的现有 SDC,在我们的场景中,用户提供了不熟悉的“SDC IP”,因此,由于版本 3.0 中引入的更改,MDM 不熟悉新提供的“SDC IP”,因此 MDM 创建了新的 SDC 对象。
此外,运行命令时使用的“SDC name”参数是现有的 SDC 名称,因此它立即删除了刚刚创建的 SDC 对象,因为 MDM 检测到此名称已在使用中。
一旦 MDM 尝试访问已删除的 SDC 对象,它就会进行断言并进行故障切换。
Resolution
PowerFlex 开发团队将在下一版本中解决此问题。
要克服这种情况并成功添加以前连接的 SDC,请使用“SDC GUID”参数而不是“SDC IP”。
例如:
scli --add_sdc --sdc_guid FA4BFBF6-546A-11E8-B40D-0050568D283E
受影响的版本
所有高于 3.0 的版本
已修复问题的版本
PowerFlex 未来版本
Affected Products
ScaleIO, PowerFlex Software, VxFlex Product Family, Ready Node SeriesArticle Properties
Article Number: 000183371
Article Type: Solution
Last Modified: 29 Apr 2025
Version: 3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.