본 장에서는 JEUS의 환경설정 및 기동 방법에 대한 기본적인 내용을 설명한다.
JEUS WebAdmin은 웹을 통해 JEUS의 모든 요소를 관리할 수 있는 서비스를 제공한다. 사용자는 쉽게 JEUS에 접근하여 시스템 설정과 모니터링 및 애플리케이션을 관리할 수 있다.
다음 순서에 따라 WebAdmin을 실행한다.
커맨드 창에서 startMasterServer 파일을 실행해서 JEUS MASTER를 실행한다.
다음은 JEUS MASTER를 실행하는 예제이다.
C:\jeus\bin>startMasterServer -u administrator -p <password>
**************************************************************
- JEUS Home : C:\jeus
- Added Java Option : -d64 -Djeus.vm.bits=64 -Djeus.io.buffer.size-per-pool=81920 -Djeus.cdi.enabled=false -Djeus.jms.server.manager.produce-wait-strategy-type=blocking -Djeus.servlet.sortWebinfLibraries=name_asc
***************************************************************
================ JEUS LICENSE INFORMATION ================
=== VERSION : JEUS 21 Fix#1 (21.0.0.1-b435)
=== EDITION: Enterprise (Trial License)
=== NOTICE: This license restricts the number of allowed clients.
=== Max. Number of Clients: 5
==========================================================
[2023.04.24 17:54:09][1] [launcher-1] [Config-0153] DomainConfigServiceProvider is jeus.service.descriptor.JEUSDomainDescriptorFile.
This license is not appropriate for product runtime mode. Replace the license with an appropriate one.
[2023.04.24 17:54:10][1] [launcher-1] [Config-0157] SecurityDomainsConfigServiceProvider is jeus.service.descriptor.SecurityDomainsDescriptorFile.
[2023.04.24 17:54:10][2] [launcher-1] [Launcher-0012] Starting the server [server1] with the command
/home/jdk1.8.0_251/bin/java -Dserver1 -Xms1024m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -d64 -Djeus.vm.bits=64 -Djeus.io.buffer.size-per-pool=81920 -Djeus.cdi.enabled=false -Djeus.jms.server.manager.produce-wait-strategy-type=blocking -Djeus.servlet.sortWebinfLibraries=name_asc -server -Xbootclasspath/p:/home/JEUS21001_installer/lib/system/extension.jar -classpath /home/JEUS21001_installer/lib/system/bootstrap.jar -Djava.security.policy=/home/JEUS21001_installer/domains/jeus21/config/security/policy -Djava.library.path=/home/JEUS21001_installer/lib/system:/home/webtob5004_B231_0_38//lib:/home/webtob5004_B231_0_38//lib:/home/webtob5004_B231_0_38//lib: -Djava.endorsed.dirs=/home/JEUS21001_installer/lib/endorsed -Djeus.properties.replicate=jeus,sun.rmi,java.util,java.net -Djava.util.logging.config.file=/home/JEUS21001_installer/bin/logging.properties -Dsun.rmi.dgc.server.gcInterval=3600000 -Djava.util.logging.manager=jeus.util.logging.JeusLogManager -Djeus.home=/home/JEUS21001_installer -Djava.net.preferIPv4Stack=true -Djeus.tm.checkReg=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Djeus.tool.webadmin.locale.language=ko -Djeus.domain.name=jeus21 -Djava.naming.factory.initial=jeus.jndi.JNSContextFactory -Djava.naming.factory.url.pkgs=jeus.jndi.jns.url -Djeus.server.protectmode=false -Dis.jeus.master=true -Dsun.net.http.errorstream.enableBuffering=true -Djeus.master.admin.ui.context.path=/webadmin -XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput -XX:LogFile=/home/JEUS21001_installer/domains/jeus21/servers/server1/logs/jvm.log jeus.server.admin.MasterServerBootstrapper -domain jeus21 -u administrator -verbose -server server1 .
[2023.04.24 17:54:10][2] [launcher-1] [Launcher-0014] The server[server1] is being started ...
[2023.04.24 17:54:10][1] [server1-1] [Config-0153] DomainConfigServiceProvider is jeus.service.descriptor.JEUSDomainDescriptorFile.
[2023.04.24 17:54:10][1] [server1-1] [Config-0157] SecurityDomainsConfigServiceProvider is jeus.service.descriptor.SecurityDomainsDescriptorFile.
[2023.04.24 17:54:12][2] [server1-1] [SERVER-0248] The JEUS server is STARTING.
[2023.04.24 17:54:12][0] [server1-1] [SERVER-0000] Version information - JEUS 21 Fix#1 (21.0.0.1-b435).
... 중략
[2023.04.24 17:54:29][2] [launcher-13] [Launcher-0034] The server[server1] initialization completed successfully[pid : 473].
[2023.04.24 17:54:29][0] [launcher-1] [Launcher-0040] Successfully started the server[server1]. The server state is now RUNNING..
startMasterServer 스크립트는 JEUS_HOME/bin/ 디렉터리에 위치하며 시스템 경로(path)에 설정되어 있어야 한다.
웹 브라우저를 열고 WebAdmin에 접속해서 JEUS를 설치할 때 설정했던 JEUS에 대한 로그인 ID와 패스워드를 입력한다. MASTER의 Base Port는 9736이며, WebAdmin은 Base Port를 통해 접속한다.
http://<localhost>:9736/webadmin
성공적으로 인증되었다면 다음과 같은 WebAdmin 메인 화면으로 이동한다.
MS는 실제 애플리케이션을 서비스하기 위한 엔진들과 여러 서비스들을 관장하는 서버 인스턴스를 의미한다. MS는 도메인에 여러 개 존재할 수 있다. MS의 주요 역할은 사용자가 deploy하는 애플리케이션을 서비스하고, 애플리케이션이 필요로 하는 리소스나 서비스를 제공하는 것이다.
다음은 새로운 MS를 추가하고, 추가된 MS에 리스너를 추가하는 방법이다.
WebAdmin 메인 화면에서 Master Server를 선택한 후 JEUS Master 화면 상단 메뉴에서 [서버]를 선택한다. 서버 목록 화면에서 [추가] 버튼을 클릭한다.
서버 추가 화면에서 설정 항목의 값을 설정하고 [추가] 버튼을 클릭한다.
MS를 기동하려면 'BASE'라는 리스너를 이용하는데, 기본값이 '9736'으로 설정된다. 이는 MASTER와 값이 동일하여 정상적으로 기동되지 않을 수 있으므로 변경해야 한다.
서버에 추가가 완료되면 서버 목록 화면에서 동적 설정으로 MS가 생성된 것을 확인할 수 있다.
서버 목록 화면에서 서버를 선택하고 [Resource] > [Listener] 메뉴를 선택한다. Listeners 화면에서 'BASE' 리스너를 선택하면 상세 정보 페이지로 이동하여 설정한 리스너 확인이 가능하다.
Listeners 상세 정보화면에서 [수정] 버튼을 클릭해서 수정 모드로 변경한 후 'Listener' 항목을 변경하고 [저장] 버튼을 클릭한다.
새로 추가된 MS를 구동하기 위한 설정은 기본 설정으로 충분하며, 추가로 HTTP 리스너 추가하여 웹 엔진을 이용한 서비스하기 위해서는 리스너 및 커넥터 설정을 추가적으로 진행해야 한다.
WebAdmin 메인 화면에서 Master Server를 선택한 후 JEUS Master 화면 상단 메뉴에서 [서버]를 선택한다. 서버 목록 화면에서 서버를 선택한 후 [Resource] > [Listener] 메뉴를 선택한다. Listeners 화면에서 [추가] 버튼을 클릭한다.
Listener 추가 화면에서 'Name'과 'Listen Port' 등의 항목 값을 설정하고 [추가] 버튼을 클릭한다.
다른 리스너에서 사용하는 Port와 중복되지 않도록 설정한다.
서버 목록 화면에서 서버를 선택하고 [Engine] > [Web Engine] > [Web Connections] 탭을 선택한다. Web Connections 화면에서 [추가] 버튼을 클릭한 후 [HttpListener] 메뉴를 선택한다.
Http Listener 추가 화면에서 'Name'과 'Server Listener Ref' 등의 항목을 설정한다. 'Server Listener Ref'는 이전에 설정한 'http-listener'를 콤보박스에서 선택한다. 설정이 완료되면 [추가] 버튼을 클릭한다.
Web Engine 목록 화면([그림 7.10])에서 등록된 정보를 확인한다.
데이터소스(Datasource)는 데이터베이스와 Jakarta EE 프로그램을 연결하기 위해 사용된다.
예제에서는 JEUS에 기본적으로 포함되어 있는 Apache Derby 데이터베이스를 사용한다. Apache Derby는 JEUS_HOME\derby에 포함되어 있다. 만약 Derby가 실행되어 있지 않다면 다음과 같이 실행한다.
UNIX/Linux에서 또는 Windows의 명령 프롬프트에서 다음과 같이 실행한다.
JEUS_HOME\bin> startderby
추후에 Derby를 종료하기 위해서는 다음과 같이 실행한다.
JEUS_HOME\bin> stopderby
Derby를 JEUS에서 사용하려면 Derby의 JDBC 드라이버 파일인 derbyclient.jar가 JEUS_HOME\lib\datasource에 위치해야 한다(기본적으로 포함되어 있다). Derby에 대한 자세한 내용은 http://db.apache.org/derby/를 참고한다.
예제에서는 sample이라는 데이터베이스를 jdbc/sample이라는 데이터소스 이름으로 사용한다.
다음은 데이터소스를 추가하는 방법에 대한 설명이다.
WebAdmin 메인 화면에서 Master Server를 선택한 후 JEUS Master 화면 상단 메뉴에서 [리소스]를 선택한다. 설정 메뉴에서 [DataSource]를 선택한 후 Data Source 화면에서 [추가] 버튼을 클릭한다.
Database 추가 화면에서 기본 정보를 설정한 후 [추가] 버튼을 클릭한다.
Data Source 화면에서 생성된 데이터소스가 데이터소스 목록에 조회된 것을 확인할 수 있다.
JEUS Master 화면 상단 메뉴에서 [서버]를 선택한 후 서버 목록에서 서버를 선택한 후 [Basic] > [Basic Info]를 선택한다. 서버 설정 화면에서 [수정] 버튼을 클릭해서 수정 모드로 변경한 후 'Data Source' 항목에 적용할 데이터소스를 선택한다.
WebAdmin을 통해 MS를 기동하려면 MASTER 및 HostManager가 실행된 상태여야 한다. MASTER 및 HostManager가 실행된 상태에서 WebAdmin을 사용해서 MS를 기동 및 종료할 수 있다. 단, WebAdmin 내 host 정보가 추가되어 있어야 하며, 실행할 서버의 node name에 host id가 추가되어야 한다.
WebAdmin 메인 화면에서 Master Server를 선택한 후 JEUS Master 화면 상단 메뉴에서 [서버]를 선택한다. 서버 목록에서 서버를 선택한 후 [시작], [종료] 버튼을 클릭하면 해당 서버를 기동하거나 종료할 수 있다.