JVM Process

JVM

- JVM 이란?  JVM은 Java Virtual Machine의 줄임말로 java를 실행하기 위한 가상 기계라고 할 수 있다. OS에 종속받지 않고 실행되기 위해 OS 위에서 JAVA를 실행시키는 작업을 JVM에서 할 수있다.


Java 프로그램 실행 과정

  1. Java 프로그램이 실행되면 JVM은 OS로부터 프로그램이 필요로 하는 메모리 할당
  2. javac (자바 컴파일러)가 java 소스코드 (.java)를 읽어들여 자바 바이트코드(.class)로 변환
  3. Class Loader를 통해 class 파일들을 JVM으로 로딩
  4. 로딩된 class 파일들은 Execution engine을 통해 해석
  • Interpreter: 바이트 코드 명령어를 하나씩 읽어서 해석하고 실행
  • JIT Compiler: 인터프리터 방식으로 실행하다가 적절한 시점에 바이트 코드 전체를 컴파일
  1. 해석된 바이트코드는 Runtime Data Areas에 배치되어 수행 시작

JVM은 위 과정에서 필요에 따라 Thread Synchronization과 GC 작업 수행


HotSpot JVM, IBM

HotSpot JVM

 

Hotspot JVM은 가장 일반적인 JVM 중 하나

Hot한 Spot을 찾아서 해당 부분에서는 JIT 컴파일러를 사용하는 방법

내부적으로 프로파일링을 통해 핫스팟을 찾아내고 해당 부분에 대한 네이티브 코드를 생성

 

IBM

 

IBM은 J9/TR runtime을 사용한다.

  • IBM JVM은 Shared Classes Cache를 활용하여 메모리 소모 감소와 비용 줄일 수 있도록 설계
  • Heap을 구분하지 않고 Single heap 구조를 사용하다가 5.0 이후부터 옵션을 통하여 Heap 영역의 구분 방식을 변경할 수 있는 방법 제공

JVM 구성

  • Class Loader: JVM 내로 클래스 파일을 로드하고 링크를 통해 배치하는 작업을 수행하는 모듈, 런타임 동시에 동적으로 클래스를 로드
  • Execution Engine: 배치된 바이트코드들을 명령어 단위로 읽어서 실행
  • Garbage Collecter (GC): 힙 메모리 영역에 생성된 객체들 중에서 참조되지 않은 객체들을 탐색후 제거하는 역할
  • Runtime Data Area: JVM 메모리 영역으로 JAVA 애플리케이션을 실행할 때 사용되는 데이터들을 적재하는 영역

'MiddleWare > JEUS' 카테고리의 다른 글

[JEUS] 특정 Method 제한 설정  (0) 2022.08.08
[JEUS] JDBC JNDI DBCP 차이점  (0) 2022.08.08
[JEUS] Session Clustering 3 - specific scope cluster  (0) 2022.08.01
[JEUS] Cookie 설정  (0) 2022.07.18
[JEUS] JEUS 8.5 설치  (0) 2022.06.07

JSESSIONID?

Jeus 컨테이너에서 세션을 유지하기 위해 발급 되는 키다.

HTTP 프로토콜의 연결 상태를 저장하기 위해 쿠키를 클라이언트에게 발급해주고 이 값을 통해 세션을 유지할 수 있도록 한다.

Cookie?

Cookies

  • 클라이언트의 소유
  • 서버에 요청 시 헤더에 자동으로 포함하여 전송
  • 서버 단에서 설정 (JESESSIONID)
  • HttpOnly, Secure 속성 : 서버 → 클라이언트 (디버깅 창에서 Response 속성으로만 확인 가능)

http-only Cookies

http-only Cookie는 브라우저에서 쿠키에 접근할 수 없도록 제한하는 역할을 한다.

HTTP Only를 설정하면 브라우저에서 해당 쿠키로 접근할 수 없게 된다.

쿠키에 포함된 정보의 대부분이 브라우저에 접근할 필요가 없다.

<JEUS 설정>

webadmin - server - Engine - Session Config - Session Cookie 에서 설정

Http Only Cookies

Secure Cookies

Secure Cookie는 HTTPS 프로토콜 상에서 암호화된 요청일 경우에만 전송한다.

Secure Cookie 속성을 true로 설정하면 브라우저는 HTTPS가 아닌 통신에서는 쿠키를 전송하지 않는다.

Secure Cookies

Same Site Cookies

SameSite Cookie는 None, Lax, Strict,[Disable] 세가지 종류를 선택할 수 있음

  • none: 크로스 사이트 요청의 경우에도 항상 전송, 서드 파티 쿠키도 전송
  • Strict: 크로스 사이트 요청에는 항상 전송되지 않음, 퍼스트 파티 쿠키만 전송
  • Lax: 예외적인 요청에만 서드파티 쿠키 전송

SameSite 속성으로 None을 사용하려면 반드시 해당 쿠키는 Secure Cookie여야 한다.

SameSite Cookies

'MiddleWare > JEUS' 카테고리의 다른 글

[JEUS] 특정 Method 제한 설정  (0) 2022.08.08
[JEUS] JDBC JNDI DBCP 차이점  (0) 2022.08.08
[JEUS] Session Clustering 3 - specific scope cluster  (0) 2022.08.01
JVM, Java Process  (0) 2022.07.21
[JEUS] JEUS 8.5 설치  (0) 2022.06.07
#root 계정
#설치 가능한 OpenJDK 리스트 확인
sudo yum list java*jdk-devel

#OpenJDK 1.8.0 버전으로 설치
#Complete! 나오면 설치 완료
sudo yum -y install java-1.8.0-openjdk-devel.x86_64

#java, javac version 확인
java -version
javac -version

#호스트명 변경
vi /etc/hosts
[ip] [호스트 명]

hostname

#user 생성
adduser jeus8_1
passwd jeus8_1
#비밀번호 생성

#방화벽 OFF
systemctl status firewalld 

systemctl enable firewalld

systemctl stop firewalld

#로그인
su - jeus8_1 
#bash_profile 설정
vi .bash_profile

#JAVA_HOME 경로 설정
#JEUS_HOME 경로 설정
#DAS_HOSTNAME 설정
#DAS_PORT 설정

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# User specific environment and startup programs

EDITOR=vi
export EDITOR
set -o vi
umask 027
export PS1="[\\$LOGNAME@`hostname`:\\$PWD]$ "
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.332.b09-1.el7_9.x86_64
export PATH=$JAVA_HOME/bin:$PATH

###########################################
#################JEUS ENV###################
###########################################
export JEUS_HOME=/home/jeus8_1/jeus8_5
export JEUS_LOG_HOME=${JEUS_HOME}/logs
export PATH="${PATH}:${JEUS_HOME}/bin:${JEUS_HOME}/webserver/bin:${JEUS_HOME}/lib/system"

########## JEUS8 DomainAdminServer Set  ##############
export DOMAIN_NAME=jeus_domain
export DAS_HOSTNAME=mspark
export DAS_PORT=10000
export DAS_URL=${DAS_HOSTNAME}:${DAS_PORT}
export ENCODE_FILE=${JEUS_HOME}/bin/jeusEncode

########## JEUS  Alias #################
alias jhome='cd ${JEUS_HOME}'
alias jcfg='cd ${JEUS_HOME}/domains/${DOMAIN_NAME}/config'
alias jbin='cd ${JEUS_HOME}/bin'
alias jlog='cd ${JEUS_LOG_HOME}'
#수정 내용 적용
source .bash_profile

필요한 설치 파일 다운로드 → FileZilla를 통해 업로드

  1. jeus-uddi
  2. patch파일
  3. webadmin.war
  4. license
  5. jeus8500 설치 파일
#/home/ 경로에 install 디렉토리 생성 후 모든 파일 install 디렉토리에 업로드
mkdir install

#소유자 및 권한 변경
chown -R jeus8_1:jeus8_1 *
chmod -R 700 *

설치 진행

#bin 파일 실행
sh jeus8500_unix_generic_ko.bin

#설치가 완료되면 명령어가 작동되는 지 확인
jhome
jbin
jcfg

#log 디렉토리 및 하위 디렉토리 생성
jhome
mkdir logs
cd logs
mkdir gclog dump launcher nodeManager

패치파일 적용

  1. 라이센스 변경
cp -r license.dat /home/jeus8_1/jeus8_5/license/

cd  /home/jeus8_1/jeus8_5/license/
rm license
mv license.dat license

#라이센스 확인
jeusadmin -licenseinfo

=====================  LICENSE INFORMATION =====================
=== EDITION : Enterprise (Demo License)
=== DUE-DAY : 2022/7/10
=== ISSUE-DAY : 2022/5/10
=== CPU : unlimited
=== HOST-NAME : mspark
=== Max. Number of Clients : unlimited
=== LICENSE SEQNO : JDE-1652-150-0754
================================================================

  1. webadmin.war 변경
cd /home/jeus8_1/jeus8_5/lib/systemapps
cp -r webadmin.war webadmin.war_220519
rm webadmin.war
cd /home/insatll
cp -r webadmin.war /home/jeus8_1/jeus8_5/lib/systemapps
  1. uddi 변경
cd /home/jeus8_1/jeus8_5/lib/systemapps/uddi

cp -r jeus-uddi_v2c.ear jeus-uddi_v2c.ear_220519
cp -r jeus-uddi_v3c.ear jeus-uddi_v3c.ear_220519

cd /home/install/jeus-uddi

cp -r jeus-uddi_v2c.ear /home/jeus8_1/jeus8_5/lib/systemapps/uddi
cp -r jeus-uddi_v3c.ear /home/jeus8_1/jeus8_5/lib/systemapps/uddi
  1. 통합 패치 파일 적용
cd /home/

cp -r jext /home/jeus8_1/jeus8_5/lib
cp -r jlext /home/jeus8_1/jeus8_5/lib
cp -r jnext /home/jeus8_1/jeus8_5/lib

jeus.properties 수정

jbin
#수정 전 파일 백업
cp -p jeus.properties jeus.properties_220519

vi jeus.properties

#JAVA_ARGS 옵션 추가
# 난수 생성시 블록킹(blocking) 상태를 회피하기 위한 옵션 추가 
-Djava.security.egd=file:/dev/./urandom

#VM_JVM_OPTION 옵션 추가
-Djeus.launcher.log.home=/logs 

nodes.xml 수정

host명 변경 후 저장

cd domains
cp -r nodes.xml nodes.xml_220519

vi nodes.xml



    
        mspark
        mspark
        
            7730
            false
        
    

jeusnm.xml 수정

cd nodemanager
cp -r jeusnm.xml jeusnm.xml_220519
vi jeusnm.xml

#host name, logFileName 경로 지정



    true
    mspark
    7730
    500
    true
    5
    120000
    false
    false
    /home/jeus8_1/jeus8_5/logs/nodeManager/JeusNodeManager.log

domains.xml 수정

jcfg
vi domains.xml

#보통 8.5는 listen-address가 hostname으로 적용이 되어있음.
#되어있지 않은 경우 hostname으로 변경

:%s/0.0.0.0/[hostname]

Encryption 생성

방법1

startDomainAdminServer -domain jeus_domain -u wasadmin -p jeusadmin1! -cachelogin

#Sㅣuccessfully started the server[adminServer]. The server state is now RUNNING.
#jbin에 security.key가 생성이 되어있음
#/home/jeus8_1/.jeusadmin 경로로 이동하면 .jeuspasswd가 생성이 되어 있음

#.jeuspasswd 값을 jeusEncode 명으로 변경하여 가져오기
cp ${HOME}/.jeusadmin/.jeuspasswd $JEUS_HOME/bin/jeusEncode

방법2

encryption -keypath $JEUS_HOME/bin aes 8:wasadminjeusadmin1!

#jeusEncode 파일 내용
--------------------------------------------------------------------------------------------------------------------
jeus_domain:wasadmin jeus_domain:wasadmin w9yYSgR5/FcDF+CzX3cN+ORYZGJsnUUZ4lX7njZzWN6AQkR86foffGLwIy9V8B3P
--------------------------------------------------------------------------------------------------------------------

암호화된 내용 복사 후 
$jbin
vi jeusEncode
[도메인 이름]:[admin id][암호화된 ID:Password 문자열]
ex)
jeus_domain:wasadminv

기동 스크립트 생성

#모든 스크립트 파일은 bin 내에 생성

vi dsboot

startDomainAdminServer -domain $DOMAIN_NAME -u wasadmin -cachelogin -f $ENCODE_FILE

---------------------------------------------------------

vi dsdown

jeusadmin -host $DAS_URL -domain $DOMAIN_NAME -u wasadmin -cachelogin -f $ENCODE_FILE "local-shutdown -to 120"

---------------------------------------------------------

vi nmboot

LOGDATE=`date "+%y%m%d%H%M%S"`
nohup startNodeManager > $JEUS_LOG_HOME/nodeManager/nm_$LOGDATE.log &
--------------------------------en-------------------------

vi nmdown

stopNodeManager -properties $JEUS_HOME/nodemanager/jeusnm.xml

---------------------------------------------------------

vi dsa

jeusadmin -host $DAS_URL -domain $DOMAIN_NAME -u wasadmin -cachelogin -f $ENCODE_FILE

보안설정

#home 하위 directory에 700권한 부여
#root 계정으로 접속
su - root
cd /home
chmod -R 700 *
ls -al

SLF4J 관련 설정

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". 에러가 지속적으로 찍히는 문제가 있어
"$JEUS_HOME/lib/system/ehcache-scf-replication-jar-with-dependencies.jar" naming 변경

mv ehcache-scf-replication-jar-with-dependencies.jar ehcache-scf-replication-jar-with-dependencies.jar__

기동

#encryption 생성 시, 서버가 실행되어 있을 수 있음

#domainServer 기동 & 다운 명령어
dsdown

dsboot

#nodeManager 기동 & 다운 명령어
nmboot

nmdown

dsa #domainServerAdmin
[DAS]jeus_domain.adminServer>si

#root 계정 #설치 가능한 OpenJDK 리스트 확인 sudo yum list java*jdk-devel #OpenJDK 1.8.0 버전으로 설치 #Complete! 나오면 설치 완료 sudo yum -y install java-1.8.0-openjdk-devel.x86_64 #java, javac version 확인 java -version javac -version #호스트명 변경 vi /etc/hosts [ip] [호스트 명] hostname #user 생성 adduser jeus8_1 passwd jeus8_1 #비밀번호 생성 #방화벽 OFF systemctl status firewalld systemctl enable firewalld systemctl stop firewalld #로그인 su - jeus8_1

#bash_profile 설정
vi .bash_profile

#JAVA_HOME 경로 설정
#JEUS_HOME 경로 설정
#DAS_HOSTNAME 설정
#DAS_PORT 설정

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# User specific environment and startup programs

EDITOR=vi
export EDITOR
set -o vi
umask 027
export PS1="[\\$LOGNAME@`hostname`:\\$PWD]$ "
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.332.b09-1.el7_9.x86_64
export PATH=$JAVA_HOME/bin:$PATH

###########################################
#################JEUS ENV###################
###########################################
export JEUS_HOME=/home/jeus8_1/jeus8_5
export JEUS_LOG_HOME=${JEUS_HOME}/logs
export PATH="${PATH}:${JEUS_HOME}/bin:${JEUS_HOME}/webserver/bin:${JEUS_HOME}/lib/system"

########## JEUS8 DomainAdminServer Set  ##############
export DOMAIN_NAME=jeus_domain
export DAS_HOSTNAME=mspark
export DAS_PORT=10000
export DAS_URL=${DAS_HOSTNAME}:${DAS_PORT}
export ENCODE_FILE=${JEUS_HOME}/bin/jeusEncode

########## JEUS  Alias #################
alias jhome='cd ${JEUS_HOME}'
alias jcfg='cd ${JEUS_HOME}/domains/${DOMAIN_NAME}/config'
alias jbin='cd ${JEUS_HOME}/bin'
alias jlog='cd ${JEUS_LOG_HOME}'
#수정 내용 적용
source .bash_profile

필요한 설치 파일 다운로드 → FileZilla를 통해 업로드

  1. jeus-uddi
  2. patch파일
  3. webadmin.war
  4. license
  5. jeus8500 설치 파일
#/home/ 경로에 install 디렉토리 생성 후 모든 파일 install 디렉토리에 업로드
mkdir install

#소유자 및 권한 변경
chown -R jeus8_1:jeus8_1 *
chmod -R 700 *

설치 진행

#bin 파일 실행
sh jeus8500_unix_generic_ko.bin

#설치가 완료되면 명령어가 작동되는 지 확인
jhome
jbin
jcfg

#log 디렉토리 및 하위 디렉토리 생성
jhome
mkdir logs
cd logs
mkdir gclog dump launcher nodeManager

패치파일 적용

  1. 라이센스 변경
cp -r license.dat /home/jeus8_1/jeus8_5/license/

cd  /home/jeus8_1/jeus8_5/license/
rm license
mv license.dat license

#라이센스 확인
jeusadmin -licenseinfo

=====================  LICENSE INFORMATION =====================
=== EDITION : Enterprise (Demo License)
=== DUE-DAY : 2022/7/10
=== ISSUE-DAY : 2022/5/10
=== CPU : unlimited
=== HOST-NAME : mspark
=== Max. Number of Clients : unlimited
=== LICENSE SEQNO : JDE-1652-150-0754
================================================================

  1. webadmin.war 변경
cd /home/jeus8_1/jeus8_5/lib/systemapps
cp -r webadmin.war webadmin.war_220519
rm webadmin.war
cd /home/insatll
cp -r webadmin.war /home/jeus8_1/jeus8_5/lib/systemapps
  1. uddi 변경
cd /home/jeus8_1/jeus8_5/lib/systemapps/uddi

cp -r jeus-uddi_v2c.ear jeus-uddi_v2c.ear_220519
cp -r jeus-uddi_v3c.ear jeus-uddi_v3c.ear_220519

cd /home/install/jeus-uddi

cp -r jeus-uddi_v2c.ear /home/jeus8_1/jeus8_5/lib/systemapps/uddi
cp -r jeus-uddi_v3c.ear /home/jeus8_1/jeus8_5/lib/systemapps/uddi
  1. 통합 패치 파일 적용
cd /home/

cp -r jext /home/jeus8_1/jeus8_5/lib
cp -r jlext /home/jeus8_1/jeus8_5/lib
cp -r jnext /home/jeus8_1/jeus8_5/lib

jeus.properties 수정

jbin
#수정 전 파일 백업
cp -p jeus.properties jeus.properties_220519

vi jeus.properties

#JAVA_ARGS 옵션 추가
# 난수 생성시 블록킹(blocking) 상태를 회피하기 위한 옵션 추가 
-Djava.security.egd=file:/dev/./urandom

#VM_JVM_OPTION 옵션 추가
-Djeus.launcher.log.home=/logs 

nodes.xml 수정

host명 변경 후 저장

cd domains
cp -r nodes.xml nodes.xml_220519

vi nodes.xml



    
        mspark
        mspark
        
            7730
            false
        
    

jeusnm.xml 수정

cd nodemanager
cp -r jeusnm.xml jeusnm.xml_220519
vi jeusnm.xml

#host name, logFileName 경로 지정



    true
    mspark
    7730
    500
    true
    5
    120000
    false
    false
    /home/jeus8_1/jeus8_5/logs/nodeManager/JeusNodeManager.log

domains.xml 수정

jcfg
vi domains.xml

#보통 8.5는 listen-address가 hostname으로 적용이 되어있음.
#되어있지 않은 경우 hostname으로 변경

:%s/0.0.0.0/[hostname]

Encryption 생성

방법1

startDomainAdminServer -domain jeus_domain -u wasadmin -p jeusadmin1! -cachelogin

#Sㅣuccessfully started the server[adminServer]. The server state is now RUNNING.
#jbin에 security.key가 생성이 되어있음
#/home/jeus8_1/.jeusadmin 경로로 이동하면 .jeuspasswd가 생성이 되어 있음

#.jeuspasswd 값을 jeusEncode 명으로 변경하여 가져오기
cp ${HOME}/.jeusadmin/.jeuspasswd $JEUS_HOME/bin/jeusEncode

방법2

encryption -keypath $JEUS_HOME/bin aes 8:wasadminjeusadmin1!

#jeusEncode 파일 내용
--------------------------------------------------------------------------------------------------------------------
jeus_domain:wasadmin jeus_domain:wasadmin w9yYSgR5/FcDF+CzX3cN+ORYZGJsnUUZ4lX7njZzWN6AQkR86foffGLwIy9V8B3P
--------------------------------------------------------------------------------------------------------------------

암호화된 내용 복사 후 
$jbin
vi jeusEncode
[도메인 이름]:[admin id][암호화된 ID:Password 문자열]
ex)
jeus_domain:wasadminv

기동 스크립트 생성

#모든 스크립트 파일은 bin 내에 생성

vi dsboot

startDomainAdminServer -domain $DOMAIN_NAME -u wasadmin -cachelogin -f $ENCODE_FILE

---------------------------------------------------------

vi dsdown

jeusadmin -host $DAS_URL -domain $DOMAIN_NAME -u wasadmin -cachelogin -f $ENCODE_FILE "local-shutdown -to 120"

---------------------------------------------------------

vi nmboot

LOGDATE=`date "+%y%m%d%H%M%S"`
nohup startNodeManager > $JEUS_LOG_HOME/nodeManager/nm_$LOGDATE.log &
--------------------------------en-------------------------

vi nmdown

stopNodeManager -properties $JEUS_HOME/nodemanager/jeusnm.xml

---------------------------------------------------------

vi dsa

jeusadmin -host $DAS_URL -domain $DOMAIN_NAME -u wasadmin -cachelogin -f $ENCODE_FILE

보안설정

#home 하위 directory에 700권한 부여
#root 계정으로 접속
su - root
cd /home
chmod -R 700 *
ls -al

SLF4J 관련 설정

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". 에러가 지속적으로 찍히는 문제가 있어
"$JEUS_HOME/lib/system/ehcache-scf-replication-jar-with-dependencies.jar" naming 변경

mv ehcache-scf-replication-jar-with-dependencies.jar ehcache-scf-replication-jar-with-dependencies.jar__

기동

#encryption 생성 시, 서버가 실행되어 있을 수 있음

#domainServer 기동 & 다운 명령어
dsdown

dsboot

#nodeManager 기동 & 다운 명령어
nmboot

nmdown

dsa #domainServerAdmin
[DAS]jeus_domain.adminServer>si
#bash_profile 설정
vi .bash_profile

#JAVA_HOME 경로 설정
#JEUS_HOME 경로 설정
#DAS_HOSTNAME 설정
#DAS_PORT 설정

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# User specific environment and startup programs

EDITOR=vi
export EDITOR
set -o vi
umask 027
export PS1="[\\$LOGNAME@`hostname`:\\$PWD]$ "
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.332.b09-1.el7_9.x86_64
export PATH=$JAVA_HOME/bin:$PATH

###########################################
#################JEUS ENV###################
###########################################
export JEUS_HOME=/home/jeus8_1/jeus8_5
export JEUS_LOG_HOME=${JEUS_HOME}/logs
export PATH="${PATH}:${JEUS_HOME}/bin:${JEUS_HOME}/webserver/bin:${JEUS_HOME}/lib/system"

########## JEUS8 DomainAdminServer Set  ##############
export DOMAIN_NAME=jeus_domain
export DAS_HOSTNAME=mspark
export DAS_PORT=10000
export DAS_URL=${DAS_HOSTNAME}:${DAS_PORT}
export ENCODE_FILE=${JEUS_HOME}/bin/jeusEncode

########## JEUS  Alias #################
alias jhome='cd ${JEUS_HOME}'
alias jcfg='cd ${JEUS_HOME}/domains/${DOMAIN_NAME}/config'
alias jbin='cd ${JEUS_HOME}/bin'
alias jlog='cd ${JEUS_LOG_HOME}'
#수정 내용 적용
source .bash_profile

필요한 설치 파일 다운로드 → FileZilla를 통해 업로드

  1. jeus-uddi
  2. patch파일
  3. webadmin.war
  4. license
  5. jeus8500 설치 파일
#/home/ 경로에 install 디렉토리 생성 후 모든 파일 install 디렉토리에 업로드
mkdir install

#소유자 및 권한 변경
chown -R jeus8_1:jeus8_1 *
chmod -R 700 *

설치 진행

#bin 파일 실행
sh jeus8500_unix_generic_ko.bin

#설치가 완료되면 명령어가 작동되는 지 확인
jhome
jbin
jcfg

#log 디렉토리 및 하위 디렉토리 생성
jhome
mkdir logs
cd logs
mkdir gclog dump launcher nodeManager

패치파일 적용

  1. 라이센스 변경
cp -r license.dat /home/jeus8_1/jeus8_5/license/

cd  /home/jeus8_1/jeus8_5/license/
rm license
mv license.dat license

#라이센스 확인
jeusadmin -licenseinfo

=====================  LICENSE INFORMATION =====================
=== EDITION : Enterprise (Demo License)
=== DUE-DAY : 2022/7/10
=== ISSUE-DAY : 2022/5/10
=== CPU : unlimited
=== HOST-NAME : mspark
=== Max. Number of Clients : unlimited
=== LICENSE SEQNO : JDE-1652-150-0754
================================================================

  1. webadmin.war 변경
cd /home/jeus8_1/jeus8_5/lib/systemapps
cp -r webadmin.war webadmin.war_220519
rm webadmin.war
cd /home/insatll
cp -r webadmin.war /home/jeus8_1/jeus8_5/lib/systemapps
  1. uddi 변경
cd /home/jeus8_1/jeus8_5/lib/systemapps/uddi

cp -r jeus-uddi_v2c.ear jeus-uddi_v2c.ear_220519
cp -r jeus-uddi_v3c.ear jeus-uddi_v3c.ear_220519

cd /home/install/jeus-uddi

cp -r jeus-uddi_v2c.ear /home/jeus8_1/jeus8_5/lib/systemapps/uddi
cp -r jeus-uddi_v3c.ear /home/jeus8_1/jeus8_5/lib/systemapps/uddi
  1. 통합 패치 파일 적용
cd /home/

cp -r jext /home/jeus8_1/jeus8_5/lib
cp -r jlext /home/jeus8_1/jeus8_5/lib
cp -r jnext /home/jeus8_1/jeus8_5/lib

jeus.properties 수정

jbin
#수정 전 파일 백업
cp -p jeus.properties jeus.properties_220519

vi jeus.properties

#JAVA_ARGS 옵션 추가
# 난수 생성시 블록킹(blocking) 상태를 회피하기 위한 옵션 추가 
-Djava.security.egd=file:/dev/./urandom

#VM_JVM_OPTION 옵션 추가
-Djeus.launcher.log.home=/logs 

nodes.xml 수정

host명 변경 후 저장

cd domains
cp -r nodes.xml nodes.xml_220519

vi nodes.xml



    
        mspark
        mspark
        
            7730
            false
        
    

jeusnm.xml 수정

cd nodemanager
cp -r jeusnm.xml jeusnm.xml_220519
vi jeusnm.xml

#host name, logFileName 경로 지정



    true
    mspark
    7730
    500
    true
    5
    120000
    false
    false
    /home/jeus8_1/jeus8_5/logs/nodeManager/JeusNodeManager.log

domains.xml 수정

jcfg
vi domains.xml

#보통 8.5는 listen-address가 hostname으로 적용이 되어있음.
#되어있지 않은 경우 hostname으로 변경

:%s/0.0.0.0/[hostname]

Encryption 생성

방법1

startDomainAdminServer -domain jeus_domain -u wasadmin -p jeusadmin1! -cachelogin

#Sㅣuccessfully started the server[adminServer]. The server state is now RUNNING.
#jbin에 security.key가 생성이 되어있음
#/home/jeus8_1/.jeusadmin 경로로 이동하면 .jeuspasswd가 생성이 되어 있음

#.jeuspasswd 값을 jeusEncode 명으로 변경하여 가져오기
cp ${HOME}/.jeusadmin/.jeuspasswd $JEUS_HOME/bin/jeusEncode

방법2

encryption -keypath $JEUS_HOME/bin aes 8:wasadminjeusadmin1!

#jeusEncode 파일 내용
--------------------------------------------------------------------------------------------------------------------
jeus_domain:wasadmin jeus_domain:wasadmin w9yYSgR5/FcDF+CzX3cN+ORYZGJsnUUZ4lX7njZzWN6AQkR86foffGLwIy9V8B3P
--------------------------------------------------------------------------------------------------------------------

암호화된 내용 복사 후 
$jbin
vi jeusEncode
[도메인 이름]:[admin id][암호화된 ID:Password 문자열]
ex)
jeus_domain:wasadminv

기동 스크립트 생성

#모든 스크립트 파일은 bin 내에 생성

vi dsboot

startDomainAdminServer -domain $DOMAIN_NAME -u wasadmin -cachelogin -f $ENCODE_FILE

---------------------------------------------------------

vi dsdown

jeusadmin -host $DAS_URL -domain $DOMAIN_NAME -u wasadmin -cachelogin -f $ENCODE_FILE "local-shutdown -to 120"

---------------------------------------------------------

vi nmboot

LOGDATE=`date "+%y%m%d%H%M%S"`
nohup startNodeManager > $JEUS_LOG_HOME/nodeManager/nm_$LOGDATE.log &
--------------------------------en-------------------------

vi nmdown

stopNodeManager -properties $JEUS_HOME/nodemanager/jeusnm.xml

---------------------------------------------------------

vi dsa

jeusadmin -host $DAS_URL -domain $DOMAIN_NAME -u wasadmin -cachelogin -f $ENCODE_FILE

보안설정

#home 하위 directory에 700권한 부여
#root 계정으로 접속
su - root
cd /home
chmod -R 700 *
ls -al

SLF4J 관련 설정

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". 에러가 지속적으로 찍히는 문제가 있어
"$JEUS_HOME/lib/system/ehcache-scf-replication-jar-with-dependencies.jar" naming 변경

mv ehcache-scf-replication-jar-with-dependencies.jar ehcache-scf-replication-jar-with-dependencies.jar__

기동

#encryption 생성 시, 서버가 실행되어 있을 수 있음

#domainServer 기동 & 다운 명령어
dsdown

dsboot

#nodeManager 기동 & 다운 명령어
nmboot

nmdown

dsa #domainServerAdmin
[DAS]jeus_domain.adminServer>si

'MiddleWare > JEUS' 카테고리의 다른 글

[JEUS] 특정 Method 제한 설정  (0) 2022.08.08
[JEUS] JDBC JNDI DBCP 차이점  (0) 2022.08.08
[JEUS] Session Clustering 3 - specific scope cluster  (0) 2022.08.01
JVM, Java Process  (0) 2022.07.21
[JEUS] Cookie 설정  (0) 2022.07.18

+ Recent posts