본문 바로가기

WAS/WebLogic

[weblogic] 설치 가이드 (12c, 14c) (Windows)

업데이트 날짜 : 2024/05/21

 


 

#01. System 호환 정보 (OS, JDK)

호환 JDK

 - WLS12.1.3: Oracle JDK 1.7.0+

 - WLS12.2.1.3, WLS12.2.1.4: Oracle JDK 1.8.0+

 - WLS14.1.1: Oracle JDK 1.8.0+, Oracle JDK 11

 


 

#02. 서버 엔진 설치

엔진 설치는 windows 환경에서도 silent로 가능하다.

 

install_weblogic.rsp 파일을 생성한다.

ORACLE_HOME 옵션에 weblogic 설치 경로를 작성한다.

나머지 부분은 수정할 필요 없다.

[ENGINE]
#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0

[GENERIC]
#The oracle home location. This can be an existing Oracle Home or a new Oracle Home
ORACLE_HOME=D:\GTPLUS\weblogic12214

#Set this variable value to the Installation Type selected. e.g. WebLogic Server, Coherence, Complete with Examples.
INSTALL_TYPE=WebLogic Server

#MyOracleSupport Account
MOS_USERNAME=
MOS_PASSWORD=<SECURE_VALUE>

#Set this to true if you wish to skip software updates
DECLINE_AUTO_UPDATES=true

#Set this to true if you wish to decline the security updates.
DECLINE_SECURITY_UPDATES=true

#Set this to true if My Oracle Support Password is specified
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

 

관리자 권한으로 CMD를 실행해야 한다.

설치 파일 실행 명령어는 아래와 같다.

"java경로" -jar fmw_12.2.1.4.0_wls_lite_generic.jar -silent -responseFile ...\install_weblogic.rsp

 


 

#03. Domain 구성

domain 구성은 silent로 작업이 불가하다.

구성 마법사 사용할 수 밖에 없음.

{WEBLOGIC_HOME}\oracle_common\common\bin\config.cmd 실행

 

Domain 경로 입력

 

Default 값 선택된 상태에서다음으로 이동

 

WebLogic 서버에서 사용할 관리자 계정 정보 입력

서버 기동 및 관리자콘솔 로그인에 사용된다.

입력 후 다음으로 이동

 

도메인 모드는 "운영" 선택

JDK는 서버 설치에 사용한 JDK 선택 (Default 값 선택된 상태)

다음으로 이동

 

"관리 서버" 체크 후 다음으로 이동

AdminServer 생성 화면으로 이동하게 된다

 

AdminServer 이름

IP Address

Port 

세팅 후 다음으로 이동

 

도메인 생성 위치 확인

"생성" 버튼 클릭하여 도메인을 생성한다

 

모든 단계가 정상적으로 완료되었는지 체크

다음으로 이동

 

도메인 생성 위치 확인

도메인 생성 완료

 


 

#04. 서버 기동 정지 스크립트

 

(boot.properties)

username=weblogic
password=weblogic1

 

 

(관리자 권한을 획득하는 코드)

Windows 환경에서 WebLogic 기동 시, 관리자 권한으로 기동해야 한다.

관리자 권한으로 WebLogic을 실행시키기 위해 기동스크립트 상단에 아래의 코드를 추가한다

@rem ######## GET ADMIN AUTHORITY ########
:: BatchGotAdmin
:------------------------------------- 
REM --> Check for permissions 
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system" 

REM --> If error flag set, we do not have admin. 
if '%errorlevel%' NEQ '0' ( 
	echo Requesting administrative privileges... 
	goto UACPrompt 
) else ( goto gotAdmin ) 

:UACPrompt 
	echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs" 
	set params = %*:"="" 
	echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs" 

	"%temp%\getadmin.vbs" 
	del "%temp%\getadmin.vbs" 
	exit /B 

:gotAdmin 
	pushd "%CD%" 
	CD /D "%~dp0" 
:--------------------------------------

 

 

(AdminServer 기동 스크립트)

@ECHO OFF

@rem ##### GET ADMIN AUTHORITY #####
:: BatchGotAdmin
:----------------------------------------------------------------
REM --> Check for permissions 
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system" 

REM --> If error flag set, we do not have admin. 
if '%errorlevel%' NEQ '0' ( 
	echo Requesting administrative privileges... 
	goto UACPrompt 
) else ( goto gotAdmin ) 

:UACPrompt 
	echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs" 
	set params = %*:"="" 
	echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs" 

	"%temp%\getadmin.vbs" 
	del "%temp%\getadmin.vbs" 
	exit /B 

:gotAdmin 
	pushd "%CD%" 
	CD /D "%~dp0" 
:----------------------------------------------------------------

@rem --------------------------------------------------------------------------------

@rem ##### server info #####
set DOMAIN_NAME=test_domain
set DOMAIN_HOME=E:\app\weblogic12214\domains\%DOMAIN_NAME%_domain
set SERVER_NAME=AdminServer
set BOOT_PROPERTIES="%DOMAIN_HOME%\boot.properties"

@rem ##### CMD title #####
title ##%DOMAIN_NAME%_%SERVER_NAME%##

@rem --------------------------------------------------------------------------------

@rem ##### server settings #####

@rem #disable derby server
set DERBY_FLAG=false

@rem #boot_properties
set JAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.system.BootIdentityFile=%BOOT_PROPERTIES%

@rem #urandom
set JAVA_OPTIONS=%JAVA_OPTIONS% -Djava.security.egd=file:///dev/./urandom

@rem #ipv4 options
set JAVA_OPTIONS=%JAVA_OPTIONS% -Djava.net.preferIPv4Stack=true

@rem #heap memory options
set JAVA_OPTIONS=%JAVA_OPTIONS% -Xms4096m -Xmx4096m -XX:MetaspaceSize=1024M -XX:MaxMetaspaceSize=1024M

@rem --------------------------------------------------------------------------------

@rem ##### log directory #####

@rem log directory
set LOG_DIR=E:\applog\weblogic\%DOMAIN_NAME%\%SERVER_NAME%

@rem log time
set PREFIX=%DATE:~2%_%TIME:~0,-3%
set PREFIX=%PREFIX::=%
set PREFIX=%PREFIX:-=%
set PREFIX=%PREFIX: =0%
set PREFIX=%PREFIX:/=%

@rem --------------------------------------------------------------------------------

@rem ##### server start #####

@rem stdout log backup
if exist %LOG_DIR%\stdout\%SERVER_NAME%.out (
    move %LOG_DIR%\stdout\%SERVER_NAME%.out %LOG_DIR%\stdout\%SERVER_NAME%.out.%PREFIX%
)

@rem  #server_start
start /B %DOMAIN_HOME%\bin\startWebLogic.cmd > %LOG_DIR%\stdout\%SERVER_NAME%.out 2>&1 &
tail -f %LOG_DIR%\stdout\%SERVER_NAME%.out

 

 

(ManagedServer 기동 스크립트)

@ECHO OFF

@rem ##### GET ADMIN AUTHORITY #####
:: BatchGotAdmin
:----------------------------------------------------------------
REM --> Check for permissions 
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system" 

REM --> If error flag set, we do not have admin. 
if '%errorlevel%' NEQ '0' ( 
	echo Requesting administrative privileges... 
	goto UACPrompt 
) else ( goto gotAdmin ) 

:UACPrompt 
	echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs" 
	set params = %*:"="" 
	echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs" 

	"%temp%\getadmin.vbs" 
	del "%temp%\getadmin.vbs" 
	exit /B 

:gotAdmin 
	pushd "%CD%" 
	CD /D "%~dp0" 
:----------------------------------------------------------------

@rem --------------------------------------------------------------------------------

@rem ##### server info #####
set DOMAIN_NAME=test_domain
set DOMAIN_HOME=E:\app\weblogic12214\domains\%DOMAIN_NAME%_domain
set SERVER_NAME=M1
set ADM_URL="t3://1.1.1.1:8000"
set BOOT_PROPERTIES=%DOMAIN_HOME%\boot.properties

@rem ##### CMD title #####
title ##%DOMAIN_NAME%_%SERVER_NAME%##

@rem --------------------------------------------------------------------------------

@rem ##### server settings #####

@rem #disable derby server
set DERBY_FLAG=false

@rem #classpath
set CLASSPATH=%CLASSPATH%
set EXT_PRE_CLASSPATH=%EXT_PRE_CLASSPATH%

@rem #boot_properties
set JAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.system.BootIdentityFile=%BOOT_PROPERTIES%

@rem #urandom
set JAVA_OPTIONS=%JAVA_OPTIONS% -Djava.security.egd=file:///dev/./urandom

@rem #ipv4 options
set JAVA_OPTIONS=%JAVA_OPTIONS% -Djava.net.preferIPv4Stack=true

@rem #heap memory options
set JAVA_OPTIONS=%JAVA_OPTIONS% -Xms4096m -Xmx4096m -XX:MetaspaceSize=1024M -XX:MaxMetaspaceSize=1024M

@rem #thread pool options
set JAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.threadpool.MinPoolSize=100  -Dweblogic.threadpool.MaxPoolSize=200

@rem #security options
set JAVA_OPTIONS=%JAVA_OPTIONS% -Djdk.tls.rejectClientInitiatedRenegotiation=true

@rem --------------------------------------------------------------------------------

@rem ##### jennifer5 #####

set JAVA_OPTIONS=%JAVA_OPTIONS% -Djennifer.config="E:\app\jennifer5\jennifer-agent-java-5.4.3.2\agent.java\conf\AMS_1_1.conf"
set JAVA_OPTIONS=%JAVA_OPTIONS% -javaagent:"E:\app\jennifer5\jennifer-agent-java-5.4.3.2\agent.java\jennifer.jar"

@rem --------------------------------------------------------------------------------

@rem ##### log directory #####

@rem log directory
set LOG_DIR=E:\applog\weblogic\%DOMAIN_NAME%\%SERVER_NAME%

@rem log time
set PREFIX=%DATE:~2%_%TIME:~0,-3%
set PREFIX=%PREFIX::=%
set PREFIX=%PREFIX:-=%
set PREFIX=%PREFIX: =0%
set PREFIX=%PREFIX:/=%

@rem --------------------------------------------------------------------------------

@rem ##### gc log & dump files #####

@rem #gc_log
set JAVA_OPTIONS=%JAVA_OPTIONS% -verbose:gc -Xloggc:%LOG_DIR%/gc/gc_%SERVER_NAME%.log
set JAVA_OPTIONS=%JAVA_OPTIONS% -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintHeapAtGC -XX:+DisableExplicitGC

@rem #G1GC
set JAVA_OPTIONS=%JAVA_OPTIONS% -XX:+UseG1GC -XX:G1HeapRegionSize=32 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=2
set JAVA_OPTIONS=%JAVA_OPTIONS% -XX:MaxGCPauseMillis=200 -XX:InitiatingHeapOccupancyPercent=45 -XX:SurvivorRatio=8
set JAVA_OPTIONS=%JAVA_OPTIONS% -XX:NewRatio=2 -XX:MaxTenuringThreshold=15 -XX:G1ReservePercent=10

@rem #heapdump options
set JAVA_OPTIONS=%JAVA_OPTIONS% -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=%LOG_DIR%/dump_files/heapdump_%SERVER_NAME%.hprof

@rem --------------------------------------------------------------------------------

@rem ##### server start #####

@rem stdout log backup
if exist %LOG_DIR%\stdout\%SERVER_NAME%.out (
    move %LOG_DIR%\stdout\%SERVER_NAME%.out %LOG_DIR%\stdout\%SERVER_NAME%.out.%PREFIX%
)

@rem gc log backup
if exist %LOG_DIR%\gc\gc_%SERVER_NAME%.log (
    move %LOG_DIR%\gc\gc_%SERVER_NAME%.log %LOG_DIR%\gc\gc_%SERVER_NAME%.log.%PREFIX%
)

@rem  #server_start
start /B %DOMAIN_HOME%\bin\startManagedWebLogic.cmd %SERVER_NAME% %ADM_URL% > %LOG_DIR%\stdout\%SERVER_NAME%.out 2>&1 &
tail -f %LOG_DIR%\stdout\%SERVER_NAME%.out