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 처럼 차례대로 패치를 적용해야합니다.
- 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 하여야 패치가 적용됩니다.
- 관리 콘솔을 이용한 JBoss EAP 패치
2-1. 먼저 패치 파일을 다운로드 받습니다
다운 링크 : https://access.redhat.com/downloads/
2.2. 관리 콘솔을 열고 Administration 탭의 Patch Management를 클릭합니다.

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는 누적 패치로써 최신 파일 하나만 패치하여 업그레이드가 가능합니다.
- 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 하여야 패치가 적용됩니다.
- 관리 콘솔을 이용한 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 하여야 패치가 적용됩니다.
- 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 방식이 생겼다는 점으로 두 가지 방식 중 사용자가 원하는 방식으로 진행할 수 있습니다.
- 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 하여야 패치가 적용됩니다.
- 관리 콘솔을 이용한 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를 클릭하여 업데이트를 완료합니다.
- 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을 통해 확인합니다.
- 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
