Updating the JVM options for the Java Platform, Standard Edition components

You can configure the JVM options for the Java™ Platform, Standard Edition components. To pass the additional JVM options, you must add the attribute for the Java Platform, Standard Edition component in the operator custom resource files for your FTM offering.

The following table shows how to add an environment variable to configure additional JVM options for each Java Platform, Standard Edition component.
Table 1. JVM options YAML attributes for each component
Component YAML snippet
Gateway Server
spec:
  resources:
    - name: gateway-server-inbound
      containers:
        gateway-server-inbound:
          env:
            - name: EXTRA_VMPARMS_GW
              value: ''
    - name: gateway-server-outbound
      containers:
        gateway-server-outbound:
          env:
            - name: EXTRA_VMPARMS_GW
              value: ''
Transaction Server
spec:
  resources:
    - name: transaction-server
      containers:
        transaction-server:
          env:
            - name: EXTRA_VMPARMS_ITS
              value: ''
Business Rules Manager
spec:
  resources:
    - name: business-rules-manager
      containers:
        business-rules-manager:
          env:
            - name: EXTRA_VMPARMS_BRM
              value: ''
Business Rules Server
spec:
  resources:
    - name: business-rules-server
      containers:
        business-rules-server:
          env:
            - name: EXTRA_VMPARMS_BRS
              value: ''

Based on the Java Platform, Standard Edition component for which you want to configure the JVM options, add the appropriate FTM instance runtime custom resource parameters. Either use the Red Hat® OpenShift® Container Platform user interface or the Red Hat OpenShift Container Platform command-line interface to add the YAML attributes.

Delete the existing Java Platform, Standard Edition pods of that component. The new pods are created with the updated configuration. For example, if you add or update the attribute for the Business Rules Server, delete all the Business Rules Server pods. After the pods are deleted, the pod automatically restarts with the customized JVM options that are passed to the component startup script.

For example, you can update the runtime instance custom resource for your FTM offering to enable verbose garbage collection logging. This example shows the attributes for Business Rules Server.
spec:
  resources:
    - name: business-rules-server
      containers:
        business-rules-server:
          env:
            - name: EXTRA_VMPARMS_BRS
              value: '-verbose:gc'
Although this example uses the option for verbose garbage collection, you can use any supported JVM options.
After the attribute is added, you can see the message in the container logs for the component as shown in the following example.
EXTRA_VMPARMS_BRS set to -verbose:gc
The message is different for other components.
You can see the garbage collection verbose output at the beginning of the application startup.
<gc-start id="5" type="scavenge" contextid="4" timestamp="2021-09-02T13:36:39.941"> ......</gc-end>