CODEOK.NET

Page history of 서버 프로세스를 관리하는 올바른 방법



Title: 서버 프로세스 띄우기 | edited by Youngrok Pak at 5 years, 8 months ago.

웹사이트 개발을 완료하고 서비스할 프로덕션(production) 서버에 배치(deploy)할 때 고민하게 되는 문제 중 하나가 서버에서 띄워야 하는 여러 가지 프로세스들을 어떻게 띄울 것인가 하는 문제다. 프로세스가 죽으면 다시 띄우는 것도 물론 필요하다. monit이나 supervisord, god 등은 이런 목적으로 나온 것이다(몇 가지 부가적인 목적이 더 있긴 하다). 하지만 이건 OS에 대한 이해 부족에서 나온 것이다. OS에는 이미 이런 일을 담당하는 기능이 있다. 아니 심지어 OS의 가장 기초적인 기능이다. 서버를 설치하면서 띄우게 되는 여러 가지 프로세스들, 이를테면 httpd나 mysqld, crond 등을 monit이나 supervisord로 띄우는 것을 본 적이 있는가? 왜 이런 프로세스들은 monit 같은 걸 사용하지 않을까? 이런 건 프로세스가 죽었는지 모니터링할 필요도 없고 다시 살릴 필요도 없나? 물론 그럴 리가 없다. 그런데도 monit 류를 쓰지 않는 것은 더 나은 시스템, 유닉스 계열에서는 init이라는 시스템이 있기 때문이다.

 

Wiki at WikiNamu