본 절에서는 JEUS 서버를 실행하는 명령어에 대해 설명한다.
JEUS 서버를 실행하는 명령어는 다음의 2가지로 나뉜다.
DAS(Domain Administration Server)를 실행하는 startDomainAdminServer 명령
MS(Managed Server)를 실행하는 startManagedServer 명령
서버 실행 명령들은 해당 서버의 Launcher를 실행한다. Launcher는 서버를 실행시키기 위한 준비작업을 완료한 뒤 실제 서버 JVM을 기동한다. DAS는 실제 서비스가 되는 MS를 관리하는 서버로 관리자의 명령을 MS로 전달하는 Agent 역할을 한다.
실행 명령어는 다음의 디렉터리에 위치한다.
JEUS_HOME/bin/
본 절에서는 DAS와 MS를 기동하는 방법에 대해서 설명한다.
jeusadmin이나 WebAdmin과 같은 툴을 통해 MS를 관리하기 위해서는 먼저 DAS를 기동해야 한다.
DAS는 각 MS와 통신하고 각 MS는 각 HOST 머신에서 동작한다. 도메인에 속한 모든 서버는 하나의 설정 파일인 다음의 파일을 공유한다. 해당 설정 파일에서 자신의 동작에 필요한 설정들을 읽어 동작한다.
JEUS_HOME/domains/DOMAIN_NAME/config/domain.xml
다음은 DAS를 기동하기 위해 startDomainAdminServer 명령을 실행하는 과정이다.
DAS를 기동하려면 각 OS별로 다음의 명령을 실행한다.
UNIX나 Linux
startDomainAdminServer
Windows
startDomainAdminServer.cmd
명령 프롬프트에 startDomainAdminServer를 입력한 뒤 아래의 설정들을 추가한다.
domain.xml을 수정하면 서버를 디버그 모드로 운영할 수 있다. 이 설정 방법은 “3.4. 디버그 모드의 JEUS 서버 실행”을 참고한다.
startDomainAdminServer [-h] [-domain <domain-name> -server <das-name>] [-u <username> -p <password>] [-cachelogin] [-f <filename>] [-force] [-standby] [-rolling] [-verbose]
다음은 명령어 옵션에 대한 설명이다.
옵션 | 설명 |
---|---|
[-h] | 명령의 도움말을 출력한다. |
[-domain <domain-name>] | 기동할 DAS가 속한 도메인의 이름을 설정한다. |
[-server <das-name>] | 기동할 DAS의 이름을 설정한다. |
[-u <username>] [-p <password>] | 서버를 기동하는 주체를 의미한다. [-u] 및 [-p]는 관리자 ID와 패스워드를 의미하며, 서버 실행을 위한 필수 입력사항이다. |
[-cachelogin] | [-u], [-p] 옵션으로 입력한 로그인 정보를 캐시한다. 캐시한 로그인 정보가 존재할 경우 별도의 옵션이 없어도 자동으로 사용자 정보가 채워진다. 권장하지 않는 기능으로 자세한 내용은 "JEUS Security 안내서"를 참고한다. |
[-f <filename>] | 관리자의 로그인 정보를 가진 파일의 경로를 지정한다. [-u], [-p] 옵션을 대체한다. |
[-force] | 등록된 애플리케이션이 모두 RUNNING 상태가 아니더라도, 서버의 상태를 강제로 RUNNING으로 만든다. |
[-standby] | 서버를 STANDBY 상태로 기동시킨다. |
[-rolling] | Rolling Patch를 위한 옵션으로 내부적으로 사용하는 옵션이다. 부팅할 때 사용자가 설정하면 안된다. |
[-verbose] | Launcher를 종료하지 않고 서버에서 발생하는 로그를 Launcher 화면에 출력할지 여부를 지정한다. |
MS를 기동할 때 옵션은 DAS를 기동할 때의 옵션과 대부분이 동일하다. MS에서는 특별히 dasurl 옵션이 추가로 존재하며, 이는 MS를 기동할 때 DAS로부터 설정 파일을 받아오는 데 사용된다.
다음은 MS를 기동하기 위해 startManagedServer 명령을 실행하는 과정이다.
MS를 기동하려면 다음의 명령을 실행한다.
UNIX나 Linux
startManagedServer
Windows
startManagedServer.cmd
명령 프롬프트에 startManagedServer를 입력한 뒤 아래의 설정들을 추가한다.
startManagedServer [-h] [-domain <domain-name> -server <das-name>] [-u <username> -p <password>] [-cachelogin] [-f <filename>] [-force] [-standby] [-rolling] [-verbose] [-dasurl <das-url>]
다음은 명령어 옵션에 대한 설명이다.
옵션 | 설명 |
---|---|
[-h] | 명령의 도움말을 출력한다. |
[-domain <domain-name>] | 기동할 MS가 속한 도메인의 이름을 설정한다. |
[-server <das-name>] | 기동할 MS의 이름을 설정한다. 필수 입력사항이다. |
[-u <username>] [-p <password>] | 서버를 기동하는 주체를 의미한다. [-u] 및 [-p]는 관리자 ID와 패스워드를 의미하며, 서버 실행을 위한 필수 입력사항이다. |
[-cachelogin] | [-u], [-p] 옵션으로 입력한 로그인 정보를 캐시한다. 캐시한 로그인 정보가 존재할 경우 별도의 옵션이 없어도 자동으로 사용자 정보가 채워진다. 권장하지 않는 기능으로 자세한 내용은 "JEUS Security 안내서"를 참고한다. |
[-f <filename>] | 관리자의 로그인 정보를 가진 파일의 경로를 지정한다. [-u], [-p] 옵션을 대체한다. |
[-force] | 등록된 애플리케이션이 모두 RUNNING 상태가 아니더라도, 서버의 상태를 강제로 RUNNING으로 만든다. |
[-standby] | 서버를 STANDBY 상태로 기동시킨다. |
[-rolling] | Rolling Patch를 위한 옵션으로 내부적으로 사용하는 옵션이다. 부팅할 때 사용자가 설정하면 안된다. |
[-verbose] | Launcher를 종료하지 않고 서버에서 발생하는 로그를 Launcher 화면에 출력할지 여부를 지정한다. |
[-dasurl <das-url>] | 자신이 속한 도메인을 관리하는 DAS의 URL 주소를 지정한다. DAS로부터 새로운 설정 파일을 받아올 수 있도록 URL 주소를 설정할 것을 권장한다. |
암호화 툴을 이용하여 security.key 파일을 마스터 패스워드로 암호화한 경우 서버를 기동할 때 마스터 패스워드를 입력해야 한다. security.key 파일에는 대칭키 암호화 알고리즘의 키가 저장된다. 암호화 툴에 관한 자세한 사항은 “4.6. encryption”을 참조한다.
서버를 기동할 때 security.key 파일이 암호화되어 있는 경우 다음과 같은 콘솔 입력 화면이 나타나면서 마스터 패스워드의 입력을 기다린다. 마스터 패스워드가 맞지 않는다면 서버 실행이 불가능하다.
The encryption key file is encrypted. Enter the master password. Password>
디버그 모드로 JEUS 서버를 실행할 경우, JPDA 지원 디버거를 사용하여 서블릿과 EJB 애플리케이션을 디버그할 수 있다. JEUS 서버를 디버그 모드로 시작하기 위해서는 각 서버의 jvm-option 설정에 다음과 같이 디버그 옵션을 추가한다.
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8888
“8888”의 디버그 Port(디버그 Port는 JPDA 디버거가 JVM에 접근할 때 사용된다)를 사용하여 JEUS 서버를 디버그 모드에서 동작하도록 한다.
수정된 설정으로 JEUS 서버를 기동한다. 그런 다음 JPDA를 지원하는 IDE(Integrated Development Environment)를 사용하여 EJB와 서블릿 애플리케이션을 디버그한다.
각 서버의 jvm-option 설정을 통해 시스템 환경변수 등도 설정이 가능하다. JEUS에서 사용하는 시스템 환경변수에 대해서는 “Part I, 시스템 프로퍼티”를 참조한다. “1.1. 개요”에서는 JVM에서 사용하는 “-D” 옵션에 대하여 설명하고 있다.
jvm-option 설정은 해당 서버에만 적용된다는 것을 유의한다.