웹서버, WAS 작동 및 상태 확인
웹서버 작동 및 상태 확인
$ cd /svc/test/web/instances/test01/
| 명령 | 명령어 |
|---|---|
| 시작 | $ ./apachectl start |
| 종료 | $ ./apachectl stop |
| 재시작 | $ ./apachectl restart |
| 상태체크 | $ ./apachectl status |
| 프로세스 확인 | *$ ps –ef \ |




WAS 작동 및 상태 확인
$ cd svc/test/was/domains/$SERVER_NAME/*.sh
| 스크립트 파일 | 설명 |
|---|---|
| env.sh | JBoss 운영환경 주요 환경 설정 스크립트 |
| start.sh | JBoss Standalone 인스턴스 실행 스크립트 |
| shutdown.sh | JBoss Standalone 인스턴스 정상 종료 스크립트 |
| kill.sh | JBoss 강제 종료 스크립트 |
| nohup.sh | nohup 로그의 tail 보기 스크립트 |
| tail.sh | JBoss server.log 파일 tail 보기 스크립트 |
| status.sh | JBoss 인스턴스가 실행중인지 체크하는 스크립트 |
| jboss-cli.sh | JBoss CLI 모드로 접속하는 스크립트 |
| jconsole.sh | JConsole로 접속하여 JMX Bean 정보를 확인하기 위한 스크립트(GUI 환경 필요) |
| add-user.sh | 사용자를 추가하기 위한 스크립트 |
| dump.sh | 인스턴스 장애시 Java Process의 Thread Dump를 받기 위한 스크립트 |
| encrypt.sh | 데이터베이스 접속 패스워드를 암호화하기 위한 스크립트 |
| jdr.sh | JBoss Diagnostics Report를 생성하는 스크립트 |








EPEL(Extra Packages for Enterprise Linux)는 RHEL, CentOS에 제공되는 추가 패키지에 대한 레파지토리이다.
#OPENMARU Installer을 RHEL 6.x나 CentOS 6.x에 설치할 경우 EPEL 레파지토리를 설정#하여야 한다.
- RHEL 6.x, CentOS 6.x에서는 아래 명령을 실행하여 EPEL을 설치하여야 한다.
$ wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
$ yum localinstall epel-release-6-8.noarch.rpm
설치
OPENMARU Installer 제품 설치
EPEL 레파지토리가 설정되었다면, yum 명령으로 OPENMARU Installer을 설치할 수 있다.
$ sudo yum install khan-provisioning-cli
Loaded plugins: langpacks, refresh-packagekit
opennaru | 951 B 00:00
opennaru/x86_64/primary | 1.3 kB 00:00
opennaru 1/1
Resolving Dependencies
*/} Running transaction check
-*/} Package khan-provisioning-cli.noarch 0:1.0.0-99 will be installed
… 중략 …
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
khan-provisioning-cli noarch 1.0.0-99 opennaru 107 M
Installing for dependencies:
PyYAML x86_64 3.10-7.fc19 fedora 157 k
================================================================================
Install 1 Package (+8 Dependent packages)
Total download size: 111 M
Installed size: 134 M
Is this ok [y/d/N]: **y**
Downloading packages:
(1/9): libyaml-0.1.4-4.fc19.x86_64.rpm | 54 kB 00:01
(2/9): PyYAML-3.10-7.fc19.x86_64.rpm | 157 kB 00:02
… 중략 …
python-paramiko.noarch 0:1.10.1-1.fc19 sshpass.x86_64 0:1.05-4.fc19
Complete!
OPENMARU Installer 제품은 /opt/khan/provisioning/cli 디렉토리에 설치된다.
제품 업데이트
OPENMARU Installer이 업그레이드되었다면, yum update 명령으로 제품을 업그레이드 할 수 있다.
$ yum update
만약 사용자 PC에 있는 yum 레파지토리 정보 캐시를 제거하고 update를 하려면 다음과 같은 명령으로 캐시를 삭제한 후 update하면 레파지토리 메타데이터를 다시 다운로드 받아 설치할 수 있다. clean 명령은 Update 주기가 짧을 때 사용할 수 있다.
$ yum clean expire-cache
$ yum update
디렉토리 구조
OPENMARU Installer 제품은 /opt/khan/provisioning/cli 디렉토리에 설치되며, 하위 디렉토리 구조는 아래와 같다.

OPENMARU Installer 홈 디렉토리
OPENMARU Installer실행 로그
설치된 설정과 설치 보고서가 보관됨
설치에 사용할 제품 설정 파일 위치
설치에 사용할 제품 바이너리 파일 위치
라이선스 발급 및 설치
OPENMARU Installer을 사용하려면 sales@openmaru.io로 연락하여 라이선스를 발급받는다.
발급된 라이선스는 문자열로 /opt/khan/provisioning/cli/license.lic 파일에 저장한다.
/opt/khan/provisioning/cli/license.lic
$ vi /opt/khan/provisioning/cli/license.lic
bmF0dXJlQ29udGVudHEAfgABeHB1cgACW0Ks8xf4BghU4AIAeHhwAAAA0PauuX7h
rO0ABXNdADFuZXQubmljaG9sYXN3aWxsaWFtcy5qYXZhLmxpY2Vuc2luZy5TaWdu
i12ooa8wDjfBsBl1cQB+AAMAAAEACUMfQQ7YR8s2cADv4Er0UdI4a29BgxVi9Vl4
+cUk+5hK0VmpZpuD5a0q6yZQQ7las6I5Sg6pf4kMFvsdFrmXfICjnKbT0A8GvZRy
9Zc85eQyExeSIBtwXwyvBjSX6zex9q7cbqouaAD3JVFBQ0r80cgSBFgg+AS8ErrH
e1nQI0SfYlNpfmehMVkctNLzlVx1eHypgOcvUERvUlVbUregsQ==
필요파일 다운로드
access.redhat.com 계정을 입력하면 자동으로 다운로드 한다.
OPENMARU Installer은 JBoss EAP, EWS 바이너리를 함께 배포하지 않는다. JBoss 제품은 Red Hat 의 JBoss Subscription을 구매하여야 http://access.redhat.com 에서 다운로드 할 수 있다. OPENMARU Installer을 실행하면, 먼저 설치에 필요한 파일들이 있는지 체크하고 없으면 http://access.redhat.com에서 다운로드 받기 위해 access.redhat.com의 아이디와 패스워드를 묻는다. 설치에 필요한 파일들을 모두 다운로드 한다. JDK 파일도 Oracle 홈페이지에서 자동으로 다운로드 한다.
다운로드는 맨 처음 실행시에만 다운로드 하며, 이후에는 다운로드 하지 않는다.
먼저 다운로드 받아 놓은 파일들이 있으면 /opt/khan/provisioning/cli/files 디렉토리에 파일을 저장하면 된다.

- 미리 다운로드 받은 JBoss EAP 6.2.0 파일들이 있으면 아래 디렉토리에 복사한다.
| /opt/khan/provisioning/cli/files/jboss-eap/6.2.0에 복사할 JBoss EAP파일명 | 설명 |
|---|---|
| jboss-eap-6.2.0.zip | JBoss EAP 6.2 |
| jboss-eap-native-6.2.0-RHEL5-x86_64.zip | RHEL 5용 Native 컴포넌트 |
| jboss-eap-native-6.2.0-RHEL5-i386.zip | RHEL 5 32bit용 Native 컴포넌트 |
| jboss-eap-native-6.2.0-RHEL6-x86_64.zip | RHEL 6용 Native 컴포넌트 |
| jboss-eap-native-6.2.0-RHEL6-i386.zip | RHEL 6 32bit용 Native 컴포넌트 |
| jboss-eap-native-utils-6.2.0-RHEL5-x86_64.zip | RHEL 5용 Native 유틸리티 |
| jboss-eap-native-utils-6.2.0-RHEL5-i386.zip | RHEL 5 32bit용 Native 유틸리티 |
| jboss-eap-native-utils-6.2.0-RHEL6-x86_64.zip | RHEL 6용 Native 유틸리티 |
| jboss-eap-native-utils-6.2.0-RHEL6-i386.zip | RHEL 6 32bit용 Native 유틸리티 |
| jboss-eap-native-webserver-connectors-6.2.0-RHEL5-x86_64.zip | RHEL 5용 웹서버 커넥터 |
| jboss-eap-native-webserver-connectors-6.2.0-RHEL5-i386.zip | RHEL 5 32bit용 웹서버 커넥터 |
| jboss-eap-native-webserver-connectors-6.2.0-RHEL6-x86_64.zip | RHEL 6용 웹서버 커넥터 |
| jboss-eap-native-webserver-connectors-6.2.0-RHEL6-i386.zip | RHEL 6 32bit용 웹서버 커넥터 |
- 미리 다운로드 받은 JBoss EAP 6.1.0 파일들이 있으면 아래 디렉토리에 복사한다.
| /opt/khan/provisioning/cli/files/jboss-eap/6.1.0에 복사할 JBoss EAP파일명 | 설명 |
|---|---|
| jboss-eap-6.1.0.zip | JBoss EAP 6.1 |
| jboss-eap-native-6.1.0-RHEL5-x86_64.zip | RHEL 5용 Native 컴포넌트 |
| jboss-eap-native-6.1.0-RHEL5-i386.zip | RHEL 5 32bit용 Native 컴포넌트 |
| jboss-eap-native-6.1.0-RHEL6-x86_64.zip | RHEL 6용 Native 컴포넌트 |
| jboss-eap-native-6.1.0-RHEL6-i386.zip | RHEL 6 32bit용 Native 컴포넌트 |
| jboss-eap-native-utils-6.1.0-RHEL5-x86_64.zip | RHEL 5용 Native 유틸리티 |
| jboss-eap-native-utils-6.1.0-RHEL5-i386.zip | RHEL 5 32bit용 Native 유틸리티 |
| jboss-eap-native-utils-6.1.0-RHEL6-x86_64.zip | RHEL 6용 Native 유틸리티 |
| jboss-eap-native-utils-6.1.0-RHEL6-i386.zip | RHEL 6 32bit용 Native 유틸리티 |
| jboss-eap-native-webserver-connectors-6.1.0-RHEL5-x86_64.zip | RHEL 5용 웹서버 커넥터 |
| jboss-eap-native-webserver-connectors-6.1.0-RHEL5-i386.zip | RHEL 5 32bit용 웹서버 커넥터 |
| jboss-eap-native-webserver-connectors-6.1.0-RHEL6-x86_64.zip | RHEL 6용 웹서버 커넥터 |
| jboss-eap-native-webserver-connectors-6.1.0-RHEL6-i386.zip | RHEL 6 32bit용 웹서버 커넥터 |
- 미리 다운로드 받은 JBoss EWS 2.0.1 파일들이 있으면 아래 디렉토리에 복사한다.
| /opt/khan/provisioning/cli/files/jboss-ews/2.0.1에 복사할 JBoss EWS파일명 | 설명 |
|---|---|
| jboss-ews-httpd-2.0.1-RHEL5-x86_64.zip | RHEL 5용 JBoss EWS |
| jboss-ews-httpd-2.0.1-RHEL5-i386.zip | RHEL 5 32bit용 JBoss EWS |
| jboss-ews-httpd-2.0.1-RHEL6-x86_64.zip | RHEL 6용 JBoss EWS |
| jboss-ews-httpd-2.0.1-RHEL6-i386.zip | RHEL 6 32bit용 JBoss EWS |
- 미리 다운로드 받은 Oracle JDK 1.6, 1.7 파일들이 있으면 아래 디렉토리에 복사한다.
| /opt/khan/provisioning/cli/files/jdk 에 복사할 JDK파일명 | 설명 |
|---|---|
| /opt/khan/provisioning/cli/files/jdk/1.6/jdk-6u45-linux-amd64.rpm | Linux x86_64 용 JDK 1.6 |
| /opt/khan/provisioning/cli/files/jdk/1.6/jdk-6u45-linux-i586.rpm | Linux 32bit용 JDK 1.6 |
| /opt/khan/provisioning/cli/files/jdk/1.7/jdk-7u25-linux-x64.rpm | Linux x86_64용 JDK 1.7 |
| /opt/khan/provisioning/cli/files/jdk/1.7/jdk-7u25-linux-i586.rpm | Linux 32bit용 JDK 1.7 |
빠른 설정 및 실행
설정 파일 수정
$ cd /opt/khan/provisioning/cli
$ cp hosts-jboss.sample hosts-jboss
$ vi hosts-jboss
대상 서버 IP 설정
예를 들어 IP가 *192.168.0.20**이고 호스트 이름이 *test01인 서버에 JBoss EAP와 JBoss EWS를 모두 설치한다면, 다음과 같이 hosts 파일의 IP와 호스트 이름을 변경한다.
[jboss-eap] 섹션은 JBoss EAP가 설치될 서버를 의미하며, [jboss-ews] 섹션은 JBoss EWS가 설치될 서버를 의미한다.
/opt/khan/provisioning/cli/hosts-ews-httpd-jboss-eap.sample 파일을 복사하여 수정한다.
$ cd /opt/khan/provisioning/cli/
$ cp hosts-ews-httpd-jboss-eap.sample hosts-test
$ vi hosts-test
파일 내에서 ‘#’으로 시작하는 라인은 주석이다.
# --------------------------------------------------------
# OPENMARU Installer - JBoss EAP 6.1, EWS 2.0.1
# Apache Tomcat 7.0.42, Apache HTTPD 2.2.25
#
# contact : service@opennaru.com
# Copyright(C) 2013, opennaru.com
# --------------------------------------------------------
# /========================================================/ #
# /********************************************************************************************/ #
# JBoss EAP 6.1.1
# /========================================================/ #
# --------------------------------------------------------
# JBoss EAP Hosts
# --------------------------------------------------------
# JBoss EAP를 설치할 머신의 IP를 지정합니다.
#
# seq는 머신의 번호로 0부터 일련번호 숫자를 지정합니다.
# --------------------------------------------------------
#
[jboss-eap]
# ========================================================
192.168.0.20 seq=0
… 중략 …
#
# domain controller가 될 서버의 IP 주소
#
domain_controller=192.168.0.20
… 중략 …
# /========================================================/ #
# /********************************************************************************************/ #
# JBoss EWS 2.0.1
# /========================================================/ #
# --------------------------------------------------------
# JBoss EWS Hosts
# --------------------------------------------------------
[jboss-ews]
# ========================================================
# EWS가 설치될 서버 IP 목록
# wseq는 머신의 번호로 0부터 일련번호 숫자를 지정합니다.
# --------------------------------------------------------
192.168.0.20 wseq=0
# ========================================================
JBoss EAP 설치하기
khan-provisioning-cli를 실행하고 아래 명령을 입력하면, 대상 서버에 JBoss EAP가 설치된다.
명령어 입력 시에는 앞의 몇 글자를 입력하고 [TAB] 키를 누르면, 명령어가 자동 완성된다.
$ cd /opt/khan/provisioning/cli**
[root@opennaru cli]# ./khan-provisioning-cli
==================================================
오 픈 나 루 OPENMARU Installer 라이센스 정보
--------------------------------------------------
* 회사명 : 오픈나루 주식회사
* 사용자 : 홍길동
* 이메일 : service@opennaru.com
* 핸드폰 : 010-1234-1234
* 제품명 : OPENMARU Installer
* 발행자 : opennaru.com
* 시작일 : 2013.08.01 00:00
* 종료일 : 2013.12.31 23:59
==================================================
.----------------. .----------------. .----------------. .-----------------.
| .--------------. || .--------------. || .--------------. || .--------------. |
| | ___ ____ | || | ____ ____ | || | __ | || | ____ _____ | |
| | |_ ||_ _| | || | |_ || _| | || | / \ | || ||_ \|_ _| | |
| | | |_/ / | || | | |__| | | || | / /\ \ | || | | \ | | | |
| | | __'. | || | | __ | | || | / ____ \ | || | | |\ \| | | |
| | _| | \ \_ | || | _| | | |_ | || | _/ / \ \_ | || | _| |_\ |_ | |
| | |____||____| | || | |____||____| | || ||____| |____|| || ||_____|\____| | |
| | | || | | || | | || | | |
| '--------------' || '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------' '----------------'
Version:1.0.0-99
opennaru.com OPENMARU Installer
khan-provisioning> **action --package JBossEAPStandaloneMode --command setup --user root --component all --inventory hosts-jboss**
----------------------------------------------------------------
* JBoss EAP를 설치할 서버 리스트
> 192.168.0.20 machine_id=1 is_eap_first_server=true
----------------------------------------------------------------
* 설치에 사용할 템플릿 이름 : default
* JBoss WAS 설치디렉토리 : /svc/test/was
* JBoss 인스턴스 구성디렉토리 : /svc/test/was/domains
* JBoss 로그 디렉토리 : /svc/test/logs/was
* 서버당 JBoss 인스턴스 개수 : 3
* JBoss 인스턴스 이름 : server
* JBoss 도메인 설정
> 도메인 인스턴스 프로파일 : full-ha
> 도메인 컨트롤러 IP : 192.168.0.20
> 도메인 컨트롤러 Hostname : opennaru
> 도메인 서버그룹 이름 : server-group
* JBoss Standalone 설정
> Standalone 프로파일 : standalone-ha.xml
> Standalone 외부 배포디렉토리 : /svc/test/was/domains/applications
* 설치할 Java 버전 : 1.6
* Java 메모리 옵션 :
> Heap Min : 64m
> Heap Max : 128m
> PermGen Max : 256m
* JBoss 데이터소스 설정 :
> Driver 이름 : mysql
> 연결풀 이름 : testDS
> JNDI 이름 : java:jboss/datasources/testDS
> Connection URL : jdbc:mysql://192.168.0.22:3306/test
> 연결풀 Min 개수 : 10
> 연결풀 Max 개수 : 250
> User : root
> Password :
> Prepared Statement Cache Size : 200
* 세션 복제 형식 :
> 웹 세션복제 : repl
> EJB 세션복제 : repl
> 클러스터링 방식 : udp
> 세션 복제 멀티캐스트 IP : 230.1.1.1
> JMS 멀티캐스트 IP : 231.7.1.1
> mod_cluster 멀티캐스트 IP : 224.1.1.105
>>>>> 설정을 변경하시려면, /opt/khan/provisioning/cli/hosts 파일을 수정하십시오.
>>>>> 설치에 사용할 설정은 위와 같습니다. 설치를 계속할까요? (Y/n) **[엔터]**
SSH password: **[패스워드입력]**
… 중략…
JBoss EWS설치하기
khan-provisioning-cli를 실행하고 아래 명령을 입력하면, 대상 서버에 JBoss EWS가 설치된다.
khan-provisioning> action --package JBossEAPEWSHTTPD --command setup --user root --component all--inventory hosts-jboss
----------------------------------------------------------------
* JBoss EWS를 설치할 서버 리스트
> 192.168.0.20 machine_id=1 is_ews_first_server=true
----------------------------------------------------------------
* JBoss EWS 설치에 사용할 템플릿 이름 : default
* JBoss EWS를 설치할 디렉토리 : /svc/test/web
* JBoss EWS 로그 디렉토리 : /svc/test/logs/web
* JBoss EAP 연결 방식 : mod_jk
* mod_cluster 멀티캐스트 IP : 224.1.1.105
----------------------------------------------------------------
* JBoss EAP 연결 설정시 mod_jk에서 사용하는 JBoss EAP 서버 리스트
> 192.168.0.20 machine_id=1 is_eap_first_server=true
----------------------------------------------------------------
>>>>> 설정을 변경하시려면, /opt/khan/provisioning/cli/hosts 파일을 수정하십시오.
>>>>> 설치에 사용할 설정은 위와 같습니다. 설치를 계속할까요? (Y/n)
SSH password: [패스워드입력]
… 중략…
웹서버에 접속하여 확인
http://192.168.0.20/에 접속하면 다음과 같이 OPENMARU Installer이 자동 생성 한 초기화면이 출력된다. Standalone으로 설치된 각 인스턴스의 웹 관리 콘솔에 접속하는 URL들과 세션 복제를 테스트하기 위한 session.war 애플리케이션에 접속하기 위한 URL들이 출력된다. 웹서버와 EAP의 연결은 mod_jk(기본값)을 이용하여 연결되었고, mod_jk의 연결 상태를 확인하기 위한 jkstatus 접속 URL도 제공된다.
- http://192.168.0.20/ 🡸 설치한 웹서버 IP

mod_jk와mod_cluster를 선택하였을 때 생성되는index.html파일mod_cluster_manager페이지와mod_jk의jkstatus페이지


다음 장에서는 기본값을 변경하여 상세히 설정하는 방법을 살펴보자.
session.war내에 index.jsp 파일은 세션 정보를 출력하는 페이지이고, dstest.jsp 파일은 데이터 소스 연결을 테스트하는 애플리케이션이다.
session/index.jsp세션정보 페이지

session/dstest.jsp데이터소스 연결 테스트 페이지

