崩溃后如何将内存转储保存在 kubernetes 集群中?

问题描述

当 JVM 因 OutOfMemoryError 崩溃时,有一些选项可以存储转储:

-XX:+HeapDumpOnOutOfMemoryError 
-XX:HeapDumpPath=./java_pid<pid>.hprof

但是在 kubernetes 集群崩溃后会发生什么?似乎 kubernetes 会清理与粉碎的 pod 相关的所有内容?如何保存?

解决方法

只需将其安装为卷即可。

volumeMounts:
        - name: heap-dumps
          mountPath: /dumps
      volumes:
      - name: heap-dumps
        emptyDir: {}

How to do a java heap dump in K8s