LNA Web Application Server

Guides -LENA 운영자 가이드

Application Server

Application Server를 관리하기 위한 화면을 제공한다. Node에 설치한 Server의 등록, 수정, 삭제를 수행하며, 그 외 Server의 설치, 제거 및 복제를 할 수 있다.

Application Server의 속성은 아래와 같다. (*) 는 필수값

항목설명비고
StatusServer의 상태
Name(*)Server의 이름
IP(*)Server의 IP주소
Server IDServer의 ID
TypeServer의 유형(Standard, Enterprise)
HTTP PortHTTP 포트번호
AJP PortAJP 포트번호
Server의 시작 및 종료
+Register 또는 버튼을 클릭하여 선택된 권한 정보가 변경 중임을 표시
버튼을 클릭하여 선택된 권한 정보가 삭제됨을 표시
Application Server를 삭제할 경우 Rule의 적용대상 목록에서 해당 Server는 삭제된다. .

Server 등록

  1. +Register 버튼을 클릭한다.
  2. 등록하려는 서버를 선택한다.

LENA를 통해 설치된 서버만 조회된다.
  1. 버튼을 클릭하여 저장한다.

Server 수정

  1. 버튼을 클릭하여 Server정보를 수정 가능한 상태로 변경한다.
  2. Server의 속성을 수정한다.
  3. 버튼을 클릭하여 저장한다.

Server 삭제

  1. 버튼을 클릭하여 Server 정보를 삭제 가능한 상태로 변경한다.
  2. 버튼을 클릭한다.
  3. OK버튼을 누르면 물리적인 Server engine에 대한 삭제 여부를 묻는 창이 출력된다.
  • No : manager DB에서만 해당 Server 정보를 삭제하고 물리적인 Server engine은 유지 (추후 Register 버튼을 통해 다시 등록 가능)
  • Yes : manager DB에서 해당 Server 정보를 삭제하고 물리적인 Server engine도 삭제

Server Start/Stop

  1. 버튼을 클릭하여 Server를 종료한다.
  2. 버튼을 클릭하여 Server를 시작한다.
  • Server를 시작하면 로그파일을 볼 수 있는 팝업이 실행된다. 팝업을 통해 서버의 정상 기동 여부를 확인할 수 있다.

시작 가능한 상태일 경우에만 시작버튼이 활성화 된다.

Server Install

  1. 버튼을 클릭하여 LENA Sever의 설치를 준비한다.

  1. Server Type, Server ID 등을 입력한다.

  2. 버튼을 클릭하여 저장한다.

    Node에 실제 설치되어 있는 서버와 Manager에서 관리하는 서버의 정보에는 차이가 있을 수 있다. (console기반 설치 시) 서버ID중복오류가 발생하는 경우, Register기능을 이용하여 설치된 서버정보를 추가로 확인해야 한다.

    Manager IP는 Node의 host IP로 자동 입력된다. 네트워크 구성에 따라 자동 입력된 IP가 실제 네트워크 IP와 다른 경우가 발생할 수 있다. 이때는 Manager IP를 수정하여 입력해야 한다

Server Clone

  1. 버튼을 클릭하여 Server의 복제를 준비한다.

  1. Clone Server ID와 Service Port를 입력한다.(복제하려는 서버의 application 소스가 서버 외부에 있는데 이 소스까지 복제하려는 경우 Include External Source는 Y를 선택한다.)

  2. Node List에서 복제할 서버를 선택한다.

  3. 버튼을 클릭하여 저장한다.

    Node에 실제 설치되어 있는 서버와 Manager에서 관리하는 서버의 정보에는 차이가 있을 수 있다. (console기반 설치 시) 서버ID중복오류가 발생하는 경우, mapping기능을 이용하여 설치된 서버정보를 추가로 확인해야 한다.

Server 설정 정보 관리

Server의 설정 정보를 변경하는 기능을 제공한다. Server 목록에서 변경하려는 Server명을 선택한다. Standard Edition의 경우 General, Logging, Web Config, JVM Env, Properties, Config Tree, History탭을 제공하며, 설정 정보 수정 시 백업을 하여 복원이 가능하다. Enterprise Edition는 Container 탭을 추가적으로 제공한다.

Standard Edition

Enterprise Edition

Server설정을 변경할 경우 수정된 사항의 반영을 위하여 서버의 재기동이 필요하다.

General

Server의 일반적인 설정 정보를 관리한다. Port정보, Connector, Access Log, Session Cluster 관련 설정을 수정 및 저장 할 수 있다.

설정 정보의 상세내용은 아래와 같다.

1) Server Info
  • Server의 주요 설정 값을 나타낸다.
항목설명비고
HTTP PortHTTP 포트번호
AJP PortAJP 포트번호
HTTPS PortHTTPS 포트번호
Shutdown PortShutdown 명령 문자열을 받기 위한 포트
Application BaseApplication의 Base 디렉토리Server가 stop 상태이거나, appBase에 deploy이된 Application이 없을 경우에만 수정이 가능하다.
jvmRouteServer의 Unique한 IdentifierSystem Property에 설정되어 있는 값을 우선함,
없을 경우 server.xml의 값을 사용
Auto Deploy자동 Deploy 여부
Deploy On StartupApplication Server 기동시 Application Deploy 여부
Shutdown Timeout서버 종료 시 실행중인 Thread가 존재할 경우 대기하는 시간(초)
2) Connector
  • Server에서 사용하는 Connector 설정 값을 나타낸다.
항목설명비고
Protocol Type(*)프로토콜 유형HTTP/1.1, AJP/1.3
port(*)포트번호
redirect PortRedirect 포트
connection Timeout커넥션 타임아웃(ms)
URIEncodingURI byte를 변환하기 위한 Character Encoding
serverHttp Response에 대한 Server Header를 재정의
maxThreadsConnector가 생성할 수 있는 최대 Thread 수Default "256"
minSpareThreadsConnector생성시 최소 확보하는 Thread 수Default "10"
maxQueueSizeRequest Queue 의 최대길이Default Integer.MAX_VALUE
packetSizeAJP packet 최대 크기Default 8192
enableLookupsDNS LookUp 사용여부Default "false"
compressionHTTP message Body 압축여부(off, on, force)Default "off"
tcpNoDelayTCP 패킷을 Delay 없이 전송Default "true"
3) Access Log
  • Request에 대한 Access 로그의 설정값을 나타낸다.
항목설명비고
directoryLog 디렉토리절대경로 또는 $CATALINA_BASE의
상대경로로 지정할 수 있다
patternLogging field의 Layout
prefixLog 파일의 prefix
suffixLog 파일의 suffix
4) Stuck Thread
  • Stuck Thread의 설정값을 나타낸다.
항목설명비고
thresholdStuck Thread를 식별하기 위한 최소 시간단위: 초
interruptThreadThresholdStuck Thread를 중단하기 위한 최소 시간단위: 초
5) Session Cluster
  • Session Cluster 기능을 사용할지 여부를 설정한다.
  • Session Server 모듈을 Application Server에 Embedded 하여 Application Server가 Session Server 역할을 하게 할지 여부를 설정한다. Embedded 모드를 선택하게 되면, Server 관리 화면에서 Session Server 리스트에 Embedded Type으로 표시된다.
Embedded Session Server 모드

항목설명기본값
Embedded Host127.0.0.1 변경 불가
해당 Application Server를 의미
127.0.0.1
Embedded Port해당Application Server에서 사용할 Embedded Session Server 용 port 정보5005
Secondary Server HostSlave Server 호스트. IP127.0.0.1
Secondary Server PortSlave Server Port.5006
Multi Login Control이중 로그인 방지여부
Logout Page (Multi Login)처음 로그인 사용자의 세션 만기 시 반환하는 화면
Logout Message ( Multi Login)처음 로그인 사용자의 세션 만기 시 AJAX에서 보여주는 메시지
Excepted Page for Multi check멀티 로그인과 세션만기를 확인하는 URL
Client 모드

항목설명기본값
Primary Server HostZodiac Primary Session Server 호스트127.0.0.1
Primary Server PortZodiac Primary Session Server 포트5005
Secondary Server HostZodiac Secondary Session Server 호스트
Primary서버와 연결이 끊어진 경우에만 사용
127.0.0.1
Secondary Server PortZodiac Secondary Session Server 포트
Primary서버와 연결이 끊어진 경우에만 사용
5006
Share session in applicationsMulti Application간 Session을 공유
Standalone인 경우에만 설정가능
false
Multi Login Control이중 로그인 방지여부
Logout Page (Multi Login)처음 로그인 사용자의 세션 만기 시 반환하는 화면
Logout Message ( Multi Login)처음 로그인 사용자의 세션 만기 시 AJAX에서 보여주는 메시지
Excepted Page for Multi check멀티 로그인과 세션만기를 확인하는 URL
6) Reverse Settings

Web Server의 Reverse connection 기능을 사용하고자 할 경우에는 Manager가 설치된 {LENA_HOME}/conf/manager.conf 내 reverse 관련 설정을 아래와 같이 true로 한다.

web.reverse.enabled=true

그러면 General 탭 하위에 아래와 같이 Reverse Settings 영역이 추가된다.

항목설명비고
checkIntervalReverse Connection에 대한 체크 주기
connectTimeoutReverse Connection의 timeout
dataEncryption데이터 암호화 여부
$CATALINA_HOME은 Application Server의 기본 설치 디렉토리이다. $CATALINA_BASE는 본래 하나의 Application Server에 복수개의 Instance를 사용하고자 할 때 디렉토리를 생성하여 Instance별로 지정하여 사용되지만 LENA에서는 Application Server와 Instance가 1:1 관계라 $CATALINA_HOME이 곧 $CATALINA_BASE로 사용된다.

Logging

로그 설정을 관리하는 화면을 제공한다. Handler 목록, Handler상세 정보, Logger목록 등을 설정할 수 있다. 설정 파일의 변경 후 버튼을 클릭하면 서버의 로그 설정이 변경된다.

Handler 설정 정보의 상세내용은 아래와 같다.

항목설명비고
NameHanlder의 클래스명
TypeHandler의 유형
LevelHandler의 로그레벨
Filterjava.util.logging.Filter의 구현체
Formatterjava.util.logging.Formatter의 구현체Default value:
java.util.logging.SimpleFormatter
EncodingHandler의 Character Encoding
RootRoot Logger여부
서버의 로그설정 파일은 $CATALINA_HOME($CATALINA_BASE)/conf/logging.properties 이다.

Web Config

Global web.xml의 설정을 관리하는 화면을 제공한다. 필요 항목을 수정한 후 버튼을 클릭하여 저장한다.

설정 정보의 상세내용은 아래와 같다.

1) Default Servlet
항목설명비고
ListingsDirectory Listing을 허용할지 여부Default : false
InputInput buffer size in bytesDefault: 2048
OutputOutput buffer size in bytesDefault: 2048
ReadonlyPUT, DELETE 등의 HTTP메소드를 허용하지 않음Default: true
FileEncodingFile Encoding
ShowServerInfoDirectory Listing이 허용되어 있을 때 서버 정보를 표시할지 여부Default: true
2) JSP Engine
항목설명비고
CheckIntervalDevelopment가 false일 때 jsp의 변경을 검사하는 주기(초)Default: 0
DevelopmentDevelopment 여부.
Development가 true인 경우에는 modificationTestInterval 값을 주기로 하여 변경을 검사함
Default: true
GenStringAsCharArrayString생성을 Char Array로 할지 여부Default: false
ModificationTestIntervalDevelopment가 true일 경우에 동작하는 jsp변경 검사 주기Default: 4
TrimSpacesWhitespace의 trim여부Default: false
JavaEncodingJava소스를 generate할때의 EncodingDefault: UTF8
LoadOnStartupServlet 로딩 순서 지정
3) Welcome File List
항목설명비고
FileDirectory index로 호출할 경우에 service할 파일을 순서대로 지정함
4) Session Timeout
항목설명비고
SessionTimeout세션 타임아웃 시간(분)

JVM Env

JVM 옵션, Start Shell의 설정과 System Properties(Enterprise Edition인 경우만 제공)를 관리하는 화면을 제공한다. 로그 설정과 동일하게 파일 에디터를 통해 수정한 후 버튼을 클릭하여 저장한다.

JVM Setting ($CATALINA_HOME/bin/setenv.sh) - Server 실행을 위한 JVM 옵션

Start Shell ($CATALINA_HOME/env.sh) - Server 시작을 위한 Shell Script

System.properties($CATALINA_HOME/conf/system.properties)

Catalina.properties ($CATALINA_HOME/conf/catalina.properties) - Server의 Catalina 설정

Properties

서버의 System Properties 와 Environments를 확인하는 화면을 제공한다. Key Properties 를 제공하여 서버경로, JAVA버전 등의 주요 정보를 확인할 수 있다.

Container

Enterprise Edition의 경우 EJB Container의 설정 변경 기능을 제공한다. container설정 없이 서버를 기동하면 EJB에서 필요한 container가 default 설정으로 생성된다. default설정 외에 변경이 필요한 설정이 있을 경우에는 container를 생성하여 설정을 변경해야 한다.

1) 주요 설정

(*) 는 필수값

항목설명비고
ID(*)Container의 식별자
Type(*)Container의 유형ActiveMQResourceAdapter
ConnectionFactory
Queue
Topic 중 택일
2) CMP_ENTITY 설정
항목설명비고
CmpEngineFactoryFactory클래스명 지정한다.
Default값은
org.apache.openejb.core.cmp.jpa.JpaCmpEngineFactory
3) BMP_ENTITY 설정
항목설명비고
PoolSizeBean pool의 크기 지정Default "10"
4) STATELESS 설정
항목설명비고
AccessTimeOut호출간 대기시간
(Specifies the time to wait between invocations)
Default "0"
(means no timeout)
MaxSizeBean pool의 최대 개수Default "10"
MinSizeBean pool의 최소 개수Default "0"
StrictPoolingPool이 최대치에 도달했을 때 동작방식 지정
StrictPooling은 pool size를 늘리지 않고 기다림
Default "true"
MaxAgePool에서 제거되기까지의 최대 시간Default 0 hours
ReplaceAgedMaxAge에 도달했을 때 Replace할지 여부Default true
ReplaceFlushedpool에서 Flush될 때 Replace할지 여부Default false
MaxAgeOffsetMasAge 사용량Default -1
IdleTimeout인스턴스가 pool에서 idle상태로 있을 수 있는 최대 시간Default 0 minutes
GarbageCollection풀을 줄이기 위한 메커니즘으로 garbage collection을 허용할지 여부Default false
SweepInterval컨테이너가 풀을 정리하고 만료된 instance들을 제거하는 주기Default 5 minutes
CallbackThreadsThread Pool 사이즈
이 값은 컨테이너에 배포되어 있는 모든 Bean들에게 공유됨
Default 5
CloseTimeout풀이 닫히고 PostConstruct 메소드가 호출될때까지 기다리는 최대 시간Default 5 minutes
5) SINGLETON 설정
항목설명비고
AccessTimeOut호출간 대기시간
(Specifies the time to wait between invocations)
Default "0"
(means no timeout)
6) STATEFUL 설정
항목설명비고
AccessTimeOut호출간 대기시간
(Specifies the time to wait between invocations)
Default "0"
(means no timeout)
CacheStateful 빈 인스턴스를 관리할 cacheDefault org.apache.openejb.core.stateful.SimpleCache
PassivatorPassivator클래스 지정
Default값은
org.apache.openejb.core.stateful.SimplePassivator
TimeOut호출간 대기시간
(Specifies the time to wait between invocations)
Default "20"
Frequency빈 캐쉬가 idle상태인 빈들을 확인하는 주기(sec)Default "60"
CapacityStateful SessionBean 컨테이너에 대한 bean pool의 크기Default "1000"
BulkPassivate한번에 passivate할 instance의 개수Default "100"
7) MESSAGE 설정
항목설명비고
ResourceAdapterResource Adapter지정
Default값은Default JMS Resource Adapter
MessageListenerInterfaceMessageListener지정
Default값은 Javax.jms.MessageListener
ActivationSpecClassActivation Spec Class지정
Default값은
org.apache.activemq.ra.ActiveMQActivationSpec
InstanceLimitInstance 최대 개수Default "10"

Config Tree

Application Server의 설치경로 하위의 /conf 폴더 하위 설정파일들을 파일편집기를 통해 관리 할 수 있다.

Node Agent를 실행하는 사용자가 Application Server 설정 정보 파일의 접근 권한이 있어야 수정이 가능하다. 접근 권한이 없을 경우 파일 Write 권한이 없어 편집 할 수 없다는 메시지가 출력 된다.

History

설정 정보의 백업 및 복원 기능을 제공한다. 설정 정보를 수정하여 저장하면 유형별로 History를 관리한다. 수정 일시와 설정 파일 Type을 입력하여 검색한다.

버튼을 클릭하여 선택한 파일의 정보를 볼 수 있으며, 버튼을 클릭하여 해당 설정파일로 복원할 수 있다.

설정 파일 Type에 해당하는 파일은 아래와 같다.

Type파일
Server$CATALINA_HOME/conf/server.xml
$CATALINA_HOME/conf/web.xml
$CATALINA_HOME/conf/argoee.xml
Log$CATALINA_HOME/conf/logging.properties
JVM$CATALINA_HOME/bin/setenv.sh
$CATALINA_HOME/env.sh
$CATALINA_HOME/conf/system.properties
Context$CATALINA_HOME/conf/context.xml
$CATALINA_HOME/conf/zodiac.conf
Application$CATALINA_HOME/conf/Catalina/localhost/{application명}.xml

Server Resource 관리

Server메뉴 하위의 Resource메뉴를 선택하면 해당 Server에 관련된 Resource정보를 관리할 수 있는 화면이 표시된다. 기본적으로 DataSource, JMS, JTA Resource에 대한 정보를 관리할 수 있다. (JMS, JTA Resource는 Enterprise Server일 경우에만 지원)

DataSource

Application Server의 Application이 사용할 수 있는 JNDI DataSource를 관리하는 기능을 제공한다. JNDI를 설정하여 Server 에서 실행되는 모든 Application이 공유하여 사용할 수 있으며, 각각의 Application에 JNDI 설정을 하여 사용할 수도 있다. Enterprise Edition의 경우 JTA를 지원하여 속성이 추가된다.

1) Server DataSource 설정

Server에서 실행되는 모든 Application이 공유하는 DataSource를 설정한다. Server에서 사용 가능한 DataSource의 목록을 조회할 수 있으며, DataSource의 등록, 수정, 삭제가 가능하다. DataSource의 상태를 체크하기 위한 접속테스트도 수행할 수 있다.

SERVER > Resources > DataSources

DataSource의 속성은 아래와 같다. 최초 화면에서 보이지 않는 속성은 버튼을 클릭하면 출력된다.

(*) 는 필수값

항목설명비고
Scope(*)DataSource를 사용할 범위- Context: 모든 Application
이 공유하는 영역이다
- Global: DataSource 링크관리에서 설정하여 사용한다
- Global+ResourceLink: Global영역에 Datasource정보가 설정되고 Datasource링크는 공통 context영역에 설정된다.
JNDI Name(*)Global DataSource의 JNDI명

Application Server를 관리하기 위한 화면을 제공한다. Node에 설치한 Server의 등록, 수정, 삭제를 수행하며, 그 외 Server의 설치, 제거 및 복제를 할 수 있다.

Application Server의 속성은 아래와 같다. (*) 는 필수값

항목설명비고
StatusServer의 상태
Name(*)Server의 이름
IP(*)Server의 IP주소
Server IDServer의 ID
TypeServer의 유형(Standard, Enterprise)
HTTP PortHTTP 포트번호
AJP PortAJP 포트번호
Server의 시작 및 종료
+Register 또는 버튼을 클릭하여 선택된 권한 정보가 변경 중임을 표시
버튼을 클릭하여 선택된 권한 정보가 삭제됨을 표시
Application Server를 삭제할 경우 Rule의 적용대상 목록에서 해당 Server는 삭제된다. .

Server 등록

  1. +Register 버튼을 클릭한다.
  2. 등록하려는 서버를 선택한다.

LENA를 통해 설치된 서버만 조회된다.
  1. 버튼을 클릭하여 저장한다.

Server 수정

  1. 버튼을 클릭하여 Server정보를 수정 가능한 상태로 변경한다.
  2. Server의 속성을 수정한다.
  3. 버튼을 클릭하여 저장한다.

Server 삭제

  1. 버튼을 클릭하여 Server 정보를 삭제 가능한 상태로 변경한다.
  2. 버튼을 클릭한다.
  3. OK버튼을 누르면 물리적인 Server engine에 대한 삭제 여부를 묻는 창이 출력된다.
  • No : manager DB에서만 해당 Server 정보를 삭제하고 물리적인 Server engine은 유지 (추후 Register 버튼을 통해 다시 등록 가능)
  • Yes : manager DB에서 해당 Server 정보를 삭제하고 물리적인 Server engine도 삭제

Server Start/Stop

  1. 버튼을 클릭하여 Server를 종료한다.
  2. 버튼을 클릭하여 Server를 시작한다.
  • Server를 시작하면 로그파일을 볼 수 있는 팝업이 실행된다. 팝업을 통해 서버의 정상 기동 여부를 확인할 수 있다.

시작 가능한 상태일 경우에만 시작버튼이 활성화 된다.

Server Install

  1. 버튼을 클릭하여 LENA Sever의 설치를 준비한다.

  1. Server Type, Server ID 등을 입력한다.

  2. 버튼을 클릭하여 저장한다.

    Node에 실제 설치되어 있는 서버와 Manager에서 관리하는 서버의 정보에는 차이가 있을 수 있다. (console기반 설치 시) 서버ID중복오류가 발생하는 경우, Register기능을 이용하여 설치된 서버정보를 추가로 확인해야 한다.

    Manager IP는 Node의 host IP로 자동 입력된다. 네트워크 구성에 따라 자동 입력된 IP가 실제 네트워크 IP와 다른 경우가 발생할 수 있다. 이때는 Manager IP를 수정하여 입력해야 한다

Server Clone

  1. 버튼을 클릭하여 Server의 복제를 준비한다.

  1. Clone Server ID와 Service Port를 입력한다.(복제하려는 서버의 application 소스가 서버 외부에 있는데 이 소스까지 복제하려는 경우 Include External Source는 Y를 선택한다.)

  2. Node List에서 복제할 서버를 선택한다.

  3. 버튼을 클릭하여 저장한다.

    Node에 실제 설치되어 있는 서버와 Manager에서 관리하는 서버의 정보에는 차이가 있을 수 있다. (console기반 설치 시) 서버ID중복오류가 발생하는 경우, mapping기능을 이용하여 설치된 서버정보를 추가로 확인해야 한다.

Server 설정 정보 관리

Server의 설정 정보를 변경하는 기능을 제공한다. Server 목록에서 변경하려는 Server명을 선택한다. Standard Edition의 경우 General, Logging, Web Config, JVM Env, Properties, Config Tree, History탭을 제공하며, 설정 정보 수정 시 백업을 하여 복원이 가능하다. Enterprise Edition는 Container 탭을 추가적으로 제공한다.

Standard Edition

Enterprise Edition

Server설정을 변경할 경우 수정된 사항의 반영을 위하여 서버의 재기동이 필요하다.

General

Server의 일반적인 설정 정보를 관리한다. Port정보, Connector, Access Log, Session Cluster 관련 설정을 수정 및 저장 할 수 있다.

설정 정보의 상세내용은 아래와 같다.

1) Server Info
  • Server의 주요 설정 값을 나타낸다.
항목설명비고
HTTP PortHTTP 포트번호
AJP PortAJP 포트번호
HTTPS PortHTTPS 포트번호
Shutdown PortShutdown 명령 문자열을 받기 위한 포트
Application BaseApplication의 Base 디렉토리Server가 stop 상태이거나, appBase에 deploy이된 Application이 없을 경우에만 수정이 가능하다.
jvmRouteServer의 Unique한 IdentifierSystem Property에 설정되어 있는 값을 우선함,
없을 경우 server.xml의 값을 사용
Auto Deploy자동 Deploy 여부
Deploy On StartupApplication Server 기동시 Application Deploy 여부
Shutdown Timeout서버 종료 시 실행중인 Thread가 존재할 경우 대기하는 시간(초)
2) Connector
  • Server에서 사용하는 Connector 설정 값을 나타낸다.
항목설명비고
Protocol Type(*)프로토콜 유형HTTP/1.1, AJP/1.3
port(*)포트번호
redirect PortRedirect 포트
connection Timeout커넥션 타임아웃(ms)
URIEncodingURI byte를 변환하기 위한 Character Encoding
serverHttp Response에 대한 Server Header를 재정의
maxThreadsConnector가 생성할 수 있는 최대 Thread 수Default "256"
minSpareThreadsConnector생성시 최소 확보하는 Thread 수Default "10"
maxQueueSizeRequest Queue 의 최대길이Default Integer.MAX_VALUE
packetSizeAJP packet 최대 크기Default 8192
enableLookupsDNS LookUp 사용여부Default "false"
compressionHTTP message Body 압축여부(off, on, force)Default "off"
tcpNoDelayTCP 패킷을 Delay 없이 전송Default "true"
3) Access Log
  • Request에 대한 Access 로그의 설정값을 나타낸다.
항목설명비고
directoryLog 디렉토리절대경로 또는 $CATALINA_BASE의
상대경로로 지정할 수 있다
patternLogging field의 Layout
prefixLog 파일의 prefix
suffixLog 파일의 suffix
4) Stuck Thread
  • Stuck Thread의 설정값을 나타낸다.
항목설명비고
thresholdStuck Thread를 식별하기 위한 최소 시간단위: 초
interruptThreadThresholdStuck Thread를 중단하기 위한 최소 시간단위: 초
5) Session Cluster
  • Session Cluster 기능을 사용할지 여부를 설정한다.
  • Session Server 모듈을 Application Server에 Embedded 하여 Application Server가 Session Server 역할을 하게 할지 여부를 설정한다. Embedded 모드를 선택하게 되면, Server 관리 화면에서 Session Server 리스트에 Embedded Type으로 표시된다.
Embedded Session Server 모드

항목설명기본값
Embedded Host127.0.0.1 변경 불가
해당 Application Server를 의미
127.0.0.1
Embedded Port해당Application Server에서 사용할 Embedded Session Server 용 port 정보5005
Secondary Server HostSlave Server 호스트. IP127.0.0.1
Secondary Server PortSlave Server Port.5006
Multi Login Control이중 로그인 방지여부
Logout Page (Multi Login)처음 로그인 사용자의 세션 만기 시 반환하는 화면
Logout Message ( Multi Login)처음 로그인 사용자의 세션 만기 시 AJAX에서 보여주는 메시지
Excepted Page for Multi check멀티 로그인과 세션만기를 확인하는 URL
Client 모드

항목설명기본값
Primary Server HostZodiac Primary Session Server 호스트127.0.0.1
Primary Server PortZodiac Primary Session Server 포트5005
Secondary Server HostZodiac Secondary Session Server 호스트
Primary서버와 연결이 끊어진 경우에만 사용
127.0.0.1
Secondary Server PortZodiac Secondary Session Server 포트
Primary서버와 연결이 끊어진 경우에만 사용
5006
Share session in applicationsMulti Application간 Session을 공유
Standalone인 경우에만 설정가능
false
Multi Login Control이중 로그인 방지여부
Logout Page (Multi Login)처음 로그인 사용자의 세션 만기 시 반환하는 화면
Logout Message ( Multi Login)처음 로그인 사용자의 세션 만기 시 AJAX에서 보여주는 메시지
Excepted Page for Multi check멀티 로그인과 세션만기를 확인하는 URL
6) Reverse Settings

Web Server의 Reverse connection 기능을 사용하고자 할 경우에는 Manager가 설치된 {LENA_HOME}/conf/manager.conf 내 reverse 관련 설정을 아래와 같이 true로 한다.

web.reverse.enabled=true

그러면 General 탭 하위에 아래와 같이 Reverse Settings 영역이 추가된다.

항목설명비고
checkIntervalReverse Connection에 대한 체크 주기
connectTimeoutReverse Connection의 timeout
dataEncryption데이터 암호화 여부
$CATALINA_HOME은 Application Server의 기본 설치 디렉토리이다. $CATALINA_BASE는 본래 하나의 Application Server에 복수개의 Instance를 사용하고자 할 때 디렉토리를 생성하여 Instance별로 지정하여 사용되지만 LENA에서는 Application Server와 Instance가 1:1 관계라 $CATALINA_HOME이 곧 $CATALINA_BASE로 사용된다.

Logging

로그 설정을 관리하는 화면을 제공한다. Handler 목록, Handler상세 정보, Logger목록 등을 설정할 수 있다. 설정 파일의 변경 후 버튼을 클릭하면 서버의 로그 설정이 변경된다.

Handler 설정 정보의 상세내용은 아래와 같다.

항목설명비고
NameHanlder의 클래스명
TypeHandler의 유형
LevelHandler의 로그레벨
Filterjava.util.logging.Filter의 구현체
Formatterjava.util.logging.Formatter의 구현체Default value:
java.util.logging.SimpleFormatter
EncodingHandler의 Character Encoding
RootRoot Logger여부
서버의 로그설정 파일은 $CATALINA_HOME($CATALINA_BASE)/conf/logging.properties 이다.

Web Config

Global web.xml의 설정을 관리하는 화면을 제공한다. 필요 항목을 수정한 후 버튼을 클릭하여 저장한다.

설정 정보의 상세내용은 아래와 같다.

1) Default Servlet
항목설명비고
ListingsDirectory Listing을 허용할지 여부Default : false
InputInput buffer size in bytesDefault: 2048
OutputOutput buffer size in bytesDefault: 2048
ReadonlyPUT, DELETE 등의 HTTP메소드를 허용하지 않음Default: true
FileEncodingFile Encoding
ShowServerInfoDirectory Listing이 허용되어 있을 때 서버 정보를 표시할지 여부Default: true
2) JSP Engine
항목설명비고
CheckIntervalDevelopment가 false일 때 jsp의 변경을 검사하는 주기(초)Default: 0
DevelopmentDevelopment 여부.
Development가 true인 경우에는 modificationTestInterval 값을 주기로 하여 변경을 검사함
Default: true
GenStringAsCharArrayString생성을 Char Array로 할지 여부Default: false
ModificationTestIntervalDevelopment가 true일 경우에 동작하는 jsp변경 검사 주기Default: 4
TrimSpacesWhitespace의 trim여부Default: false
JavaEncodingJava소스를 generate할때의 EncodingDefault: UTF8
LoadOnStartupServlet 로딩 순서 지정
3) Welcome File List
항목설명비고
FileDirectory index로 호출할 경우에 service할 파일을 순서대로 지정함
4) Session Timeout
항목설명비고
SessionTimeout세션 타임아웃 시간(분)

JVM Env

JVM 옵션, Start Shell의 설정과 System Properties(Enterprise Edition인 경우만 제공)를 관리하는 화면을 제공한다. 로그 설정과 동일하게 파일 에디터를 통해 수정한 후 버튼을 클릭하여 저장한다.

JVM Setting ($CATALINA_HOME/bin/setenv.sh) - Server 실행을 위한 JVM 옵션

Start Shell ($CATALINA_HOME/env.sh) - Server 시작을 위한 Shell Script

System.properties($CATALINA_HOME/conf/system.properties)

Catalina.properties ($CATALINA_HOME/conf/catalina.properties) - Server의 Catalina 설정

Properties

서버의 System Properties 와 Environments를 확인하는 화면을 제공한다. Key Properties 를 제공하여 서버경로, JAVA버전 등의 주요 정보를 확인할 수 있다.

Container

Enterprise Edition의 경우 EJB Container의 설정 변경 기능을 제공한다. container설정 없이 서버를 기동하면 EJB에서 필요한 container가 default 설정으로 생성된다. default설정 외에 변경이 필요한 설정이 있을 경우에는 container를 생성하여 설정을 변경해야 한다.

1) 주요 설정

(*) 는 필수값

항목설명비고
ID(*)Container의 식별자
Type(*)Container의 유형ActiveMQResourceAdapter
ConnectionFactory
Queue
Topic 중 택일
2) CMP_ENTITY 설정
항목설명비고
CmpEngineFactoryFactory클래스명 지정한다.
Default값은
org.apache.openejb.core.cmp.jpa.JpaCmpEngineFactory
3) BMP_ENTITY 설정
항목설명비고
PoolSizeBean pool의 크기 지정Default "10"
4) STATELESS 설정
항목설명비고
AccessTimeOut호출간 대기시간
(Specifies the time to wait between invocations)
Default "0"
(means no timeout)
MaxSizeBean pool의 최대 개수Default "10"
MinSizeBean pool의 최소 개수Default "0"
StrictPoolingPool이 최대치에 도달했을 때 동작방식 지정
StrictPooling은 pool size를 늘리지 않고 기다림
Default "true"
MaxAgePool에서 제거되기까지의 최대 시간Default 0 hours
ReplaceAgedMaxAge에 도달했을 때 Replace할지 여부Default true
ReplaceFlushedpool에서 Flush될 때 Replace할지 여부Default false
MaxAgeOffsetMasAge 사용량Default -1
IdleTimeout인스턴스가 pool에서 idle상태로 있을 수 있는 최대 시간Default 0 minutes
GarbageCollection풀을 줄이기 위한 메커니즘으로 garbage collection을 허용할지 여부Default false
SweepInterval컨테이너가 풀을 정리하고 만료된 instance들을 제거하는 주기Default 5 minutes
CallbackThreadsThread Pool 사이즈
이 값은 컨테이너에 배포되어 있는 모든 Bean들에게 공유됨
Default 5
CloseTimeout풀이 닫히고 PostConstruct 메소드가 호출될때까지 기다리는 최대 시간Default 5 minutes
5) SINGLETON 설정
항목설명비고
AccessTimeOut호출간 대기시간
(Specifies the time to wait between invocations)
Default "0"
(means no timeout)
6) STATEFUL 설정
항목설명비고
AccessTimeOut호출간 대기시간
(Specifies the time to wait between invocations)
Default "0"
(means no timeout)
CacheStateful 빈 인스턴스를 관리할 cacheDefault org.apache.openejb.core.stateful.SimpleCache
PassivatorPassivator클래스 지정
Default값은
org.apache.openejb.core.stateful.SimplePassivator
TimeOut호출간 대기시간
(Specifies the time to wait between invocations)
Default "20"
Frequency빈 캐쉬가 idle상태인 빈들을 확인하는 주기(sec)Default "60"
CapacityStateful SessionBean 컨테이너에 대한 bean pool의 크기Default "1000"
BulkPassivate한번에 passivate할 instance의 개수Default "100"
7) MESSAGE 설정
항목설명비고
ResourceAdapterResource Adapter지정
Default값은Default JMS Resource Adapter
MessageListenerInterfaceMessageListener지정
Default값은 Javax.jms.MessageListener
ActivationSpecClassActivation Spec Class지정
Default값은
org.apache.activemq.ra.ActiveMQActivationSpec
InstanceLimitInstance 최대 개수Default "10"

Config Tree

Application Server의 설치경로 하위의 /conf 폴더 하위 설정파일들을 파일편집기를 통해 관리 할 수 있다.

Node Agent를 실행하는 사용자가 Application Server 설정 정보 파일의 접근 권한이 있어야 수정이 가능하다. 접근 권한이 없을 경우 파일 Write 권한이 없어 편집 할 수 없다는 메시지가 출력 된다.

History

설정 정보의 백업 및 복원 기능을 제공한다. 설정 정보를 수정하여 저장하면 유형별로 History를 관리한다. 수정 일시와 설정 파일 Type을 입력하여 검색한다.

버튼을 클릭하여 선택한 파일의 정보를 볼 수 있으며, 버튼을 클릭하여 해당 설정파일로 복원할 수 있다.

설정 파일 Type에 해당하는 파일은 아래와 같다.

Type파일
Server$CATALINA_HOME/conf/server.xml
$CATALINA_HOME/conf/web.xml
$CATALINA_HOME/conf/argoee.xml
Log$CATALINA_HOME/conf/logging.properties
JVM$CATALINA_HOME/bin/setenv.sh
$CATALINA_HOME/env.sh
$CATALINA_HOME/conf/system.properties
Context$CATALINA_HOME/conf/context.xml
$CATALINA_HOME/conf/zodiac.conf
Application$CATALINA_HOME/conf/Catalina/localhost/{application명}.xml

Server Resource 관리

Server메뉴 하위의 Resource메뉴를 선택하면 해당 Server에 관련된 Resource정보를 관리할 수 있는 화면이 표시된다. 기본적으로 DataSource, JMS, JTA Resource에 대한 정보를 관리할 수 있다. (JMS, JTA Resource는 Enterprise Server일 경우에만 지원)

DataSource

Application Server의 Application이 사용할 수 있는 JNDI DataSource를 관리하는 기능을 제공한다. JNDI를 설정하여 Server 에서 실행되는 모든 Application이 공유하여 사용할 수 있으며, 각각의 Application에 JNDI 설정을 하여 사용할 수도 있다. Enterprise Edition의 경우 JTA를 지원하여 속성이 추가된다.

1) Server DataSource 설정

Server에서 실행되는 모든 Application이 공유하는 DataSource를 설정한다. Server에서 사용 가능한 DataSource의 목록을 조회할 수 있으며, DataSource의 등록, 수정, 삭제가 가능하다. DataSource의 상태를 체크하기 위한 접속테스트도 수행할 수 있다.

SERVER > Resources > DataSources

DataSource의 속성은 아래와 같다. 최초 화면에서 보이지 않는 속성은 버튼을 클릭하면 출력된다.

(*) 는 필수값

항목설명비고
Scope(*)DataSource를 사용할 범위- Context: 모든 Application
이 공유하는 영역이다
- Global: DataSource 링크관리에서 설정하여 사용한다
- Global+ResourceLink: Global영역에 Datasource정보가 설정되고 Datasource링크는 공통 context영역에 설정된다.
JNDI Name(*)Global DataSource의 JNDI명
driverClassNameJDBC Driver 클래스명
URL(*)JDBC URL
username(*)접속 사용자명
password(*)접속 패스워드encryption을 체크할 경우 패스워드를 암호화하여 저장한다. 보안을 위해 암호화하는 것을 권장한다.
auth(*)JNDI 권한
initialSizePool의 초기 Connection 수
maxActivePool의 최대 Connection 수
validationQueryConnection 유효성 검증 쿼리Default "null"
validationIntervalConnection 유효성 검증 주기(ms)Default "3000"
minIdle최소 Idle Connection 수
maxIdle최대 Idle Connection 수
removeAbandonedConnection 유실 검출 여부Default "false"
removeAbandonedTimeout유실Connection을 판단하기 위한 Timeout 값(단위: 초)Default "60"
logAbandonedConnection 유실 처리시 로깅여부Default "false"
abandonWhenPercentageFullConnection pool이 설정한 점유율을 초과 해야지만 abandon을 수행함Default "0"
timeBetweenEvictionRunsMills사용되지 않은Connection을
추출하는 Thread실행주기(ms)
Default "5000"
minEvictableIdleTimeMillis해당 시간 이상 idle 상태로 Pool에 존재한 Connection은 제거 대상이 됨 (ms)Default "60000" (60초)
defaultAutoCommitPool에서 생성된 Connection들의 자동 Commit 상태Default "JDBC driver의 기본값"
maxWaitPool에 Connection이 없을 경우 대기하는 최대시간(ms)Default "30000"
testOnBorrowPool에서 커넥션을 꺼내기 전에 validationQuery에 설정된 쿼리문을 수행하여 커넥션의 유효여부 확인Default "testOnBorrow의 기본값(false)"
testOnReturnPool에 커넥션을 반납하기 전에 validationQuery에 설정된 쿼리문을 수행하여 커넥션의 유효여부 확인Default "testOnReturn의 기본값(false)"
testWhileIdleIdle 상태의 커넥션에 대해 validationQuery에 설정된 쿼리문을 수행하여 커넥션의 유효여부 확인Default "testWhileIdle의 기본값(false)"
logValidationErrorsvalidation query 수행 후 오류 발생 시 오류 출력 여부Default "logValidationErrors의 기본값(false)"
descriptionDataSource에 대한 설명
jdbcInterceptors유연하고 플러그 가능한 인터셉터를 사용하여 사용자 정의 기능을 추가할 수 있음

Enterprise Edition의 추가 속성은 아래와 같다.

항목설명비고
jtaManagedJTA 사용여부Default "false"
xaDataSourceXA 사용여부Default "false"
XADataSource설정은 JTA가 설정되어야만 사용할 수 있으며, XADataSource를 설정하게 되면 validationInterval, logValidationErrors, abandonWhenPercentageFull 속성을 사용할 수 없다.

DataSource를 Context 범위로 설정하면 해당 Application에서만 접근할 수 있다.

Enterprise서버에서 DataSource를 Context 범위로도 설정할 수 있으나, EJB에서는 Lookup이 불가능하다.
Enterprise서버에서는 Global + ResourceLink 범위로 설정하는 것을 권장한다.

Password 암호화 알고리즘은 AES를 사용하고 있다. 암호화를 위한 키 값은 Manager LENA Home 하위  /conf/manager.conf 파일과 각 Application Server Home 하위 /conf/advertiser.conf 내에서 "datasource.key=키값"으로 관리한다.

2) JDBC driver Upload

Manager를 통해 JDBC Driver library를 upload 할 수 있다. DataSource 상세 정보 하위의 Upload 버튼을 클릭하면 아래와 같이 upload를 위한 화면이 출력된다.

  1. Search버튼을 통해 upload 할 파일을 선택한다. Upload할 파일은 JDBC Driver library 이므로 JAR 형식의 파일만 선택할 수 있다.
  2. Upload 버튼을 클릭하면 선택한 파일이 target 디렉토리로 upload 된다.
  3. JDBC Driver 파일이 upload되는 경로는 ${SERVER_HOME}/lib/datasource 이다.

3) Connection Test

DataSource 상세 화면에서 버튼을 클릭하면 설정된 DataSource에 대한 연결 테스트를 수행할 수 있다. 정상적으로 연결이 된 경우 아래와 같이 "JDBC Connection is successfully tested" 라는 문구가 출력된다.

만약 "Driver Class[클래스명] dose not exist." 라는 오류 문구가 출력될 경우, 해당 driver class가 정상적으로 업로드 되어 있으며 이에 대한 classpath가 설정되어 있는지 확인한다. classpath는 Application Server 상세 > JVM Env > JVM Settings 내에 추가한다. 설정 예는 아래와 같다.

예) CLASSPATH=CLASSPATH="${CLASSPATH}:${CATALINA_HOME}/lib/datasource/ojdbc6.jar"

JMS

Enterprise Edition의 경우 JMS관련 Resource를 정의할 수 있다. Resource Adapter, Connection Factory, Queue, Topic설정을 각각 추가, 수정, 삭제할 수 있다.

1) 주요 설정

(*) 는 필수값

항목설명비고
ID(*)Resource의 식별자
Type(*)Resource의 유형ActiveMQResourceAdapter
ConnectionFactory
Queue
Topic 중 택일
2) Resource Adapter 설정
항목설명비고
BrokerXmlConfigBroker 설정default: broker:(tcp://localhost:61616)?useJmx=false
ServerUrlBroker 주소default: vm://localhost?waitForStart=20000&async=true
DataSourceDatasource for persistence messages
StartUp TimeoutStartup 최대 대기시간기본값: 10초
3) Connection Factory 설정
항목설명비고
Resource Adapter사용할 Resource Adapter 지정
TransactionSupportGlobal Transaction 여부 지정XA
LOCAL
NONE
PoolMaxSizeActiveMQ broker에 연결되는 물리적인 커넥션의 최대 개수Default "10"
PoolMinSizeActiveMQ broker에 연결되는 물리적인 커넥션의 최소 개수Default "0"
ConnectionMaxWaitTimeout커넥션 최대 대기시간기본값: 5초
ConnectionMaxIdleTimeout반납되기전 최대 idle시간기본값: 15분
4) Queue 설정
항목설명비고
DestinationQueue의 이름 지정
5) Topic 설정
항목설명비고
DestinationTopic의 이름 지정

JTA

Enterprise Edition의 경우 Transaction Manager의 설정 변경 기능을 제공한다. Transaction Manager의 설정을 기본 설정으로 사용하려면 Managed Type을 Auto로 선택한다. (설치 시 default) Transaction Manager의 설정을 변경하고자 한다면 User Defined를 선택한다. (User Defined를 선택 시 Recovery 옵션은 default로 '아니오'가 선택된다)

1) 주요 설정

(*) 는 필수값

항목설명비고
Managed TypeUser Defined Transaction Manager 여부 선택Default "Auto"
ID(*)Transaction Manager의 이름
Default TimeoutTimeout 지정Default "10 minutes"
RecoveryTransaction 오류 시 복원여부 설정True를 선택한 경우 Logging 설정이 열림
2) Transaction Recovery Logging Option
  • Transaction 오류 시 복구를 위한 로깅 설정
항목설명비고
Directory로그파일을 생성할 디렉토리 위치Default "txlog"
File Name로그 파일 명Default "howl"
File Extension로그 파일의 확장자Default "log"
Max Log Files생성되는 로그파일의 최대 개수Default "2"
Max Block Per File파일당 최대 블록 수Default "-1"
Buffer Size버퍼사이즈(kb)Default "32"
Max Buffers버퍼의 최대값Default "0"
Min Buffers버퍼의 최소값Default "4"
Adler32 ChecksumAdler32 Checksum, Checksum Enabled 설정이 모두 '예'인 경우 Adler32 알고리즘을 사용하여 checksum을 계산Default "true"
Checksum EnabledBuffer의 Contents를 Disk에 기록 전 체크Default "true"
Threads Waiting대기하는 스레드의 최대 갯수Default "-1"
Flush SleepTimeForceManager의 총 sleep 시간Default "50 Milliseconds"