OpenShift Payara内存-无法访问管理员

时间:2018-09-25 06:45:26

标签: java out-of-memory openshift payara

我们有使用Payara的图像的OpenShift。我们对此很陌生,我们遇到的一个问题是无法使用“ java.lang.OutOfMemoryError:超出GC开销限制”来访问Payara管理控制台

有没有一种方法可以增加内存而不必重建新映像?

2 个答案:

答案 0 :(得分:0)

好像您正在运行JVM,我强烈建议您从here

中介绍的内容开始进行故障排除。

您还可以像这样动态地调整Pod中的内存:

apiVersion: v1
kind: Pod
metadata:
  name: test
spec:
  containers:
  - name: test
    image: fedora:latest
    command:
    - sleep
    - "3600"
    env:
    - name: MEMORY_REQUEST
      valueFrom:
        resourceFieldRef:
          containerName: test
          resource: requests.memory
    - name: MEMORY_LIMIT
      valueFrom:
        resourceFieldRef:
          containerName: test
          resource: limits.memory
    resources:
      requests:
        memory: 384Mi
      limits:
        memory: 512Mi

答案 1 :(得分:0)

使用官方的Payara Server码头工人映像,如果不修改映像就无法指定JVM内存限制。

但是,您可以一次修改库存映像以利用JVM选项中的环境变量引用,然后将具有不同值的相同映像重用于环境变量。请参阅此处的文档:https://docs.payara.fish/documentation/payara-server/server-configuration/var-substitution/usage-of-variables.html

因此,您可以使用-Xmx2g asadmin命令修改映像以删除默认的delete-jvm-options JVM选项,并使用${ENV=PAYARA_XMX}添加一个新选项,例如create-jvm-options,然后启动PAYARA_XMX环境变量设置为例如的docker容器-Xmx500m

您还可以提出一个问题,要求在https://github.com/payara/docker-payaraserver-full/issues的股票Payara Docker映像中添加对此项的支持。