wscfl -i filename.m
JEUS는 따로이 컴파일 할 것은 없으나 읽어들이는 XML파일들이 있다. 주로 많이 바뀌는 것이 WEBMain.xml이다.
down : jeusadmin hostname jeusexit -Uadministrator -Ppassword
1. WebtoB
=========================================
*DOMAIN
webtob
*NODE
nitgenaix WEBTOBDIR="/users/hite95/webtob", <== WebtoB가 설치된 디렉토리
SHMKEY = 54000,
DOCROOT="/users/hite95/webtob/docs", <== WebtoB의 document root
PORT = "8080", <== WebtoB의 접속포트(브라우저가 접속할)
HTH = 1,
LOGGING = "log1",
ERRORLOG = "log2",
ServiceOrder="ext,uri", <== (추가) ext(확장자), uri(경로) 순서로 분기 우선순위
JSVPORT = 9900 <== JEUS 와 연동할 포트(WEBMain.xml에 있는 포트와 동일)
*SVRGROUP
htmlg NODENAME = "nitgenaix", SvrTYPE = HTML
cgig NODENAME = "nitgenaix", SVRTYPE = CGI
ssig NODENAME = "nitgenaix", SVRTYPE = SSI
jsvg NODENAME = "nitgenaix", SVRTYPE = JSV <== JEUS 와 연동하기 위한 서버그룹
*SERVER
html SVGNAME = htmlg, MinProc = 2, MaxProc = 10
cgi SVGNAME = cgig, MinProc = 4, MaxProc = 10
ssi SVGNAME = ssig, MinProc = 2, MaxProc = 10
MyGroup SVGNAME = jsvg, MinProc = 25, MaxProc = 30
*URI
uri1 Uri = "/cgi-bin/", Svrtype = CGI
uri2 Uri = "/examples/", Svrtype = JSV <== 위에서 ServiceOrder가 "ext,uri"인 경우는 설정할 필요 없음.
*ALIAS
alias1 URI = "/cgi-bin/", REalPath = "/users/hite95/webtob/cgi-bin/"
*LOGGING
log1 Format = "DEFAULT", FileName = "/users/hite95/webtob/log/access.log"
log2 Format = "ERROR", FileName = "/users/hite95/webtob/log/error.log"
*EXT
htm MimeType = "text/html", SvrType = HTML
jsp MimeType = "application/jsp", SvrType = JSV, SVRNAME = MyGroup
* wscfl -i <환경설정파일> 로 환경설정 파일을 새로 컴파일 해 주셔야 합니다.
2. JEUS에서 WEBMain.xml 편집
================================================================
...
<webserver-connection>
<http-listener> <==== 이것은 JEUS 내장 간이 웹서버 설정입니다.
<listener-id>http1</listener-id>
<port>8088</port> <==== http://ip:8088/로 접속하면 됩니다.
<output-buffer-size>8192</output-buffer-size>
<thread-pool>
<min>25</min>
<max>30</max>
<step>2</step>
<max-idle-time>1000</max-idle-time>
</thread-pool>
</http-listener>
<webtob-listener> <=== WebtoB와의 연동을 위해서 추가해야 하는 부분입니다.
<listener-id>webtob1</listener-id>
<port>9900</port> <=== WebtoB의 JSVPORT 와 동일해야 합니다.
<webtob-address>127.0.0.1</webtob-address> <=== WebtoB의 IP 입니다.
<registration-id>MyGroup</registration-id> <=== WebtoB의 SERVER 명과 동일
<thread-pool>
<min>25</min>
<max>30</max>
</thread-pool>
</webtob-listener>
</webserver-connection>
...
================================================================
이와같이 설정하면 됩니다.
제우스는 서블릿을 자동으로 컴파일 하지 않습니다.
서블릿 컴파일은 다음과 같이 합니다.
[UNIX] .../WEB-INF/classes 아래서
javac -classpath .:$JEUS_HOME/classes:$JEUS_HOME/lib/system/jeus.jar -d . *.java
[WIN]
javac -classpath .;%JEUS_HOME%\classes;%JEUS_HOME%\lib\system\jeus.jar -d . *.java
jspwork 아래는 JSP파일이 컴파일 된것입니다.
JSP는 WEB-INF/classes에 두는 것이 아니라 CONTEXT 아래 두셔야 합니다.
가령 CONTEXT(DocBase)가 aaa라면
$SERVLET_HOME/GroupDocBase/aaa/*.jsp (하위 DIR 포함)
$SERVLET_HOME/GroupDocBase/aaa/WEB-INF/classes/*.class (패키지 포함)
/jeus/jeus33
/jeus/jeus33/WebtoB
JEUS_HOME=/jeus/jeus33
EJB_HOME=/jeus/jeus33/webhome/ejb_home (ejb 화일들이 놓이는 위치)
SERVLET_HOME=/ekp/enRiseEKP
--> /ekp/enRiseEKP/webhome/ekp (jsp 들이 놓이는 위치)
SERVLET_HOME + GroupDocBase + DocBase (container.xml 화일에서 설정)
부팅 : jstart
종료 : jdown
부팅 : wsboot
다운 : wsdown
디비 관련 설정 변경.
<User>ekp</User>
<Password>ekp</Password>
<PortNumber>1521</PortNumber>
<ServerName>211.46.52.17</ServerName>
$WEBTOBDIR/config/ekp.m 화일변경
DOCROOT="/ekp/enRiseEKP/webhome", (이부분 변경)
PORT = "80", ( 서비스 포트 변경)
웹투비 재기동
jeusadmin -version
jeusadmin -licensedue
$JEUS_HOME/license/license 라는 이름으로 존재.
----------------------------------------------------------------------------------------
1. 필요 프로그램
- j2sdk1.4.1_07 (http://java.sun.com) # j2sdk1.4.1_07 이하 버젼 권장 (1.4.2버젼대에서는 문제발생할 수 있음)
- jeus42.exe (http://www.tmax.co.kr)
- webtob_3.1.6(build3).exe (http://www.tmax.co.kr)
----------------------------------------------------------------------------------------
2. j2sdk1.4.1_07 설치
- path 맨 앞에 C:/jdk1.4.1_07/bin 설정
- classpath에 . 설정
----------------------------------------------------------------------------------------
3. JEUS42 설치
- JEUS42.exe를 실행
(windows2003 서버의 경우 installing... uninstall부분에서 정지시는 windows2000호환성모드로 다시 실행)
- http://www.tmax.co.kr의 download링크를 클릭 (회원가입필요)
JEUS license를 신청 -> 이메일을 통해 license부여받음 (90일 사용가능)
부여받은 license파일을 제우스홈license에 복사 (덮어쓰기)
- 설치 후 다음 세개의 파일을 자신의 환경에 맞게 편집
1) 제우스홈config노드명JEUSMain.xml
2) 제우스홈webhomeservlet_homewebappsexamplesweb-infweb.xml
3) 제우스홈config노드명노드명_servlet_engine1WEBMain.xml
-------------------------------------------------------------------------------------
4. webtob3.1.6 설치
- webtob_3.1.6(build3).exe 실행하여 설치
(windows2003에서 installing... uninstall부분에서 정지시는 windows2000호환성모드로 다시 실행)
- http://www.tmax.co.kr의 download링크를 클릭 (회원가입필요)
WEBTOB license를 신청 -> 이메일을 통해 license.dat부여 (90일 사용가능)
부여받은 license.dat파일을 c:webtoblicense에 복사 (덮어쓰기)
-------------------------------------------------------------------------------------
5. PATH 설정 후 리부팅 : 자신의 환경에 맞게 설정하고 시스템을 리부팅
(Program Files처럼 공백을 포함한 디렉토리를 가진 경로는 맨뒤로...)
ex) PATH=C:J2SDK1.4.1_07bin;C:webtobbin;C:WINDOWSsystem32;C:WINDOWS;C:WINDOW
SSystem32Wbem;C:webtobbin;C:Jeus42libetcantbin;C:Jeus42bin;C:Jeus42libsystem
-------------------------------------------------------------------------------------
6. WEBTOB 환경설정
1) 웹투비홈configsample.m을 카피해서 http.m을 생성
2) wscfl -i http.m을 커맨드창에서 실행 (webtob 환경설정)
정상결과 예)
Current configuration:
Number of client handler(HTH) = 1
Supported maximum user per node = 975
Supported maximum user per handler = 975
CFL is done successfully for node(노드명(노드명))
---------------------------------------------------------------------------------------
7. 시동
1) webtob를 실행
- webtob 실행 : wsboot
2) JEUS를 실행
- 우선 command창을 두개 띄웁니다.(제우스, 제우스관리자)
- 제우스창에 "jeus + 엔터"
- 제우스관리자창에 "jeusadmin 노드명 -U유져명 -P제우스패스워드 ->boot
- 제우스창에 에러(Exception)가 없다면 실행 성공!!!
--------------------------------------------------------------------------------------
8. 테스팅
- JEUS기본포트는 8088, webtob기본포트는 8080
- JSP 기본경로
제우스홈webhomeservlet_homewebappsexamples
http://127.0.0.1/examples/
- Servlet 기본경로
제우스홈webhomeservlet_homewebappsexamplesWEB-INFclasses
http://127.0.0.1/examples/
--------------------------------------------------------------------------------------
9. 종료
1) JEUS종료
- 제우스관리자창에 down -> jeusexit
2) WEBTOB종료
- 웹투비창에 wsdown -i
제우스 가상호스트 설정하기
웹투비에서 VHOST 설정하고 제우스에서 엔진컨테이너를 하나더 추가하여
추가된 엔진컨테이너를 VHOST SERVER와 연결하면 됩니다.
예를 들어주신 환경 기반에서 설정은 다음과 같습니다.
1) WEBTOB VHOST 설정(환경파일.m)
- 웹투비 설정이 변경되면 "wscfl -i 환경파일.m"으로 컴파일
===============================================
*DOMAIN
domainname
*NODE => 기존설정 그대로
camel2k
WEBTOBDIR="/home/jeus40/jeus40/webserver",
SHMKEY = 54000,
HOSTNAME = "aaa.aaa.co.kr",
DOCROOT="/root1", => DOCROOT가 다른곳이라면 해당 경로
PORT = "80",
LOGGING = "log1",
ERRORLOG = "log2",
JSVPORT = 9900,
HTH = 1
(참고) DOCROOT는 WEBTOB가 직접처리할 수있는 정적 자료 ROOT를 말합니다.
JEUS docbase와는 다른 곳입니다. 물론 여기 예에서는 같은 곳을
설정하고 있습니다.
보통 DOCROOT는 HTML/IMAGE/JS 등등이 위치하며, docbase는 Web Application
들을 두는 곳입니다. 즉, JSP/SERVLET/JAVA BEAN 등이 될 수 있습니다.
*VHOST => 추가
vhost1 DOCROOT="/root2", => DOCROOT가 다른곳이라면 해당 경로
PORT="80",
NODENAME = "camel2k",
HOSTNAME = "bbb.aaa.co.kr",
LOGGING = "log3",
ERRORLOG = "log4"
*SVRGROUP
htmlg NODENAME = "camel2k", SvrType = HTML
jsvg NODENAME = "camel2k", SVRTYPE = JSV
vhostg NODENAME = "camel2k", SVRTYPE = JSV, VHOSTNAME = vhost1 => 추가
*SERVER
html SVGNAME = htmlg, MinProc = 15, MaxProc = 20
MyGroup SVGNAME = jsvg, MinProc = 25, MaxProc = 30
MyGroup2 SVGNAME = vhostg, MinProc = 25, MaxProc = 30 => 추가
*URI
ex Uri = "/examples/",Svrtype = JSV
aaa Uri = "/AAA/",Svrtype = JSV => 기존설정 그대로
bbb Uri = "/BBB/",Svrtype = JSV => 기존설정 그대로
*LOGGING => log3, log4 추가
log1 Format = "DEFAULT", FileName = "/home/jeus40/jeus40/webserver/log/access.log", Option = "sync"
log2 Format = "ERROR", FileName = "/home/jeus40/jeus40/webserver/log/error.log", Option = "sync"
log3 Format = "DEFAULT", FileName = "/home/jeus40/jeus40/webserver/log/access_v1.log", Option = "sync"
log4 Format = "ERROR", FileName = "/home/jeus40/jeus40/webserver/log/error_v1.log", Option = "sync"
==================================================
2) 제우스 엔진 추가
- $JEUS_HOME/config/노드명/노드명_servlet_engine1 을 노드명_servlet_engine2 복사
- $JEUS_HOME/config/노드명/JEUSMain.xml에서 다음과 같이 <engine-container>를 모두
복사하여 추가후 아래와 같이 수정
<engine-container>
... 기존 설정 ...
</engine-container>
<engine-container>
<name>container2</name> => 변경
<command-option>-Xmx128m</command-option>
<system-log>
<target>stdout</target>
<buffer-size>0</buffer-size>
<level>debug</level>
</system-log>
<engine-command>
<type>servlet</type>
<name>engine2</name> => 변경
<startup-mode>xml</startup-mode>
</engine-command>
<engine-command> => EJB를 사용지 않으면 필요없음
<type>ejb</type>
<name>engine2</name> => 변경
<startup-mode>xml</startup-mode>
<deploy-mode>xml</deploy-mode>
</engine-command>
<tm-config>
<pooling>
<min>10</min>
<max>20</max>
<step>2</step>
<period>600000</period>
</pooling>
<active-timeout>300000</active-timeout>
<commit-timeout>120000</commit-timeout>
<capacity>20000</capacity>
</tm-config>
</engine-container>
- $JEUS_HOME/config/노드명/노드명_servlet_engine2/WEBMain.xml 수정
...
<servlet-home>/root2/</servlet-home> => 엔진1은 /root1/ 이겠지요?
<group-docbase></group-docbase>
...
<context>
<context-name>AAA</context-name>
=> jeus-web-dd_AAA.xml 존재 및 <docbase>AAA</docbase> 있어야함
<context-path>/AAA</context-path>
</context>
<context>
<context-name>BBB</context-name>
=> jeus-web-dd_BBB.xml 존재 및 <docbase>BBB</docbase> 있어야함
<context-path>/BBB</context-path>
</context>
<webserver-connection>
<webtob-listener>
<port>9900</port> => WEBTOB JSVPORT와 일치
<hth-count>1</hth-count> => WEBTOB HTH와 일치
<listener-id>webtob2</listener-id> => 다른값으로 수정
<output-buffer-size>2048</output-buffer-size>
<thread-pool>
<min>25</min> => WEBTOB MyGroup2의 MinProc과 일치
<max>30</max> => min 이상의 적당한 값
<step>1</step>
</thread-pool>
<webtob-address>웹투비주소</webtob-address> => Jeus 에 포함된 웹투비Light는 "localhost"만 설정할 수 있습니다.
<registration-id>MyGroup2</registration-id>
=> 추가된 VHOST SERVER 이름과 일치 여기서는 MyGroup2
</webtob-listener>
</webserver-connection>
그리고 나서 웹투비 제우스를 재기동하면 됩니다.
3) 테스트
http://aaa.aaa.co.kr/AAA/index.jsp => /root1/AAA/index.jsp 호출됨
http://bbb.aaa.co.kr/AAA/index.jsp => /root2/AAA/index.jsp 호출됨
댓글