WebLogic 구동 시 /dev/random 블로킹 이슈 해결
WebLogic 10.3.6 을 설치할때에 관리 서버 1개와 매니지드 서버 1개를 생성하게 됩니다. 그런데, 서버 시작 스크립트에서 난수 관련된 것을 고치지 않으면 시작이 굉장히 오래 걸립니다.
이는 Unix 시스템의 경우에 /dev/random 을 사용하지 않고 /dev/./urandom 을 사용하기 때문입니다.
이를 해결하는 방법은 두가지 인데, 첫번째로는 Java 의 Security 부분을 바꿔 주는 겁니다. 그러면 Java 를 사용하는 모든 자바 프로그램에 다 적용 됩니다. 다음과 같이 해줍니다.
1 2 3 |
]# vim $JAVA_HOME/jre/lib/security/java.security - 70 securerandom.source=file:/dev/urandom + 70 securerandom.source=file:/dev/./urandom |
이렇게 해주고 서버를 재시작 하면 적용 됩니다.
두번째는 Java 애플리케이션을 실행할 때에 JVM Command Line 파라메터를 주는 겁니다. 다음과 같이 해줍니다.
1 2 |
]$ vim /home/systemv/wls_domains/mCloud/startWebLogic.sh export JAVA_OPTIONS="-Djava.security.egd=file:/dev/./urandom ${JAVA_OPTIONS}" |
위와같이 서버 시작 스크립트에 JAVA_OPTIONS 환경변수에 난수 장치를 지정해 줍니다.