PowerFlex Manager 3.8: 記憶體不足的 Java 堆積錯誤導致效能不佳

Summary: Java 堆積記憶體耗盡會導致 PFxM UI 效能不佳,以及針對各種工作 (例如資源清查、部署新服務或新增現有服務) 隨機發生意外故障。

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

PFxM UI 效能不佳,而且可能很慢,而且在 UI 內拉出不同區段時可能會很慢。各種任務(如資源清單、部署新服務或添加現有服務)可能會意外失敗。

可使用 asmui asmManager 記錄顯示 Out-OfMemory 錯誤:

2024-06-01 01:17:24 [http-nio-9030-exec-4] (DeviceController.java:626) [ERROR] getDeviceList() - Exception from service call
java.lang.OutOfMemoryError: Java heap space
2024-06-01 01:17:24 [http-nio-9030-exec-4] (BaseController.java:304) [ERROR] Found generic exception in Controller
java.lang.OutOfMemoryError: Java heap space
2024-06-01 01:17:24 [http-nio-9030-exec-9] (DeviceController.java:626) [ERROR] getDeviceList() - Exception from service call
java.lang.OutOfMemoryError: Java heap space
2024-06-01 01:17:24 [http-nio-9030-exec-9] (BaseController.java:304) [ERROR] Found generic exception in Controller
java.lang.OutOfMemoryError: Java heap space
2024-06-01 01:17:26 [http-nio-9030-exec-6] (DeviceController.java:626) [ERROR] getDeviceList() - Exception from service call
java.lang.OutOfMemoryError: Java heap space
2024-06-01 01:17:26 [http-nio-9030-exec-6] (BaseController.java:304) [ERROR] Found generic exception in Controller
java.lang.OutOfMemoryError: Java heap space
...
2024-07-10 00:40:50 [http-nio-9030-exec-11] (RestTemplateResponseErrorHandler.java:47) [ERROR] REST Error: {
  "detailMessage" : "Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: Java heap space",
  "cause" : {
    "cause" : {
      "cause" : null,
      "stackTrace" : [ ],
      "message" : "Java heap space",
      "localizedMessage" : "Java heap space",
      "suppressed" : [ ]
...
"stackTrace" : [ ],
  "suppressedExceptions" : [ ],
  "status" : 500,
  "timestamp" : "2024-07-10T04:40:50.986+00:00",
  "error" : "Internal Server Error",
  "path" : "/AsmManager/job/",
  "messages" : [ {
    "messageBundle" : null,
    "messageCode" : null,
    "severity" : null,
    "category" : null,
    "displayMessage" : "Runtime error",
    "responseAction" : null,
    "detailedMessage" : "Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: Java heap space",
    "agentId" : null,
    "correlationId" : null,
    "timeStamp" : "2024-07-10T04:40:50.987+00:00",
    "sequenceNumber" : 0
  } ]
}
2024-07-10 00:40:50 [http-nio-9030-exec-11] (JobsController.java:83) [ERROR] getJobs() - Exception from service call
com.dell.asm.rest.common.exception.LocalizedWebApplicationException: HTTP 500 Internal Server Error
    at com.dell.pfxm.springboot.helpers.error.RestTemplateResponseErrorHandler.handleError(RestTemplateResponseErrorHandler.java:64) ~[RestCommon-0.7.0-SNAPSHOT.jar!/:?]
...

 

影響

Java 堆積記憶體耗盡會導致 PFxM UI 效能不佳,以及各種工作的隨機意外故障。

Cause

asmui asmManager 元件的預設 Java 堆記憶體範圍分別為 128M-512M 和 512M-6144M。在較大的環境中,此記憶體範圍可能不足以讓各種進程正確運行,從而導致堆記憶體耗盡。

在 PFxM 中具有大量物件的環境(例如,100+ 資源、3+ 個節點的 3+ 服務、10+ 個服務總數)將受益於更大的 Java 堆記憶體池。

Resolution

可以增加 asumui asmManager 元件的 Java 堆大小過去,這通常被視為「大規模修補程式」,因為必須將修補程式應用於當前的 PFxM 實例,並且不會在 PFxM 升級中保留。

不再需要修補程式,因為此更新會套用至在 PFxM 升級期間持續存在的組態檔案。

注意:在更新堆值之前,PFxM VM 必須設定至少 20 個 vCPU (10 個核心/2 個插槽) 和 56 GB 記憶體。

此程序需要重新開機 PFxM VM,並據此進行規劃。

 

1.從 PFxM CLI 備份目前的 asmui asmManager Java 組態檔案:

 sudo cp /opt/Dell/ASM/conf/asmui-jvm-props.conf asmui-jvm-props.conf.bak
 
sudo cp /opt/Dell/ASM/conf/asmManager-jvm-props.conf asmManager-jvm-props.conf.bak

2.在中心拍攝 PFxM VM 的快照。 

 

3.將 asmui 堆積上限範圍增加到 2048M:

 echo '-Xloggc:/opt/Dell/ASM/logs/gc_asmui.log -XX:+PrintHeapAtGC -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=10M -XX:-HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="/opt/Dell/ASM/logs/" -Xms128m -Xmx2048m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -Dhttp.nonProxyHosts="localhost.localdomain|localhost|127.0.0.1" -Djava.io.tmpdir=/opt/Dell/ASM/temp -Dspring.profiles.active=main' > /opt/Dell/ASM/conf/asmui-jvm-props.conf

4.將 asmManager 堆積上限範圍提高到 18432M:

 echo '-Xloggc:/opt/Dell/ASM/logs/gc_asmManager.log -XX:+PrintHeapAtGC -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=10M -XX:-HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="/opt/Dell/ASM/logs/" -Xms512m -Xmx18432m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -Dhttp.nonProxyHosts="localhost.localdomain|localhost|127.0.0.1" -Djava.io.tmpdir=/opt/Dell/ASM/temp -Dspring.profiles.active=main' > /opt/Dell/ASM/conf/asmManager-jvm-props.conf

5.重新啟動 PFxM VM。

 

6.確認已套用組態變更:

 cat /opt/Dell/ASM/conf/asmui-jvm-props.conf | grep -E 'Xms|Xmx'
 
cat /opt/Dell/ASM/conf/asmManager-jvm-props.conf | grep -E 'Xms|Xmx'

7.實作變更並解決問題後,請在中心刪除 PFxM VM 快照。 

 

受影響的

 版本 3.8.6 及更新版本

Products

PowerFlex rack, VxFlex Ready Nodes, PowerFlex custom node, PowerFlex appliance R650, PowerFlex appliance R6525, PowerFlex appliance R660, PowerFlex appliance R6625, Powerflex appliance R750, PowerFlex appliance R760, PowerFlex appliance R7625 , PowerFlex appliance R640, PowerFlex appliance R740XD, PowerFlex appliance R7525, PowerFlex appliance R840 ...
Article Properties
Article Number: 000269469
Article Type: Solution
Last Modified: 27 Jul 2025
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.