JBoss EAP Patch

 

이 문서는 JBoss EAP에서의 Patch 적용 방법을 설명 합니다.

JBoss EAP 6.x 에서의 Patch

JBoss EAP 6.x 의 경우, 패치 적용 시 한 단계씩 업그레이드 작업을 거쳐야 합니다.

예를 들어 버전이 6.2.0일 경우 6.2.2 처럼 바로 넘어갈 수 없으며 6.2.0 -> 6.2.1 -> 6.2.2 처럼 차례대로 패치를 적용해야합니다.

 

  1. CLI 적용 방법

 

1-1. 먼저 패치 파일을 다운로드 받습니다

다운 링크 : https://access.redhat.com/downloads/

 

1-2. jboss-cli.sh 실행

./jboss-cli.sh
[standalone@192.168.0.100:9999 / ] patch apply
/path/to/your/downloaded/patch.zip

 

1-3. 이후 Jboss를 restart 및 reload 하여야 패치가 적용됩니다.

 

 

  1. 관리 콘솔을 이용한 JBoss EAP 패치

 

2-1. 먼저 패치 파일을 다운로드 받습니다

다운 링크 : https://access.redhat.com/downloads/

 

2.2. 관리 콘솔을 열고 Administration 탭의 Patch Management를 클릭합니다.

jboss

2.3. Apply a New Patch를 클릭하여 적용할 패치 파일을 선택 후 Next를 클릭합니다.

2.4. 패치가 완료 된 후 재시작 여부를 선택한 뒤 Finish 버튼을 클릭하여 패치를 완료합니다.

 

2-5. 이후 Jboss를 restart 및 reload 하여야 패치가 적용됩니다.

 

 

JBoss EAP 7.x 에서의 Patch

JBoss EAP 7.x ~ 8.x는 누적 패치로써 최신 파일 하나만 패치하여 업그레이드가 가능합니다.

 

  1. CLI 적용 방법

 

1-1. 먼저 패치 파일을 다운로드 받습니다

다운 링크 : https://access.redhat.com/downloads/

 

1-2. jboss-cli.sh 실행

./jboss-cli.sh
[standalone@192.168.0.100:9999 / ] patch apply
/path/to/your/downloaded/patch.zip

 

1-3. 이후 Jboss를 restart 및 reload 하여야 패치가 적용됩니다.

 

 

  1. 관리 콘솔을 이용한 JBoss EAP 패치

 

2-1. 먼저 패치 파일을 다운로드 받습니다

다운 링크 : https://access.redhat.com/downloads/

 

2.2. 관리 콘솔을 열고 패치 탭으로 이동합니다.

 

2.3. Add (+) 버튼을 클릭 후 Choose a file을 클릭하거나 적용할 패치 파일을 마우스로 끌어서 놓은 후 Next를 클릭합니다.

2.4 이 후 Finish 를 클릭하여 패치를 적용합니다.

2-5. 이후 Jboss를 restart 및 reload 하여야 패치가 적용됩니다.

 

 

  1. Patch 롤백

 

JBoss EAP 인스턴스가 실행 중인 상태에서 CLI에 접속하여 진행합니다.

 

3.1 먼저 Jboss CLI에 접속하여 롤백하려는 패치 ID를 확인합니다.

patch history
##출력 예시

3.2 롤백 실행

patch rollback 명령어에 롤백 할 패치 ID를 지정합니다.

이 때 –reset-configuration 옵션에 유의하여 진행합니다.

옵션 값설명주의 사항
TRUE패치 적용 전의 서버 구성 파일 상태로 되돌립니다. (권장)패치 적용 후 사용자가 구성 파일(standalone.xml, host.xml 등)에 수동으로 변경한 모든 내용이 사라집니다.
FALSE서버 구성 파일을 롤백하지 않고 현재 상태를 유지합니다.롤백된 바이너리와 현재 구성 파일 간에 불일치가 발생하여 서버 시작 실패 등의 문제가 생길 수 있습니다. 일반적으로 권장하지 않습니다.

 

**가장 최근에 적용된 패치(최상위 패치)만 롤백할 수 있으며, 순차적으로 롤백을 진행해야 합니다.

즉 patch history 에서 가장 위에 있는 패치부터 롤백해야 합니다.**

patch rollback --patch-id=jboss-eap-7.4.23.CP --reset-configuration=TRUE

 

3.3 롤백 확인

 

JBoss EAP 인스턴스를 재기동 한 뒤 롤백이 잘 되었는지는 jboss eap 로그 및 jboss-cli.sh를 이용하여 version을 통해 확인합니다.

 

 

JBoss EAP 8.x 에서의 Patch

JBoss EAP 8 에서는 Jboss EAP 7.X 이하에서 사용하던 CLI 명령어가 변경되었습니다.

patch apply -> installer update

 

JBoss EAP 8.0부터 jboss-eap-installation-manager.sh 파일이 추가되었습니다.

RedHat 공식 다운로드 페이지에서 jboss-eap-installation-manager.sh 파일을 다운로드 받아 해당 스크립트를 활용하여 JBoss EAP를 설치할 수 있습니다.

 

JBoss EAP 8.x 버전이 되며 가장 달라진 점은 패치 방식이 Online 방식과 Offline 방식이 생겼다는 점으로 두 가지 방식 중 사용자가 원하는 방식으로 진행할 수 있습니다.

 

  1. jboss-eap-installation-manager.sh 방법 (Online 방식)

 

1-1. 먼저 패치 파일을 다운로드 받습니다

 

1-2.  jboss-eap-installation-manager.sh를 사용

Online 방식을 이용하면 신규 업데이트 패치 파일을 직접 다운로드 하지 않고 온라인으로 업데이트 리스트를 확인하여 적용할 수 있습니다. 해당 방식을 사용하기 위해선 인터넷 접속이 가능한 환경이어야 합니다.

./jboss-eap-installation-manager.sh update list –dir ${JBOSS_HOME} # 업데이트 리스트 검색
./jboss-eap-installation-manager.sh update perform –dir ${JBOSS_HOME} # 업데이트 리스트 적용

1-3. 이후 Jboss를 restart 및 reload 하여야 패치가 적용됩니다.

 

 

2.jboss-eap-installation-manager.sh 방법 (Offline 방식)

로컬 서버에 repository를 구축한 후, 해당 repository의 패치 파일을 활용하여 업데이트 하는 방식입니다.

 

** 패치를 처음 하는 경우, 즉 최초 버전인 8.0.0 상태에서는 무조건 한 번 압축을 푼 상태로 업데이트를 진행해야 zip 파일 업데이트를 할 수 있습니다.

ex ) ./jboss-eap-installation-manager.sh update perform –dir /jjh/jboss8 –repositories=file:/jjh/jboss-eap-8.0.5.GA-maven-repository/maven-repository/ –offline –yes

** JBoss EAP 8.0.2+ 이후 버전부터는 maven repository zip 압축 파일을 풀지 않고 압축 파일 형태로 바로 업데이트도 가능합니다.

./jboss-eap-installation-manager.sh update perform –dir /jjh/jboss8 –repositories=file:/jjh/jboss-eap-8.0.8-runtime-maven-repository.zip –offline –yes

 

2-1. 먼저 패치 파일을 다운로드 받습니다

 

2-2.  jboss-eap-installation-manager.sh를 사용


./jboss-eap-installation-manager.sh update perform --dir ${JBOSS_HOME} --repositories
/path/to/your/downloaded/patch/jboss-eap-8.0.10.GA-runtime-maven-repository/maven-repository --offline --yes

 

2-3. 이후 Jboss를 restart 및 reload 하여야 패치가 적용됩니다.

 

 

  1. 관리 콘솔을 이용한 JBoss EAP 패치

**JBoss EAP 8 에서는 관리 콘솔을 이용한 패치도 Online과 Offline 두가지 방식이 가능합니다.**

 

3-1. 먼저 패치 파일을 다운로드 받습니다

다운 링크 : https://access.redhat.com/downloads/

 

3.2. 관리 콘솔을 열고 Update Manager를 클릭합니다.

 

3.3. Update를 클릭 후 업데이트 아이콘을 클릭하고 Offline Updates를 클릭하여 패치 파일을 업로드 합니다.

3.4. Next를 클릭하여 Candidate를 준비 후 패치를 적용합니다.

 

3.5. Finish를 클릭하여 업데이트를 완료합니다.

 

 

  1. Patch 롤백

 

JBoss EAP 8.x 에서 적용한 패치를 롤백하는 방법은 EAP 7.x와 다릅니다.

Installatin Manager 는 변경 사항을 리비전(Revision)으로 관리하며, 원하는 리비전으로 되돌리는 방식을 사용합니다.

 

4.1 먼저 JBoss EAP 인스턴스를 종료합니다.

 

4.2 리비전 ID 확인

history 명령어를 사용하여 서버에 적용 된 모든 설치 및 업데이트 기록을 확인하고 되돌아 갈 상태의 리비전 ID를 찾습니다.

./jboss-eap-installation-manager.sh history –dir ${JBOSS_HOME}
##출력 예시

 

4.3 롤백 실행

revert perform 명령어에 롤백하려는 EAP 디렉토리와 돌아가고 싶은 상태의 리비전 ID를 지정하여 실행합니다.

./jboss-eap-installation-manager.sh revert perform --dir ${JBOSS_HOME} --revision=263ee85c --yes

 

4.4 롤백 확인

 

롤백이 잘 되었는지는 jboss eap 로그 및 jboss-cli.sh를 이용하여 version을 통해 확인합니다.

 

 

  1. Patch ERROR

 

5-1.  ERROR: Unable to resolve required channel metadata

 

해당 에러가 발생하는 경우 아래 원인 중 하나입니다.

 

– 8.0.0 최초버전인 경우 무조건 압축을 풀어서 디렉토리 경로 하위의 maven-repository까지 넣어줘야합니다.

– 보통 해당 오류가 발생하는것은 레포지토리 디렉토리나 파일의 경로가 잘못되어 발생하는 문제이므로 잘 확인하여야합니다.

 

5-2.  ERROR: PRSP000200: Aborting update – the server appears to be running.

 

해당 에러가 발생하는 경우 아래의 사항을 확인해야 합니다.

 

– JBoss EAP 서버가 기동중인지 확인합니다.

– 기동중임에도 해당 에러가 발생한다면 /data, /tmp 디렉토리를 삭제한 뒤 다시 패치합니다.

 

 

 

자유롭게 댓글을 달아주세요! 언제나 환영합니다.
기타 문의:  info@neoclova.co.kr
네오클로바 기술블로그 홈 바로가기: https://neoclova.net
네오클로바 홈페이지: http://neoclova.co.kr

 

Similar Posts

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다