티스토리 뷰
본 포스팅은 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
ps -ef | grep weblogic
- 프로세스를 확인하면 환경변수로 -Dbea.home=/usr/bea 와 같이 되어 있기 때문에 현재 운영중인 프로세스의 Weblogic의 홈을 확인할 수가 있다.
b. JEUS
ps -ef | grep java
- 마찬가지로 -Djeus.home=/home/jeus 와 같이 되어 있기 때문에 현재 운영중인 프로세스의 JEUS의 홈을 확인할 수 가 있다.
c. Tomcat
ps –ef | grep java | grep catalina
- 마찬가지로 -Dcatalina.home=/home/narason/otherwas/tomcat 와 같이 되어 있기 때문에 현재 운영중인 프로세스의 JEUS의 홈을 확인할 수 가 있다.
d. Websphere
ps -ef |grep AppServer
- 프로세스를 확인하면 환경변수로 -Dwas.install.root 와 같이 되어 있기 때문에 현재 운영중인 프로세스의 WebSphere가 설치된 디렉토리를 확인할 수가 있다.
# 참조
각 was 벤더 별 홈디렉토리 정리
JEUS : -Djeus.home=/home/jeus
Tomcat : -Dcatalina.home=/home/tomcat
Websphere : -Dwas.install.root=/home/websphere
3. 로그파일 위치
a. weblogic
서버로그 : $DOMAIN_NAME/servers/SERVER_NAME/logs/SERVER_NAME.log
b. jeus
서버로그 : $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.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의 접속정보는 DOMAIN_HOME/bin/startManagedWebLogic.sh 에서 ADMIN_URL 을 통해 알 수 있다. 접근 계정은 관리자에게 문의한다.
[예]
http://192.169.30.203:7001/console (http:// hostname : port /console)
아래의 화면은 Admin Console 에서 보여지는 Server1과 Server2 이다.
b. JEUS
[예]
http://172.21.21.100:9736/ (http://hostname:port, default port는 9736)
c. Tomcat
예를 들면 아래와 같다.
[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
http://아이피:9090/admin
로그인 ID / Password 를 입력하면 아래와 같은 admin console 을 볼 수 있다.
일반적으로 서버, 응용프로그램, 자원, 환경, 문제점 해결 메뉴에서 내용을 확인하면 보다 쉽게 JEUS 로의 환경전환이 가능하다.
전환을 위한 환경 파악시 좌측의 메뉴에서 통상적으로 확인 해야 할 사항을 언급해 보았다.
이후의 진행은 아래에 언급된 좌측 메뉴의 순으로 진행하겠다.
첫 시간에는 지원 스펙, 프로세스 확인 방법, 로그파일 위치, admin conSole 관리자 접속 방법에 대해 알아봤습니다.
다음시간에는 실제 설정에 대한 차이를 분석하고 윈백을 수행 할때 고려해야 할 사항들을 살펴보도록 하겠습니다.
감사합니다.
'④ 미들웨어' 카테고리의 다른 글
[WEB Server] TCP 권고 Parameter (0) | 2019.01.13 |
---|---|
[WAS] 각 벤더사 별 Datasource 확인 (0) | 2018.09.02 |
[Web Application Server] Architecture (WEB / WAS 부문) (5) | 2018.08.27 |
[ETC] SSL vs TLS 차이점 및 확인방안 (0) | 2018.06.18 |
[Web Application Server] WAS 벤더사 별 Appliction Deploy (0) | 2018.06.14 |
- Total
- Today
- Yesterday
- JEUS7
- 아키텍처
- k8s
- openstack token issue
- SWA
- 마이크로서비스 아키텍처
- aws
- Architecture
- SA
- 오픈스택
- nodejs
- Docker
- JBoss
- JEUS6
- node.js
- 마이크로서비스
- jeus
- TA
- MSA
- wildfly
- webtob
- aa
- openstack tenant
- Da
- 쿠버네티스
- kubernetes
- API Gateway
- apache
- git
- OpenStack
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |