티스토리 뷰

728x90
반응형

본 포스팅은 WAS 각 벤더사별 전환에 참고해야 할 사항들을 다루어보겠습니다.


WAS는 최신버전이 계속 나오고 있는 상황이라 본 포스팅에서는 모든 버전이 아닌 제한적인 버전을 다루고 있다는점을 알려드립니다.


1. J2EE Specification

먼저 Spec 호환에 대한 비교 자료입니다.

J2EE 버전

Weblogic 버전

JEUS 버전

Tomcat 버전

Websphere 버전 

 1.2

6.1

3 

3.3.x

 

 1.3

7.0 ~ 8.1

4

4.1.x

5

 1.4

9.2

5

5.5.x

6

 5

10

6

6.0.x

 


2. 프로세스 확인 방법

a. weblogic  

- 프로세스는 weblogic.Server로 구동이 되므로 다음과 같이 확인하면 된다.
    ps -ef | grep weblogic
- 프로세스를 확인하면 환경변수로 -Dbea.home=/usr/bea 와 같이 되어 있기 때문에 현재 운영중인 프로세스의 Weblogic의 홈을 확인할 수가 있다.

 

b. JEUS

- 여러프로세스로 나뉘며, 일반적으로 java로 grep 한다.

    ps -ef | grep java

- 마찬가지로 -Djeus.home=/home/jeus 와 같이 되어 있기 때문에 현재 운영중인 프로세스의 JEUS의 홈을 확인할 수 가 있다.

 

c. Tomcat

- Tomcat은 Multi-Instance로 띄워지지 않을 경우, 인스턴스 하나당 하나의 Java Process가 Fork된다. 통상적으로 환경변수에 CATALINA_HOME이 등록된다.
    ps –ef | grep java | grep catalina

- 마찬가지로 -Dcatalina.home=/home/narason/otherwas/tomcat 와 같이 되어 있기 때문에 현재 운영중인 프로세스의 JEUS의 홈을 확인할 수 가 있다.

 

d. Websphere

- 프로세스는 AppServer 로 확인하면 된다.
    ps -ef |grep AppServer
- 프로세스를 확인하면 환경변수로 -Dwas.install.root 와 같이 되어 있기 때문에 현재 운영중인 프로세스의 WebSphere가 설치된 디렉토리를 확인할 수가 있다.

 

# 참조

각 was 벤더 별 홈디렉토리 정리

weblogic : -Dbea.home=/home/bea

JEUS :  -Djeus.home=/home/jeus

Tomcat : -Dcatalina.home=/home/tomcat

Websphere : -Dwas.install.root=/home/websphere

 

3. 로그파일 위치

a. weblogic 

도메인로그 : $DOMAIN_NAME/servers/ADMIN_SERVER_NAME/logs/DOMAIN_NAME.log
서버로그 : $DOMAIN_NAME/servers/SERVER_NAME/logs/SERVER_NAME.log 

 

b. jeus

매니저로그 : $JEUS_HOME/logs/`hostname`/JeusServer.log

서버로그 : $JEUS_HOME/logs/`hostname`/`hostname`_containerName/containerName_data.log

 

c. Tomcat

- java.util.logging
Tomcat로그는, 기본적으로 $CATALINA_HOME/conf의 logging.properties에 설정된 정책을 따른다. 이는 JDK의 java.util.logging 을 상속받아 사용하는 것이다.

[logging.properties]

############################################################

# Handler specific properties.

# Describes specific configuration info for Handlers.

############################################################

1catalina.org.apache.juli.FileHandler.level = FINE

1catalina.org.apache.juli.FileHandler.directory

= ${catalina.base}/logs

1catalina.org.apache.juli.FileHandler.prefix = catalina.

2localhost.org.apache.juli.FileHandler.level = FINE

2localhost.org.apache.juli.FileHandler.directory

= ${catalina.base}/logs

2localhost.org.apache.juli.FileHandler.prefix = localhost.

3manager.org.apache.juli.FileHandler.level = FINE

3manager.org.apache.juli.FileHandler.directory

= ${catalina.base}/logs

3manager.org.apache.juli.FileHandler.prefix = manager.

4admin.org.apache.juli.FileHandler.level = FINE

4admin.org.apache.juli.FileHandler.directory

= ${catalina.base}/logs

4admin.org.apache.juli.FileHandler.prefix = admin.

5host-manager.org.apache.juli.FileHandler.level = FINE

5host-manager.org.apache.juli.FileHandler.directory

= ${catalina.base}/logs

5host-manager.org.apache.juli.FileHandler.prefix = host-manager.

java.util.logging.ConsoleHandler.level = FINE

java.util.logging.ConsoleHandler.formatter

= java.util.logging.SimpleFormatter


기본설정은 윗 logging.properties에서 보여지듯, $CATALINA_HOME/logs/아래에 생성되고, 아래는 그 예이다.


[$CATALINA_HOME/log]

[dspoc1:/home/narason/otherwas/tomcat/logs]ls -atlr

-rw-rw-r-- 1 narason narason 0 3월 18 17:06

manager.2008-03-18.log

 

- 액세스로그(access log)

액세스로그는 서버가 처리하는 각 요청마다 표준 포맷에 따라 한 라인씩 출력한다. Catalina에서는 Valve 구현을 통해, 웹서버들이 표준 포맷에 따라 생성하는 액세스 로그와 같은 포맷의 로그를 생성할 수도 있고, 또는 다양한 커스텀 포맷으로 로그를 생성할 수 있도록 하고 있다. server.xml에 Engine, Host, 또는 Context가 처리하는 모든 요청에 대한 액세스 로그를
생성하도록 지시할 수 있는데, 이는 다음과 같이 valve 엘리먼트를 중첩시키면된다. (기본적으로 주석처리 되어 있음.)
[server.xml의 AccessLog 설정]

<!--
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log."
suffix=".txt" pattern="common" resolveHosts="false"/>
-->


- Log4j
Tomcat에 Log4j를 공통적으로 적용시키는 방법은 간단하다.
1. log4j 모듈을 다운받아, $CATALINA_HOME/common/lib 에 위치시킨다.
2. $CATALINA_HOME/common/classes 폴더에 아래와 같이 log4j.properties 를 생성하여 사용한다.
[$CATALINA_HOME/common/classes/ log4j.properties]

log4j.rootLogger=DEBUG, R
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${catalina.home}/logs/tomcat.log
log4j.appender.R.MaxFileSize=10MB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n


4. admin console 웹관리자

a. Weblogic  

Admin Console은 Admin Server에서 돌아가게 되며, Managed Server는 이곳 Admin Console에서 목록 형태로 보여진다.
Admin Console의 접속정보는 DOMAIN_HOME/bin/startManagedWebLogic.sh 에서 ADMIN_URL 을 통해 알 수 있다. 접근 계정은 관리자에게 문의한다.
[예]
http://192.169.30.203:7001/console (http:// hostname : port /console)
아래의 화면은 Admin Console 에서 보여지는 Server1과 Server2 이다.

 

b. JEUS 

jeus는 adminConsole을 webadmin으로 표현한다. webadmin에 접속 후 설정을 변경하거나 반영 또는 서버 재기동 대부분의 컨트롤을 수행 할 수 있다.

[예] 

http://172.21.21.100:9736/ (http://hostname:port, default port는 9736)

 

c. Tomcat 

Tomcat의 경우, $CATALINA_HOME/conf 아래의 tomcat-users.xml에 Admin 권한을가진 사용자를 지정하는 경우가 많다.
예를 들면 아래와 같다.

 

[tomcat-users.xml]
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
    <role rolename="tomcat"/>
    <role rolename="role1"/>
    <role rolename="standard"/>
    <role rolename="manager"/>
    <user username="narason" password="1234" roles="standard,manager"/>
    <user username="tomcat" password="tomcat" roles="tomcat"/>
    <user username="both" password="tomcat" roles="tomcat,role1"/>
    <user username="role1" password="tomcat" roles="role1"/>
</tomcat-users>

 

위의 설정은, ClusterSessionListener를 이용한 jsessionid failover 설정을 보여준다. 즉, narason라는 사용자는 manager 권한을 가지고 있다는 뜻이 된다.
Admin권한을 가진 계정을 확인 하였다면 아래와 같은 주소로 Manager에 접근한다.

 

http://serverip:port/manager/html
윗 주소로 접속하게 되면, 아래와 같은 인증창이 먼저 뜬다.
여기에, 윗 설정대로 (예) narason / 1234 를 입력한다.
 


Web Manager 접속 성공 화면

 

여기서 잠깐
http://serverip:port/manager/html 에서 port는 $CATALINA_HOME/conf의 server.xml에 정의된 아래의 설정에 따른다.
<Connector port="9999" maxHttpHeaderSize="8192"
        maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
        enableLookups="false" redirectPort="8443" acceptCount="100"
        connectionTimeout="20000" disableUploadTimeout="true" />


참고로, Tomcat의 non-SSL HTTP/1.1 Connector Port는 8080 이다.

 

 

d. Websphere 

WebSphere 는 거의 모든 환경설정은 admin console 을 통해 이루어 진다. 웹관리자의 기본 주소는 다음과 같다.
http://아이피:9090/admin
로그인 ID / Password 를 입력하면 아래와 같은 admin console 을 볼 수 있다.
일반적으로 서버, 응용프로그램, 자원, 환경, 문제점 해결 메뉴에서 내용을 확인하면 보다 쉽게 JEUS 로의 환경전환이 가능하다.
전환을 위한 환경 파악시 좌측의 메뉴에서 통상적으로 확인 해야 할 사항을 언급해 보았다.
이후의 진행은 아래에 언급된 좌측 메뉴의 순으로 진행하겠다. 

 

첫 시간에는 지원 스펙, 프로세스 확인 방법, 로그파일 위치, admin conSole 관리자 접속 방법에 대해 알아봤습니다.

다음시간에는 실제 설정에 대한 차이를 분석하고 윈백을 수행 할때 고려해야 할 사항들을 살펴보도록 하겠습니다.

감사합니다.

728x90
반응형