제8장 시스템 설정

내용 목차

8.1. WebAdmin 사용
8.1.1. 기본 환경 구성
8.1.2. Managed Server(MS)의 추가와 설정
8.1.3. 데이터소스 추가
8.1.4. WebAdmin에서 서버 기동 및 종료

본 장에서는 JEUS의 환경설정 및 기동 방법에 대한 기본적인 내용을 설명한다.

8.1. WebAdmin 사용

WebAdmin을 사용해서 시스템을 구성하는 방법은 다음의 순서로 설명한다.

  • 기본 환경설정

  • MS의 추가와 설정 방법

  • 데이터소스 추가

8.1.1. 기본 환경 구성

JEUS WebAdmin은 웹을 통해 JEUS의 모든 요소를 관리할 수 있는 서비스를 제공한다. 사용자는 쉽게 JEUS에 접근하여 시스템 설정과 모니터링 및 애플리케이션을 관리할 수 있다.

다음 순서에 따라 WebAdmin을 실행한다.

  1. 커맨드 창에서 startDomainAdminServer 파일을 실행해서 JEUS DAS를 실행한다.

    참고

    startDomainAdminServer 스크립트는 JEUS_HOME/bin/ 디렉터리에 위치하며 시스템 경로(path)에 설정되어 있어야 한다. WebAdmin을 사용하기 위해서는 domain.xml에 <enable-webadmin>이 설정되어 있어야 한다. 자세한 내용은 JEUS WebAdmin 안내서”의 “2.2. 로그인”을 참고한다.

    다음은 JEUS DAS를 실행하는 예제이다.

    C:\Documents and Settings\Administrator>startDomainAdminServer -u administrator -p <password>
    **************************************************************
      - JEUS Home         : C:\TmaxSoft\JEUS7.0
      - Added Java Option :
      - Java Vendor       : Sun
    **************************************************************
    
    C:\TmaxSoft\JEUS7.0\bin>"C:\Java\jdk1.6.0_45\bin\java" -server -Xmx512m -Xbootclasspath/p:"C:\TmaxSoft\JEUS7.0\lib\system\extension.jar" 
    -classpath "C:\TmaxSoft\JEUS7.0\lib\system\jeus-launcher.jar;
    C:\TmaxSoft\JEUS7.0\lib\system\xalan.jar;C:\TmaxSoft\JEUS7.0\lib\system\jaxb-impl.jar;
    C:\TmaxSoft\JEUS7.0\lib\system\woodstox.jar;
    C:\TmaxSoft\JEUS7.0\lib\system\xml_resource.jar;C:\TmaxSoft\JEUS7.0\lib\system\commons-cli.jar;
    C:\TmaxSoft\JEUS7.0\lib\system\jaxb2-basics-runtime.jar;C:\TmaxSoft\JEUS7.0\lib\system\javaee.jar;
    C:\TmaxSoft\JEUS7.0\lib\system\tmaxjce_jdk15x.jar" -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 
    -Djeus.jvm.version=hotspot -Djeus.tool.webadmin.locale.language=ko -Djeus.home="C:\TmaxSoft\JEUS7.0" 
    -Djava.naming.factory.initial=jeus.jndi.JNSContextFactory -Djava.naming.factory.url.pkgs=jeus.jndi.jns.url 
    -Djava.library.path="C:\TmaxSoft\JEUS7.0\lib\system" -Djava.endorsed.dirs="C:\TmaxSoft\JEUS7.0\lib\endorsed" 
    -Djava.util.logging.manager=jeus.util.logging.JeusLogManager -Djava.util.logging.config.file="C:\TmaxSoft\JEUS7.0\bin\logging.properties" 
    -Djeus.properties.replicate=jeus,java.util.logging,sun.rmi.dgc -Djava.net.preferIPv4Stack=true  jeus.launcher.Launcher -u administrator -p <password>
    
    ================ JEUS LICENSE INFORMATION ================
    === VERSION : JEUS 7.0 (Fix#2) (7.0.0.2-b113)
    === EDITION: Enterprise (Trial License)
    === NOTICE: This license restricts the number of allowed clients.
    === Max. Number of Clients: 5
    ==========================================================
    This license is not appropriate for product runtime mode. Replace the license with an appropriate one.
    [2013.06.25 14:57:53][2] [launcher-1] [Launcher-0012] Starting the server [adminServer] with the command
     C:\Java\jdk1.6.0_45\jre\bin\java -DadminServer -Xmx1024m -XX:MaxPermSize=128m -server 
    -Xbootclasspath/p:C:\TmaxSoft\JEUS7.0\lib\system\extension.jar -classpath C:\TmaxSoft\JEUS7.0\lib\system\bootstrap.jar 
    -Djava.security.policy=C:\TmaxSoft\JEUS7.0\domains\jeus_domain\config\security\policy -Djava.library.path=C:\TmaxSoft\JEUS7.0\lib\system 
    -Djava.endorsed.dirs=C:\TmaxSoft\JEUS7.0\lib\endorsed -Djeus.properties.replicate=jeus,java.util.logging,sun.rmi.dgc -Djeus.jvm.version=hotspot 
    -Djava.util.logging.config.file=C:\TmaxSoft\JEUS7.0\bin\logging.properties -Dsun.rmi.dgc.server.gcInterval=3600000 
    -Djava.util.logging.manager=jeus.util.logging.JeusLogManager -Djeus.home=C:\TmaxSoft\JEUS7.0 -Dsun.rmi.dgc.client.gcInterval=3600000 
    -Djeus.tool.webadmin.locale.language=ko -Djeus.domain.name=jeus_domain -Djava.naming.factory.initial=jeus.jndi.JNSContextFactory 
    -Djava.naming.factory.url.pkgs=jeus.jndi.jns.url -Djeus.server.protectmode=false -XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput 
    -XX:LogFile=C:\TmaxSoft\JEUS7.0\domains\jeus_domain\servers\adminServer\logs\jvm.log jeus.server.admin.DomainAdminServerBootstrapper 
    -u administrator -p <password> -domain jeus_domain -server adminServer .
    [2013.06.25 14:57:53][2] [launcher-1] [Launcher-0014] The server[adminServer] is being started ...
    [2013.06.25 14:57:59][2] [adminServer-1] [SERVER-0248] The JEUS server is STARTING.
    [2013.06.25 14:57:59][0] [adminServer-1] [SERVER-0000] Version information - JEUS 7.0 (Fix#2) (7.0.0.2-b113).
    
    ... 중략
    
    [2013.06.25 14:58:06][2] [adminServer-1] [SERVER-0248] The JEUS server is STANDBY.
    [2013.06.25 14:58:06][2] [adminServer-1] [SERVER-0248] The JEUS server is STARTING.
    [2013.06.25 14:58:06][2] [adminServer-1] [WEB-3413] The web engine is ready to receive requests.
    [2013.06.25 14:58:06][2] [adminServer-1] [SERVER-0602] Successfully sent the JoinedAndReady event. JEUS GMS=[Group=jeus_domain_896627143,
    ServerToken=adminServer]
    [2013.06.25 14:58:06][2] [adminServer-1] [UNIFY-0100] Listener information
      BASE (plain, 0.0.0.0 : 9736) - VIRTUAL - SecurityServer
                                             - FileTransfer
                                             - BootTimeFileTransfer
                                             - ClassFTP
                                             - JNDI
                                             - JMXConnectionServer/JeusMBeanServer
                                             - JMXConnectionServer/JEUSMP_adminServer
                                             - GMS-NetworkManager
                                             - TransactionManager
                                 - HTTP Listener
        http-server (plain, 0.0.0.0 : 8808) - VIRTUAL
                                            - HTTP Listener
        jms-internal (plain, 0.0.0.0 : 9941) - VIRTUAL - JMSServiceChannel-internal
    
    [2013.06.25 14:58:06][0] [adminServer-1] [SERVER-0242] Successfully started theserver.
    [2013.06.25 14:58:06][2] [adminServer-1] [SERVER-0248] The JEUS server is RUNNING.
    [2013.06.25 14:58:06][2] [adminServer-1] [SERVER-0401] The elapsed time to start: 12406ms.
    [2013.06.25 14:58:06][2] [launcher-10] [Launcher-0034] The server[adminServer] initialization completed successfully[pid : 1400].
    [2013.06.25 14:58:06][0] [launcher-1] [Launcher-0040] Successfully started the server. The server state is now RUNNING.
  2. 웹 브라우저를 열고 WebAdmin에 접속해서 JEUS를 설치할 때 설정했던 JEUS에 대한 로그인 ID와 패스워드를 입력한다.

    http://<localhost>:9736/webadmin

    [그림 8.1] 로그인 화면

    로그인 화면

    참고

    DAS의 Base Port는 9736이며, WebAdmin은 Base Port를 통해 접속한다.

  3. 성공적으로 인증되었다면 다음과 같은 WebAdmin 메인 화면으로 이동한다.

    [그림 8.2] 초기 화면

    초기 화면


8.1.2. Managed Server(MS)의 추가와 설정

MS는 실제 애플리케이션을 서비스하기 위한 엔진들과 여러 서비스들을 관장하는 서버 인스턴스를 의미한다. MS는 도메인에 여러 개 존재할 수 있다. MS의 주요 역할은 사용자가 deploy하는 애플리케이션을 서비스하고, 애플리케이션이 필요로 하는 리소스나 서비스를 제공하는 것이다.

Managed Server 추가

다음은 새로운 MS를 추가하고, 추가된 MS에 리스너를 추가하는 방법이다.

  1. WebAdmin 왼쪽 메뉴 영역의 [Servers]를 선택하면 서버 목록 조회 화면으로 이동한다. 서버를 추가하기 위해 [ADD] 버튼을 클릭한다.

    [그림 8.3] MS 추가 - 서버 목록 조회 화면

    MS 추가 - 서버 목록 조회 화면

    참고

    설정 내용의 동적 반영을 위해서 먼저 [LOCK & EDIT] 버튼을 클릭해서 설정 변경 모드로 변경해야 한다. 설정 변경 모드로 변경하지 않으면 [ADD] 버튼은 활성화되지 않는다.

  2. Server 화면에서 각 설정 항목의 값을 설정하고 [확인] 버튼을 클릭한다.

    [그림 8.4] MS 추가 - 기본 정보 설정

    MS 추가 - 기본 정보 설정


  3. 설정 내용의 동적 반영을 위해 화면 왼쪽의 [Activate Changes] 버튼을 클릭한다.

  4. 서버에 반영이 완료되면 다음과 같이 결과 메시지가 출력된다. 동적 설정으로 MS가 생성된 것을 확인할 수 있다.

    [그림 8.5] MS 추가 - 서버 추가 결과 확인

    MS 추가 - 서버 추가 결과 확인


  5. MS를 기동하려면 'BASE'라는 리스너를 이용하는데, 기본값이 '9736'으로 설정된다. 이는 DAS와 값이 동일하여 정상적으로 기동되지 않을 수 있으므로 변경해야 한다.

    WebAdmin 왼쪽 메뉴의 [Servers]를 선택하면 서버 목록 조회 화면으로 이동한다.

    조회된 서버 목록에서 원하는 서버를 선택하고 [Resource] > [Listener] 메뉴를 선택한다. Listeners 화면에서 'BASE' 리스너를 클릭하면 상세 정보 페이지로 이동한다.

    [그림 8.6] MS 추가 - 리스너 선택

    MS 추가 - 리스너 선택


  6. 'Listener Port' 항목을 '9736'이 아닌 다른 값으로 설정하고 [확인] 버튼을 클릭한다.

    [그림 8.7] MS 추가 - 리스너 설정 변경

    MS 추가 - 리스너 설정 변경


  7. 화면 왼쪽의 [Activate Changes] 버튼을 클릭해서 서버에 설정 내용을 반영한다.

HTTP 리스너 및 커넥터 설정

새로 추가된 MS를 구동하기 위한 설정은 기본 설정으로 충분하며, 웹 엔진을 이용하여 서비스하기 위해서는 리스너 및 커넥터 설정을 추가적으로 진행해야 한다.

  1. WebAdmin 왼쪽 메뉴의 [Servers]를 선택하면 서버 목록 조회 화면으로 이동한다.

    조회된 서버 목록에서 원하는 서버를 선택하고 [Resource] > [Listener] 메뉴를 선택한다. Listeners 화면에서 [ADD] 버튼을 클릭한다.

    [그림 8.8] HTTP 리스너 설정 - 리스너 추가

    HTTP 리스너 설정 - 리스너 추가


    참고

    설정 내용의 동적 반영을 위해서 먼저 [LOCK & EDIT] 버튼을 클릭해서 설정 변경 모드로 변경해야 한다. 설정 변경 모드로 변경하지 않으면 [ADD] 버튼은 활성화되지 않는다.

  2. Listener 화면에서 'Name''Listen Port' 등의 항목의 값을 설정하고 [확인] 버튼을 클릭한다.

    [그림 8.9] Http 리스너 설정 - 기본 정보 설정

    Http 리스너 설정 - 기본 정보 설정


    참고

    다른 리스너에서 사용하는 Port와 중복되지 않도록 설정한다.

  3. [Engine] > [Web Engine] > [Web Connections] 메뉴를 선택하여 Web Connections 화면으로 이동한다. 본 예제에서는 HTTP 리스너 설정에 대해 설명하므로, [HTTP] 버튼을 클릭한다.

    [그림 8.10] Http 리스너 설정 - Web Connection 추가

    Http 리스너 설정 - Web Connection 추가

  4. Http Listener 화면에서 'Name''Server Listener Ref' 등의 항목을 설정한다. 'Server Listener Ref'는 이전에 설정한 'http-listener'를 콤보박스에서 선택한다. 설정이 완료되면 [확인] 버튼을 클릭한다.

    [그림 8.11] Http 리스너 설정 - Web Connection 기본 설정

    Http 리스너 설정 - Web Connection 기본 설정


  5. 설정 내용의 동적 반영을 위해 화면 왼쪽의 [Activate Changes] 버튼을 클릭한다.

WebtoB 커넥터 설정

JEUS 7.0에서는 JEUS 6.0에서 내장 WebtoB를 띄워주던 ws engine이 존재하지 않는다. 따라서 내장 WebtoB를 사용하기 위해서는 WebtoB 환경 파일을 컴파일하여 내장 WebtoB를 수동으로 띄우는 과정과 WebtoB 커넥터를 추가하여 내장 WebtoB와 연결하는 과정이 필요하다.

  1. 내장 WebtoB 환경 파일($JEUS_HOME/webserver/config/ws_engine.m)을 컴파일한다.

    참고

    기본적으로 인스톨 되어있는 내장 WebtoB의 환경 파일은 컴파일되어있지 않기 때문에 컴파일한 후에 기동해야 한다.

    C:\TmaxSoft\JEUS7.0\webserver\config>wscfl -i ws_engine.m
    
    Current configuration:
            Number of client handler(HTH) = 1
            Supported maximum user per node = 2018
            Supported maximum user per handler = 2018
    
    Successfully created the configuration file (C:/TmaxSoft/JEUS7.0/webserver/config/wsconfig) for node paper-PC.
    The host name of the running machine is paper-PC.
    
    C:\TmaxSoft\JEUS7.0\webserver\config>

  2. 내장 WebtoB를 기동한다.

    C:\TmaxSoft\JEUS7.0\webserver\config>wsboot
    
    Booting WebtoB on node (paper-PC)
    Starting WSM at 04/30/13 11:06:56
    Starting HTL at 04/30/13 11:06:56
    Starting HTH at 04/30/13 11:06:56
             Current WebtoB Configuration:
                    Number of client handlers (HTH) = 1
                    Supported maximum user per node = 2018
                    Supported maximum user per handler = 2018
    Starting SVR(C:/TmaxSoft/JEUS7.0/webserver/bin/htmls.exe) at 04/30/13 11:06:56
    Starting SVR(C:/TmaxSoft/JEUS7.0/webserver/bin/cgis.exe) at 04/30/13 11:06:56
    Starting SVR(C:/TmaxSoft/JEUS7.0/webserver/bin/ssis.exe) at 04/30/13 11:06:56
    
    C:\TmaxSoft\JEUS7.0\webserver\config>

  3. WebAdmin 왼쪽 메뉴의 [Servers]를 선택하면 서버 목록 조회 화면으로 이동한다.

    조회된 서버 목록에서 원하는 서버를 선택하고 [Engine] > [Web Engine] > [Web Connections] 메뉴를 선택하여 Web Connections 화면으로 이동한다. 본 예제에서는 WebtoB 커넥터 설정에 대해 설명하므로, [WEBTOB] 버튼을 클릭한다.

    [그림 8.12] WebtoB 커넥터 설정 - Web Connections 추가

    WebtoB 커넥터 설정 - Web Connections 추가


    참고

    설정 내용의 동적 반영을 위해서 먼저 [LOCK & EDIT] 버튼을 클릭해서 설정 변경 모드로 변경해야 한다. 설정 변경 모드로 변경하지 않으면 [WEBTOB] 버튼은 보이지 않는다.

  4. WebtoB Connector 화면에서 'Name''WebtoB Home''Thread Pool Number' 등의 항목을 설정한다. 설정이 완료되면 [확인] 버튼을 클릭한다.

    [그림 8.13] WebtoB 커넥터 설정 - Web Connection 기본 설정

    WebtoB 커넥터 설정 - Web Connection 기본 설정


    참고

    Thread Pool Number를 설정할 때 WebtoB의 설정을 참고하여 설정할 수 있도록 한다.

    Installer로 설치한 후 내장 WebtoB의 설정을 변경하지 않은 경우 Thread Pool 수는 기본값인 5로 사용하면 된다.

  5. 설정 내용의 동적 반영을 위해 화면 왼쪽의 [Activate Changes] 버튼을 클릭한다.

  6. WebtoB Connector 설정을 적용하기 위해 JEUS를 재기동한다.

8.1.3. 데이터소스 추가

데이터소스(Datasource)는 데이터베이스와 Java 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이라는 데이터소스 이름으로 사용한다.

다음은 데이터소스를 추가하는 방법에 대한 설명이다.

  1. WebAdmin 왼쪽 메뉴의 [Resource] > [DataSource]를 선택하면 Data Source 화면으로 이동한다. 데이터소스 추가를 위해 Database 메뉴의 [ADD] 버튼을 클릭한다.

    [그림 8.14] 데이터소스 추가 - JDBC 데이터 목록

    데이터소스 추가 - JDBC 데이터 목록


    참고

    설정 내용의 동적 반영을 위해서 먼저 [LOCK & EDIT] 버튼을 클릭해서 설정 변경 모드로 변경해야 한다. 설정 변경 모드로 변경하지 않으면 [ADD] 버튼은 활성화되지 않는다.

  2. Database 화면의 기본 정보를 설정한 후 [확인] 버튼을 클릭한다.

    [그림 8.15] 데이터소스 추가 - 기본 정보 설정

    데이터소스 추가 - 기본 정보 설정


  3. 다음과 같이 생성된 데이터소스가 데이터소스 목록에 조회된 것을 확인할 수 있다.

    [그림 8.16] 데이터소스 추가 - 목록 조회

    데이터소스 추가 - 목록 조회


  4. WebAdmin 왼쪽 메뉴의 [Servers]를 선택하여 조회된 서버 목록에서 원하는 서버를 선택하면 Server 화면으로 이동한다. 'Data Source' 항목에 방금 추가한 데이터소스가 표시되고 적용할 데이터소스를 선택하면 된다.

    [그림 8.17] 데이터소스 추가 - 데이터소스 선택

    데이터소스 추가 - 데이터소스 선택


8.1.4. WebAdmin에서 서버 기동 및 종료

WebAdmin을 통해 MS를 기동하려면 DAS가 실행된 상태여야 한다. DAS가 실행된 상태에서 WebAdmin을 통해 MS를 기동 및 종료할 수 있다. 단, 서버에 노드 매니저가 실행되어 있거나 SSH 설정이 되어 있어야 한다. 자세한 내용은 "JEUS Node Manager 안내서"를 참고한다.

참고

windows의 경우 SSH가 동작하지 않는다. 따라서 Windows에서는 노드 매니저를 실행한 후에 MS를 기동하도록 한다.

다음은 WebAdmin에서 MS를 기동하는 과정에 대한 설명이다.

  1. WebAdmin 왼쪽 메뉴의 [Servers]를 선택하면 서버 목록 조회 화면으로 이동한다.

    조회된 서버 목록에서 원하는 서버를 선택하고 [Resource] > [Listener] 메뉴를 선택한다. Listeners 화면에서 [ADD] 버튼을 클릭한다.

  2. 조회된 서버 목록에서 원하는 서버의 [start], [stop] 버튼을 통해 해당 서버를 기동하거나 종료할 수 있다.

    [그림 8.18] JEUS WebAdmin에서의 MS 제어 화면

    JEUS WebAdmin에서의 MS 제어 화면