PowerFlex:SDS panics due memory allocation failures - mos_AllocPageAlignedOrPanic

摘要: 由于内存分配失败,SDS 进程可能会死机(或持续保持死机状态)。

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

内存不足可能会导致 SDS 主机上出现此问题(即 SVM 内存分配)或由于操作系统配置。

SDS 进程崩溃并显示以下回溯:

01/12 22:26:55.091827 Panic in file /data/build/workspace/ScaleIO-SLES12-2/src/mos/usr/mos_utils.c, line 235, function mos_AllocPageAlignedOrPanic, PID 11191.Panic Expression pMem != ((void *)0) .
/opt/emc/scaleio/sds/bin/sds-2.6.0.133(mosDbg_PanicPrepare+0x11d) [0x4f713d]
/opt/emc/scaleio/sds/bin/sds-2.6.0.133(mos_AllocPageAlignedOrPanic+0x2d) [0x4fa95e]
/opt/emc/scaleio/sds/bin/sds-2.6.0.133(stmp_Allocate+0x110) [0x49c063]
/opt/emc/scaleio/sds/bin/sds-2.6.0.133(phyToothMap_HardenIntern+0x37b) [0x46edcf]
/opt/emc/scaleio/sds/bin/sds-2.6.0.133(phyToothMap_HardenAll+0x39) [0x46f5a3]
/opt/emc/scaleio/sds/bin/sds-2.6.0.133(phyDev_HardenCombArr+0x34) [0x464a31]
/opt/emc/scaleio/sds/bin/sds-2.6.0.133(phyComb_ReadTooth+0x6a) [0x4b2b59]
/opt/emc/scaleio/sds/bin/sds-2.6.0.133(raidMigrate_Start+0x5f0) [0x4bb9e2]
/opt/emc/scaleio/sds/bin/sds-2.6.0.133(raidSyncPool_StartJob+0x1cf) [0x489e7f]
/opt/emc/scaleio/sds/bin/sds-2.6.0.133() [0x50d008]

根据操作系统设置,可能会在消息文件中观察到 OOM(内存不足)错误。

 

影响

此行为可能会触发DATA_DEGRADED/DATA_FAILURE情况。

原因

SDS 主机上的内存不足 在 vSphere 环境中,请检查是否为 SVM 分配了足够的 RAM 以及是否已保留。如果是,请检查操作系统级别的内存配置:

检查 sysctl 内核参数是否过量使用内存:
文件路径 /etc/sysctl.conf
 

# sysctl -a |grep commit
vm.overcommit_memory = 2 (default is 0)
vm.overcommit_ratio = 50 (default is 50)

 

解决方案

这不是 PowerFlex 问题。PowerFlex 按设计方式工作。

 

要检查和/或修改 vm.overcommit 设置请遵循以下步骤:

1.使用 SSH 以 root

用户身份登录 SDS2。在该服务器上运行 

cat /etc/sysctl.conf | grep "vm.overcommit"


例如:

[root@sds-node logs]# cat /etc/sysctl.conf | grep "vm.overcommit"
vm.overcommit_memory = 2
vm.overcommit_ratio = 50

3、运行以下命令

sed -i 's/vm\.overcommit_memory = .*/vm\.overcommit_memory = 2/g' /etc/sysctl.conf
sed -i 's/vm\.overcommit_ratio = .*/vm\.overcommit_ratio = 100/g' /etc/sysctl.conf
sysctl -p
验证
[root@sds-node logs]# cat /etc/sysctl.conf | grep "vm.overcommit"
vm.overcommit_memory = 2
vm.overcommit_ratio = 100
对环境中的所有受影响的 SDS 重复这些步骤,以确保将其设置为建议的最佳实践设置。  您无需将 SDS 置于维护模式即可执行此操作。 

 

类似文章:

其他信息

 

 

受影响的产品

VxFlex Product Family

产品

PowerFlex Software, VxFlex Product Family, VxFlex Ready Node, ScaleIO Ready Node-PowerEdge 13G, PowerFlex appliance R640, PowerFlex appliance R740XD, PowerFlex appliance R840
文章属性
文章编号: 000065036
文章类型: Solution
上次修改时间: 18 5月 2026
版本:  5
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。