반응형
JBoss 장애 사례: 설정 실수 및 시스템 환경 문제로 인한 장애
이번 글에서는 Web/WAS 운영 중 다음과 같은 시스템 환경 문제와 설정 실수로 인해 발생하는 장애 사례들을 소개합니다.
- 파일 핸들 초과
- 권한 오류
- 파일 복제 시스템 문제 (NAS 등)
- 외부 패치 반영 누락
✅ 1. Too many open files 오류
🔹 증상
- WAS 기동 도중 예외 발생
- DB 연결 또는 파일 접근 시 에러 로그 출력
Too many open files
또는EMFILE
메시지
🔹 원인
- 리눅스 OS의 open file 수 제한
- JBoss는 소켓, 로그, 라이브러리 등 많은 파일 핸들을 사용
🔹 해결 방법
현재 제한 확인
ulimit -n
시스템 전체 수정
vi /etc/security/limits.conf
jboss soft nofile 65535
jboss hard nofile 65535
재로그인 후 확인
ulimit -n
✅ 2. 슬레이브 호스트 구성 시 권한 오류
🔹 증상
- slave 호스트에서 domain.sh 실행 시 연결 실패
- management user로 등록했는데도 CLI 인증 실패
🔹 원인
- 사용자 등록이
Management
가 아닌Application
으로 되어 있음 - domain.xml의 security realm 설정이 충돌됨
🔹 해결 방법
add-user.sh
실행 시 "Management User"로 정확히 선택host-slave.xml
내 domain controller 주소 및 사용자 정보 확인
✅ 3. NAS 구성 시 파일 복제 지연
🔹 증상
.war
파일 복사 후.dodeploy
생성했으나 배포가 지연되거나 실패- 로그에
undeployed
또는 timeout 메시지 발생
🔹 원인
- NAS(NFS) 복제 지연으로 인해
.war
파일 완전 복사 전에.dodeploy
인식됨 - deployment scanner가 zip 파일을 완전히 읽지 못하고 실패 처리
🔹 해결 방법
- NAS 환경에서는 auto-deploy 사용 금지
<deployment-scanner auto-deploy-zip="false"/>
- CLI 또는 Admin Console을 통한 수동 배포 사용
✅ 4. 시스템 패치 반영 누락
🔹 증상
- 운영 중 보안패치 또는 시스템 업데이트 누락
- 특정 jar/library 버전과 호환되지 않아 기동 실패
🔹 해결 방법
- 패치 릴리즈 시 jar 버전 확인
$JBOSS_HOME/modules/
하위 모듈 확인 및 교체
예: log4j, commons-lang, jdbc 드라이버 등은 반드시 일치된 버전 사용
✅ 마무리
이번 글에서는 시스템 자원 설정, 계정 권한, 파일 시스템 환경(NAS),
그리고 운영 중 놓치기 쉬운 패치 반영 누락 등으로 인해 발생하는
비정형 장애 사례들을 정리했습니다.
✅ 시리즈 요약
회차 | 주요 주제 |
---|---|
1편 | 문자 인코딩, 클러스터, 포트 설정 문제 |
2편 | 파일 업로드, 라이브러리 충돌, 네트워크 오류 |
3편 | 세션 끊김, 로그 문제, 배포 언디플로이 현상 |
4편 | 파일 핸들 초과, 권한 설정, NAS 구성 문제 |
이 시리즈를 통해 JBoss 실무 운영 시 자주 마주하는 장애를
미리 대비하고 빠르게 대응하는 데 도움이 되길 바랍니다.
반응형
'Application Servers & Java' 카테고리의 다른 글
[4편] mod_proxy_ajp를 이용한 Apache-Tomcat 연동 실무 가이드 (0) | 2025.05.16 |
---|---|
[3편] Tomcat 설치 및 설정 실무 가이드 – 디렉터리 구조, 커넥터 설정, WAR 배포 (1) | 2025.05.15 |
JBoss 장애 사례: 세션 끊김, 로그 비정상, 비정상 배포 장애 (0) | 2025.05.15 |
JBoss 장애 사례: MIME 업로드, 라이브러리 중복, 네트워크 연동 오류 (0) | 2025.05.15 |
JBoss 장애 사례: 문자 인코딩, 클러스터, 포트 설정 이슈 (0) | 2025.05.15 |