WEB/WAS가 기동중이나 콘솔 등에서 기동중지로 보일때_tmp
- iPlanet Web Server, Tomcat 등의 SW 사용시, 실제로 WEB/WAS의 프로세스는 확인이 되지만
콘솔에서 기동상태를 확인하거나, 기동중지/재기동 스크립트 수행시 'server is not running' / '기동되어 있지 않아 종료가 불가능하다' 는 식의 로그를 확인하는 경우가 있다.
이런 경우는 대부분 /tmp 하위에 pid를 관리하도록 Default 설정되어 있는 경우로,
OS의 tmpwatch/tmpfiles 설정으로 인해 일정 시간동안 변경이 없는 PID가 삭제처리되어 발생하는 현상이다.
1. 현상 대응 (iPlanet 예시)
iPlanet Web Server 1) ps -ef | grep "$인스턴스명" | grep wdog 명령어 실행
2) /tmp/hsperfdata~ 경로 및 PID 확인
3) 해당 경로로 이동하여, web 기동 계정으로 pid 파일을 만든다. (vi pid -> PID 입력 후 저장)
-> iPlanet 인스턴스디렉토리/bin 에서 stopserv 실행시 정상으로 종료 가능/ 콘솔에서 기동상태로 정상 조회 가능
2. 추가 발생 방지 (tmpwatch / tmpfiles 예외처리)
RHEL 6부터 디폴트 설정되어 있는 사항으로 다음의 예외처리파일을 찾아 예외항목에 해당 디렉토리를 추가하거나 아예 동작하지 않도록 처리한다. 다음의 세 방법 중 필요한 방법으로 처리한다.
1) 예외 처리 방법(tmpfiles) : /usr/lib/tmpfiles.d/tmp.conf 에 x/tmp/hsperfdata~ 경로 추가
2) 예외 처리 방법 (tmpwatch) : vi /etc/cron.daily/tmpwatch 로 열고, -x tmp/해당경로 추가
3) tmpwatch 비활성화 : root 계정으로 크론 데일리에서 제외
mv /etc/cron.daily/tmpwatch /other/location/tmpwatch.bkp ( ** /other ~ -> 임의 경로로 변경 가능)