Dell-automaatioalusta: Java-pohjaiset säilöt "OOMKilled" ytimestä 6.12 alkaen

Summary: Java-pohjaiset säilösovellukset (kuten Keycloak) saattavat sammua odottamatta muistin loppumisvirheiden (OOM) vuoksi, kun käytössä on Linux Kernel 6.12 tai uudempi. Tämä ongelma johtuu muutoksista tavassa, jolla ydin paljastaa cgroup-muistirajat. Nämä muutokset vaikuttavat Java Virtual Machinen (JVM) kykyyn tunnistaa ja noudattaa säilömuistin rajoituksia oikein. ...

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

NativeEdge Dell -automaatioalustalle keycloak on saamassa OOMKilled alustuksen aikana. Se voi tapahtua esimerkiksi ruorin asennuksen aikana, kun keycloak pod on tulossa.

Lokit sisällä keycloak Lopeta:

Appending additional Java properties to JAVA_OPTS
Changes detected in configuration. Updating the server image.
Updating the configuration and installing your custom providers, if any. Please wait.

Kontin kuvauksesta käy ilmi:

State: Waiting
  Reason: CrashLoopBackOff
Last State: Terminated
  Reason: OOMKilled

Muissa ympäristöissä se voi olla:

  • Järjestelmä lopettaa Java-säilöt (esim. keycloak, Kafka, Elasticsearch) OOMKilled tila.
  • JVM raportoi odottamattoman korkeita kekokokoarvioita, jotka vastaavat usein isäntämuistia säilörajoitusten sijaan.
  • Muistin viritysmerkinnät, kuten -XX:MaxRAMPercentage vaikuttavat tehottomilta.
  • Lokeissa voi näkyä seuraavanlaisia viestejä:
    • [debug][os,container] controller memory is not enabled
    • [debug][os,container] One or more required controllers disabled at kernel level

Cause

Linux-ytimestä 6.12 alkaen ydin ei enää paljasta cgroup Rekisterinpitäjän tiedot: /proc/cgroups, johon JVM aiemmin luotti konttimuistirajojen havaitsemiseksi. Tämä muutos rikkoo säilötietoisuuden JVM-versioissa, joita haavoittuvuus koskee, jolloin he olettavat, että heillä on pääsy koko isäntämuistiin. Tämän seurauksena JVM varaa enemmän muistia kuin säiliö sallii, mikä käynnistää ytimen OOMkiller.

Tähän liittyy useita kysymyksiä avoimen lähdekoodin projekteissa:

Ubuntu 24.04.3 ei käytä 6.12-ydintä oletuksena. Mutta jotkut kuvat päivitetään jo versioilla 6.12, 6.13, 6.14 (esimerkiksi AWS-kuvakirjastossa).

Resolution

Pikakiertotapoja on kaksi.

  • Lisää säilön muistirajoja tilapäisesti. Seuraavassa on esimerkiksi ohjeet Dell Automation Platformin asentamiseen. Se kaksinkertaistaa keycloak kontti.
Tätä varten sinun on suoritettava seuraava komento (tarkista orkestraattorin nimiavaruus, esimerkiksi alla: dapo on Orchestratorin oletusnimitila:
kubectl edit sts keycloak -n dapo
Etsi muistirajat ja pyynnöt ja tuplaa ne. keycloak Kuluttaa paljon muistia valmisteluvaiheessa. Tämän lisäyksen ansiosta alustusvaihe voitiin läpäistä.
  • Aseta JVM-muistirajat eksplisiittisesti

Rajoita muistin käyttöä manuaalisesti käynnistysmerkintöjen avulla:

extraEnvVars:
  - name: JAVA_OPTS_KC_HEAP
    value: "-XX:MaxRAMPercentage=70 -XX:MinRAMPercentage=70 -XX:InitialRAMPercentage=50 -XX:MaxRAM=1G"

Affected Products

Dell Automation Platform, NativeEdge Solutions, Dell Automation Platform Components, NativeEdge
Article Properties
Article Number: 000369678
Article Type: Solution
Last Modified: 16 Oct 2025
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.