반응형
1. 현상
특정 장비의 zagent(자원 모니터링 프로세스)가 defunct인 좀비 프로세스로 되어 장비의 프로세스가 신규 자원을 할당을 받지 모해서 기존 서버의 프로세스에서 서비스를 주관하는 프로세스가 오류가 발생함.
"ps -ef |grep defunct" 커맨드로 확인할 수 있음.
2. 해결 방안 1차적인 해결 책 : zagent 프로세스를 일정 주기를 정해서 주기적으로 재시작함(어쩔 수 없을 경우). 근본적인 해결책 : zagent 프로세스에서 자식 프로세스의 좀비 프로세스화 되지 않게 구현이 되어야 하므로 업체에 개선 항목으로 올린 상태임.
3. 좀비 프로세스란?
정의 : fork() 방식에서 발생하게 되는데 자식 프로세스가 종료할 경우 부모 프로세스에게 시그날을 송부하여 부모 프로세스가 정상적으로 자식 프로세스를 수거하여 자원을 해제하여야 하는데 계속 시그널을 받을 수 있는 상태가 되어 자식 프로세스는 살아있는 시체 프로세스가 되는 것을 말함.
문제점 : 자식 프로세스가 죽지 않고 메모리와 프로세스 엔트리가 유지되어서 시스템 자원을 지속적으로 소비하게되어 결국에는 다른 프로세스에게 자원 할당을 못하는 등의 영향을 주게 됨.
해결 방안 : 부모 프로세스가 기동중이었을 경우 프로그램 내부에서 signal을 catch하여 시그널 접수 처리하는 로직 필요함. 즉, waitpid()함수 등을 사용하여 부모 프로세스는 자식 프로세스가 죽기를 기다리게 해야 함.
태그 : 모니터링 zagent zombie
http://www.mimul.com/pebble/default/2007/06/02/1180749360000.html
반응형
'Server관련 > Sever(OS)' 카테고리의 다른 글
CentOS 5.2 DVD용 다운로드 (0) | 2009.03.10 |
---|---|
[Apache설정]Apache Core Features (0) | 2009.02.03 |
e2fsck를 이용한 리눅스 파일 시스템 복구하기 (0) | 2008.09.16 |
[linux] LVM in rescue mode (복원) (0) | 2008.09.16 |
[unix]kill signal + tomcat 프로세스 스레드값 만들기 (kill -3 <pid>) (0) | 2008.09.03 |
아파치 톰캣 디렉터리 열람 취약점 (0) | 2008.08.13 |
[펌]단일 Tomcat 서버에서 가상 호스트 설정법과 각 호스트별 Manager 기능 설정 (0) | 2008.04.10 |
[톰켓6.0]server.xml에 utf-8설정 (0) | 2008.04.08 |
도움이 되셨다면 하트모양의 "♡ 공감"을 눌러주시면 큰 격려가 됩니다.
(로그인하지 않으셔도 가능)
(로그인하지 않으셔도 가능)