본문 바로가기
  • 노션에서 삽질한 내용을 정리하는 블로그
자기발전소/# Middleware

[Weblogic] Domain Directory Contents

by iamlucia 2021. 1. 19.

 

본 게시글은 오라클 공식문서를 직역하며 공부하는 글입니다 : ) 


 

도메인을 생성하기 전, 기 생성되어있는 도메인 디렉토리 예시를 다음 경로에서 확인할 수 있다: $ORACLE_HOME/user_projects/domains/wl_server
($ORACLE_HOME : 웹로직 서버 설치시 사용자가 지정한 디렉토리)

 

오라클 웹로직 서버는 기본적으로 오라클미들웨어 아래에 도메인 디렉토리를 생성한다: $ORACLE_HOME/user_projects/domains


domain-name :

말그대로 도메인명이다. 

 

autodeploy :

개발모드 서버에서 어플리케이션 배포를 할 수 있는 빠른 방법을 제공한다. 

이 디렉토리 안에 어플리케이션이나 모듈을 넣어두면, 개발 모드로 돌아가는 서버 인스턴스는 자동으로 이를 배포한다.

다음의 파일들을 이 디렉토리 안에 위치시킬 수 있다.

 

bin :

도메인의 어드민 서버 및 매니지드 서버를 실행하고 중지시키는 과정에서 사용되는 스크립트가 들어있다.

이 스크립트는 UNIX의 경우 .sh 형식이며, 윈도우의 경우 .cmd 형식의 파일이다.

DB관리 시스템 또는 풀텍스트 검색엔진을 시작하거나 중지시키는 스크립트와 같은 다른 스크립트도 선택적으로 포함 가능하다.

 

config : 

이 디렉토리는 도메인의 현재 설정 및 배포(배치)상태에 대한 내용을 포함하고 있다.

도메인 구성 파일 comfig.xml이 이 디렉토리에 들어있다. 

 

ㄴconfig/configCache

도메인의 구성 문서에 변화가 생겼을 때 해당 변화를 확인할 때 성능을 최적화하는데 사용된다. 

해당 데이터는 오라클 웹로직 서버를 향하며(internal to), 백업될 필요가 없다.

 

ㄴconfig/diagnostics

웹로직 진단 프레임워크의 instrumentation(오류를 진단하거나 추적정보를 쓰기 위해 제품의 성능을 모니터하거나 측정)을 위한 시스템 모듈을 포함한다. 

 

ㄴconfig/jdbc

JDBC 관련 시스템 모듈(JMX에서 직접적으로 구성되는 JDBC모듈)을 포함한다.

 

ㄴconfig/jms

JMS 관련 시스템 모듈(JMX에서 직접적으로 구성되는 JMS모듈)을 포함한다.

 

ㄴconfig/lib

최신 버전에서는 사용하지 않는 디렉토리

 

ㄴconfig/nodemanager

노드매니저 연결에 필요한 정보를 담고 있다. 

$ cat nm_password.properties
#Node manager user information
#Fri Jan 08 16:12:36 KST 2021
hashed={Algorithm\=SHA-256}VIMxK28AOcwbOv2YAtyC8+3a1t6EyEMZbHFluQ99pd0\=

 

ㄴconfig/security

보안 프레임워크 관련 시스템 모듈을 담고 있다. 도메인의 현재 영역(domain's current realm)의 각 보안 프로바이더에 대한 하나의 보안 프로바이더 설정 확장 기능을 가진다. (one security provider configuration extension for each of security providers in the domain's current realm.)

 

ㄴconfig/startup

해당 디렉토리는 startup plan이 담긴 시스템 모듈을 담고 있다. startup plan은 서버 스타트업의 한 부분으로 사용되는 쉘 스크립트를 생성할 때 사용된다.

 

console-ext

콘솔 확장 기능(extension)을 담고 있으며, 어드민 서버에서만 사용된다. 

 

init-info

웹로직 도메인 프로비저닝에 사용되는 파일들을 담고 있는데, 이 파일들은 절대 수정되어서는 안된다. 

 

lib

도메인 내의 웹로직 서버 인스턴스에서 실행되고 있는 JAVA EE 어플리케이션이라면, 이 디렉토리의 JAR 파일은 사용가능하다. 

이 jar 파일들은 서버 기동시(startup) 서버 클래스경로의 마지막에 동적으로 추가된다. (이때 문자순으로 나열됨) 

이 디렉토리는 서버 기동시 적용되는 -Dweblogic.ext.dirs 옵션에 의해 오버라이딩 될 수 있다.

 

orchestartion/workflow

 

original

 

pending 

요청은 들어왔으나 아직 활성화되지 않은 설정 변경사항들을 나타내는 설정 파일들을 포함하고 있다. 변경사항이 활성화된다면 이 디렉토리에서 해당 파일은 삭제된다.

 

security

도메인의 웹로직 서버 인스턴스에 동일하게 적용되는 보안 관련 파일(SerializedSystemIni.dat)을 담고 있다. 

또한 그 외의 파일은 도메인의 어드민 서버에만 적용되는 보안 관련 파일들이다.

 

servers

servers/server-name

각 서버 인스턴스에 대한 데이터를 포함한다. 

 

servers/server-name/cache

캐시된 데이터를 포함하는 파일이나 디렉토리를 담고있다. 

 

servers/server-name/data

서버별 지속적인(임시적인 것이 아닌)상태를 유지시키는 파일을 담고 있는데, 이는 웹로직 서버 인스턴스를 운영하는 데 사용된다. 이 디렉토리 안의 파일들은, 웹로직서버인스턴스가 기동되거나 중지되거나 손상을 입고나 재시작될 때 또는 업그레이드 될때에도 유지되어야 한다. 

 

servers/server-name/data/ldap

내장된 LDAP 데이터베이스를 담고 있따. 웹로직 서버 인스턴스에 대한 런타임 보안 상태(run-time security state for the Oracle WebLogic Server instance)는 해당 디렉토리에서 유지되어야 한다. 

 

servers/server-name/data/store

웹로직의 영구적인 저장소를 담고 있다. 각 저장소마다 해당 저장소를 represent하는 파일을 담는 하위디렉토리가 있다. 관습적으로 default 라는 이름의 저장소가 있다.

 

servers/server-name/logs

로그와 진단 정보를 담고 있다. 서버 운영에는 필수적이지 않고 삭제 가능하다 (서버 인스턴스가 중지된 상태에서 삭제 가능). 하지만 디버깅이나 감시 목적으로는 꽤 중요한 정보들이기 때문에 이유없이 삭제되어서는 안된다.

 

servers/server-name/logs/diagnostic_images

웹로직 진단 프레임워크의 서버 이미지 캡처 요소에 의해 생성된 정보를 담고 있다. 

 

servers/server-name/security

보안 관련 파일을 담고 있는데 이 파일은 각 서버 인스턴스마다 달라야 한다.

boot.properties 라는 파일이 대표적인데, 이는 서버마다 달라야 한다. 또한 이 디렉토리는 SSL 키에 대한 파일을 가지기도 한다.

 

servers/server-name/tmp

서버 인스턴스가 기동되는 중에 생성되는 임시적인 디렉토리나 파일을 담고 있다.

예를 들어, 특정 위치가 지정되지 않는다면 JMS 페이징 디렉토리는 자동적으로 이 디렉토리에 생성된다. 서버 인스턴스가 중지된다면 이 파일은 삭제될 수 있다.