WebLogic 11g 기동시 JAVA OPTION 넣기
WebLogic 11g 기동시 JAVA OPTION 넣기위해서 setDomainEnv.sh 나 commonEnv.sh 를 수정하는 경우가 있다. 하지만 이렇게 하면 WebLogic 11g 를 구성하는 Admin, NodeManager, ManagedServer 에 각각 따로따로 적용해주기위해서 앞에서 언급한 쉘 스크립트에 조건식을 줘야 한다.
setDomainEnv.sh 나 commonEnv.sh 는 WebLogic 서버에서 전역적으로 사용하는 것이기 때문에 특정한 부분을 위해서 수정하는 경우는 지양해야 한다.
최신의 WebLogic 11g 에서는 이러한 특정부분만을 위해 적용할 수 있는 JAVA OPTION 변수를 제공하는데 그것이 바로 USER_MEM_ARGS 이다. 쉘 환경변수로서 이것을 활용하면 Admin, NodeManager, ManagedServer 기동시에 JAVA OPTION을 줄 수 있다.
예를들어 Admin 서버를 기동할때에 사용하는 스크립트인 ${DOMAIN_HOME}/startWebLogic.sh 를 보자.
1 2 3 4 5 |
DOMAIN_HOME="/home/systemv/wls_domains/mCloud" export USER_MEM_ARGS="-Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=256m -Djava.security.egd=file:/dev/./urandom" ${DOMAIN_HOME}/bin/startWebLogic.sh $* |
위와 같이 USER_MEM_ARGS 환경변수에 JAVA OPTION 값을 지정하면 WebLogic 이 구동시에 이것을 반영하게 된다.
ManagedServer 기동시에도 마찬가지다. 보통 ManagedServer 기동은 다음과 같이 한다.
1 |
systemv@ubuntu:~/wls_domains/mCloud/bin$ ./startManagedWebLogic.sh Server-0 |
하지만 이렇게하면 JAVA OPTION을 제공할 수가 없다. Server-0 로 불리우는 ManagedServer 기동을 위해서 일종의 랩퍼 스크립트를 다음과 같이 작성해보자.
1 2 3 4 5 |
#!/bin/sh DOMAIN_HOME="/home/systemv/wls_domains/mCloud" export USER_MEM_ARGS="-Dweblogic.unicast.HttpPing=true -XX:CompileThreshold=8000 -Xms1024m -Xmx1024m -XX:MaxPermSize=512m -Djava.security.egd=file:/dev/./urandom" ${DOMAIN_HOME}/bin/startManagedWebLogic.sh Server-0 |
위와같이 USER_MEM_ARGS 쉘 환경변수에 JAVA OPTION 값을 지정하면 이것을 반영하하여 Server-0 는 기동하게 된다.