oracle/weblogic-kubernetes-operator

Server Start Arguments from Server Template not used in Dynamic Server instance.

brieucolivier opened this issue · 2 comments

Dears,
We noticed the following issue on our environment, which we were able to reproduce :
We have a wdt model describing a server template including Start Arguments as such :

topology: ServerTemplate: cluster-template: SingleSignOnServices: [...] ServerStart: Arguments: "-Xmx2048m"
When we spin up the cluster based on the model, the server start arguments seems to be present in the server start arguments of the cluster. We can see it in the WebLogic Admin Console (Home > Summary of Server Templates > cluster-template > Configuration > Server Start) and in the config.xml of our domain :

<?xml version='1.0' encoding='UTF-8'?> <domain [...]> <name>test-env01</name> <domain-version>12.2.1.4.0</domain-version> <security-configuration> <name>test-env01</name> [...] </security-configuration> <server> <name>admin-server</name> <listen-port>8001</listen-port> <listen-address>test-env01-admin-server</listen-address> <network-access-point> <name>internal-t3</name> <listen-address>localhost</listen-address> <listen-port>8001</listen-port> </network-access-point> <server-life-cycle-timeout-val>30</server-life-cycle-timeout-val> <startup-timeout>0</startup-timeout> </server> <server-template> <name>cluster-template</name> <ssl> <name>cluster-template</name> <enabled>false</enabled> <listen-port>8100</listen-port> </ssl> <cluster>test-env01-cluster</cluster> <server-start> <name>NO_NAME_0</name> <arguments>-Xmx2048m</arguments> </server-start> [...]

However, the properties is not available in the managed server issued from the template. It is defined in the config.xml as follow :
<cluster> <name>test-env01-cluster</name> <cluster-address>test-env01-cluster-test-env01-cluster</cluster-address> <cluster-messaging-mode>unicast</cluster-messaging-mode> <frontend-host>cluster.test-env01.ui.k8s.local.com</frontend-host> <frontend-http-port>80</frontend-http-port> <jta-cluster> <timeout-seconds>66</timeout-seconds> </jta-cluster> <dynamic-servers> <name>NO_NAME_0</name> <server-template>cluster-template</server-template> <maximum-dynamic-server-count>1</maximum-dynamic-server-count> <calculated-listen-ports>false</calculated-listen-ports> <server-name-prefix>managed-server-</server-name-prefix> <dynamic-cluster-size>1</dynamic-cluster-size> <max-dynamic-cluster-size>1</max-dynamic-cluster-size> </dynamic-servers> </cluster>

The .out and .log files does not display the start Arguments at the startup and the properties (we have others than the Xmx) are not available from our app deployed on the managed server.
In the admin console, there is no tab for the server start arguments.

Could you please advise on this issue?

Regards.

In WKO environment, since the managed server is not started by the admin server via the nodemanager, the server-start arguments are ignored.

However, you can control it in the domain resource YAML using environment variable in the server pod.

https://oracle.github.io/weblogic-kubernetes-operator/managing-domains/domain-resource/#jvm-memory-and-java-option-environment-variables

kubectl explain domain.spec.serverPod.env or kubectl explain domain.spec.adminServer.serverPod.env

Closing issue as Works As Designed