티스토리 뷰

728x90
반응형

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


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


1. J2EE Specification

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

J2EE 버전

Weblogic 버전

JEUS 버전

Tomcat 버전

Websphere 버전 

 1.2

6.1

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
반응형