본 절에서는 JEUS 서버를 기동 및 종료하는 명령어에 대해 설명한다.
JEUS 서버를 실행하는 명령어는 다음의 2가지로 나뉜다.
서버 실행 명령어들은 해당 서버의 Launcher를 실행한다. Launcher는 서버를 실행시키기 위한 준비작업을 완료한 뒤 실제 서버 JVM을 기동한다. DAS는 실제 서비스가 되는 MS를 관리하는 서버로 관리자의 명령을 MS로 전달하는 Agent 역할을 한다.
JEUS 서버를 종료하는 명령어는 서버 종류에 관계 없이 하나이다.
서버 기동 및 종료 명령어는 다음의 디렉터리에 위치한다
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 <user-name> -p <password>] [-cachelogin] [-f <file-name>] [-force] [-standby] [-rolling] [-verbose] [-giturl <repository-address>]
다음은 명령어 옵션에 대한 설명이다.
옵션 | 설명 |
---|---|
[-h] | 명령의 도움말을 출력한다. |
[-domain <domain-name>] | 기동할 DAS가 속한 도메인의 이름을 설정한다. |
[-server <das-name>] | 기동할 DAS의 이름을 설정한다. |
[-u <user-name>] [-p <password>] | 서버를 기동하는 주체를 의미한다. [-u] 및 [-p]는 관리자 ID와 패스워드를 의미하며, 서버 실행을 위한 필수 입력사항이다. |
[-cachelogin] | [-u], [-p] 옵션으로 입력한 로그인 정보를 캐시한다. 캐시한 로그인 정보가 존재할 경우 [-p] 옵션을 대체할 수 있다. 권장하지 않는 기능으로 자세한 내용은 "JEUS Security 안내서"를 참고한다. |
[-f <file-name>] | 캐시 로그인 정보를 가진 파일의 경로를 지정한다. |
[-force] | 등록된 애플리케이션이 모두 RUNNING 상태가 아니더라도, 서버의 상태를 강제로 RUNNING으로 만든다. |
[-standby] | 서버를 STANDBY 상태로 기동시킨다. |
[-rolling] | Rolling Patch를 위한 옵션으로 내부적으로 사용하는 옵션이다. 부팅할 때 사용자가 설정하면 안된다. |
[-verbose] | Launcher를 종료하지 않고 서버에서 발생하는 로그를 Launcher 화면에 출력할지 여부를 지정한다. |
[-giturl <repository-address>] | 설정 파일을 받아올 Git 저장소의 url을 https 프로토콜의 형태로 지정한다. 기존 도메인에 있던 설정 파일은 제거되기 때문에 사용하는 경우 유의해야 한다. 자세한 내용은 "JEUS Server 안내서"를 참고한다. |
MS를 기동할 때 옵션은 DAS를 기동할 때의 옵션과 대부분이 동일하다. MS에서는 특별히 dasurl 옵션이 추가로 존재하며, 이는 MS를 기동할 때 DAS로부터 설정 파일을 받아오는 데 사용된다.
다음은 MS를 기동하기 위해 startManagedServer 명령을 실행하는 과정이다.
MS를 기동하려면 다음의 명령을 실행한다.
UNIX나 Linux
startManagedServer
Windows
startManagedServer.cmd
명령 프롬프트에 startManagedServer를 입력한 뒤 아래의 설정들을 추가한다.
startManagedServer [-h] [-domain <domain-name> -server <server-name>] [-u <user-name> -p <password>] [-cachelogin] [-f <file-name>] [-force] [-standby] [-rolling] [-verbose] [-giturl <repository-address>] [-dasurl <das-url>]
다음은 명령어 옵션에 대한 설명이다.
옵션 | 설명 |
---|---|
[-h] | 명령어의 도움말을 출력한다. |
[-domain <domain-name>] | 기동할 MS가 속한 도메인의 이름을 설정한다. |
[-server <server-name>] | 기동할 MS의 이름을 설정한다. 필수 입력사항이다. |
[-u <user-name>] [-p <password>] | 서버를 기동하는 주체를 의미한다. [-u] 및 [-p]는 관리자 ID와 패스워드를 의미하며, 서버 실행을 위한 필수 입력사항이다. |
[-cachelogin] | [-u], [-p] 옵션으로 입력한 로그인 정보를 캐시한다. 캐시한 로그인 정보가 존재할 경우 [-p] 옵션을 대체할 수 있다. 권장하지 않는 기능으로 자세한 내용은 "JEUS Security 안내서"를 참고한다. |
[-f <file-name>] | 캐시 로그인 정보를 가진 파일의 경로를 지정한다. |
[-force] | 등록된 애플리케이션이 모두 RUNNING 상태가 아니더라도, 서버의 상태를 강제로 RUNNING으로 만든다. |
[-standby] | 서버를 STANDBY 상태로 기동시킨다. |
[-rolling] | Rolling Patch를 위한 옵션으로 내부적으로 사용하는 옵션이다. 부팅할 때 사용자가 설정하면 안된다. |
[-verbose] | Launcher를 종료하지 않고 서버에서 발생하는 로그를 Launcher 화면에 출력할지 여부를 지정한다. |
[-giturl <repository-address>] | 설정 파일을 받아올 Git 저장소의 url을 https 프로토콜의 형태로 지정한다. 기존 도메인에 있던 설정 파일이 제거될 수 있기 때문에 사용하는 경우 유의해야 한다. 자세한 내용은 "JEUS Server 안내서"를 참고한다. |
[-dasurl <das-url>] | 자신이 속한 도메인을 관리하는 DAS의 URL 주소를 지정한다. DAS로부터 새로운 설정 파일을 받아올 수 있도록 URL 주소를 설정할 것을 권장한다. |
다음은 서버를 종료하기 위해 stopServer 명령을 실행하는 과정이다.
서버를 종료하려면 다음의 명령을 실행한다.
UNIX나 Linux
stopServer
Windows
stopServer.cmd
명령 프롬프트에 stopServer를 입력한 뒤 아래의 설정들을 추가한다.
stopServer [-host <host:port>] [-server <server-name> -dasurl <address:port>] [-u <user-name> -p <password>] [-cachelogin -domain <domain-name> -f <cachelogin-file>] [-g -to <timeout>]
다음은 명령어 옵션에 대한 설명이다.
옵션 | 설명 |
---|---|
[-host <host:port>] | 종료시키려는 서버의 호스트 정보를 host:port 형태로 지정한다. |
[-server <server-name> -dasurl <address:port>] | 종료시키려는 MS의 이름을 [-server] 옵션에 지정하고, MS가 위치한 DAS의 주소 정보를 [-dasurl] 옵션에 address:port 형태로 지정한다. [-host] 옵션과 함께 사용할 수 없다. |
[-u <user-name> -p <password>] | 서버를 종료하는 주체를 의미한다. [-u] 및 [-p]는 관리자 ID와 패스워드를 의미한다. |
[-cachelogin -domain <domain-name> -f <cachelogin-file>] | [-u], [-p] 옵션으로 입력한 로그인 정보를 캐시한다. 캐시 로그인 정보를 지정하는 key로 domain이름을 사용한다. 따라서 [-domain] 옵션을 통해 domain 이름을 지정해야 한다. [-f] 옵션은 캐시 로그인 정보를 가진 파일의 경로를 지정하기 위한 옵션으로, 미지정시 기본값인 ~/.jeusadmin/.jeuspasswd 로 지정된다. 캐시한 로그인 정보가 존재할 경우 [-p] 옵션을 대체할 수 있다. 권장하지 않는 기능으로 자세한 내용은 "JEUS Security 안내서"를 참고한다. |
[-g -to <timeout>] | Graceful하게 종료할지 여부를 설정한다. [-to] 옵션을 통해 Graceful하게 종료할 때 사용할 타임아웃을 설정할 수 있다. 처리 중인 요청을 입력한 시간만큼 완료되길 기다린다. (단위: second) [-to] 옵션을 미지정할 경우 처리 중인 요청이 끝나길 무한히 기다린다. |
암호화 툴을 이용하여 security.key 파일을 마스터 패스워드로 암호화한 경우 서버를 기동할 때 마스터 패스워드를 입력해야 한다. security.key 파일에는 대칭키 암호화 알고리즘의 키가 저장된다. 암호화 툴에 관한 자세한 사항은 “4.5. 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 설정은 해당 서버에만 적용된다는 것을 유의한다.