SysOM EnhanceOOMCollector feature

Updated at:

The EnhanceOOMCollector feature monitors Pod memory usage to predict Out-of-Memory (OOM) events. It proactively collects memory data before an OOM event occurs, providing rich contextual information after the event. This data includes memory usage details for the system, the Pod, and the application.

Limitations

Region restrictions

This feature is available only in the Chinese mainland and Hong Kong (China) regions.

Operating system restrictions

Architecture

Operating system

x86 architecture

  • Alibaba Cloud Linux 2/3

  • Alibaba Cloud Linux 3 Pro

  • Alibaba Cloud Linux 3 Container-Optimized Edition

  • Rocky Linux 9.5

  • Rocky Linux 9.1

  • Rocky Linux 8.8

  • Ubuntu 22.04

  • CentOS 7.6 or later, or CentOS 8

  • Anolis OS 7/8

  • Ubuntu 24.04

  • Ubuntu 20.04

ARM architecture

  • Alibaba Cloud Linux 3

  • Alibaba Cloud Linux 3 Pro

Prerequisites

  • If you are a RAM user, ensure the Alibaba Cloud account (primary account) has granted your RAM user the AliyunECSReadOnlyAccess and AliyunSysomFullAccess system policies.

  • You must authorize the service when you log in to the Operating System Console for the first time.

How it works

Enabling EnhanceOOMCollector results in a minor persistent memory overhead of 10 MB to 30 MB.

Feature status

Effect

EnhanceOOMCollector enabled, Java memory collection disabled

  1. OOM events are automatically saved. You can perform OOM diagnosis even if the instance is restarted or the Pod is terminated.

  2. Before a Pod experiences an OOM event, the feature collects memory usage data for the system and the Pod. This provides rich contextual information for diagnosis, similar to the results from a Memory Panorama Analysis.

  3. OOM events can be traced back to the specific Pod, even after the Pod has been terminated.

EnhanceOOMCollector enabled, Java memory collection enabled

In addition to the preceding benefits, if a Java application is consuming a high amount of memory in the Pod, the feature collects memory information from the Java process before an OOM event occurs. The collected information is similar to the results from a Java Memory Diagnosis.

EnhanceOOMCollector disabled

  1. OOM diagnosis is based on log analysis, which provides limited information.

  2. If a Pod is terminated, the OOM event cannot be traced back to that Pod.

  3. After a system restart, you cannot diagnose OOM events that occurred before the restart.

SysOM component version 3.9.1-1 or later enables the lightweight enhanced OOM information collection feature by default.

Enable lightweight OOM collection

Follow the steps in Component Management to upgrade the SysOM component on the target instance to version 3.9.1-1 or later.

Enable enhanced OOM and Java memory collection

  1. Go to the Operating System Console - Component Management page.

  2. Install components for the target ECS instance.

  3. Return to the Component Management page and click Details.

  4. Click Create Configuration to enable the Java memory collection feature.

    In the SysOM Component Configuration dialog box, set Configuration Name to enable-java-mem-oom, select the Enable OOM enhanced diagnosis and Enable Java memory collection checkboxes. Click OK.

  5. In the left-side navigation pane, click System Management.

  6. On the Managed tab, select the nodes where you want to apply the feature, and then click Change Component.

  7. Select the SysOM component configuration that you created and click Submit.

Disable enhanced OOM collection

  1. Go to the Operating System Console - Component Management page.

  2. Install components for the target ECS instance.

  3. Return to the Component Management page. On the Managed Components tab, find the SysOM component and click Details.

  4. Click Create Configuration to disable the feature. In the SysOM Component Configuration dialog box, enter a Configuration Name such as disable-java-mem-oom. In the Enhanced OOM diagnosis settings section, clear the Enable OOM enhanced diagnosis checkbox, and then click OK.

  5. In the left-side navigation pane, click System Management.

  6. On the Managed tab, select the nodes where you want to apply the change, and click Change Component.

  7. Select the SysOM component configuration that you created and click Submit.