python 프로 세 스 관리 도구 슈퍼 visor 의 설치 및 사용 튜 토리 얼

머리말
분포 식 환경 에서 모든 기계 에서 여러 프로 세 스 를 시작 하고 중지 해 야 할 수도 있 습 니 다.명령 행 방식 으로 수 동 으로 시작 하고 정지 하 는 것 은 매우 번 거 롭 고 모든 프로 세 스 의 상 태 를 보 는 것 도 불편 합 니 다.만약 하나의 도구 가 모든 기계 에 있 는 여러 프로 세 스 의 간단 하고 효율 적 인 중심 화 관 리 를 실현 할 수 있다 면 매우 편리 할 것 이다.그래서 Supervisord 도구 가 생 겨 났 다.Supervisord 와 유사 한 도 구 는 monit,daemontools,runit 를 포함한다.다음은 더 이상 할 말 이 없 으 니 상세 한 소 개 를 해 봅 시다.
설치 하 다.
Supervisord 는 Python 환경 에서 실행 되 는 서비스 모니터링 프로그램 이기 때문에 Supervisord 를 설치 하기 전에 python 환경 이 있어 야 합 니 다.

yum install python-setuptools
easy_install supervisor
설치 에 성공 하면 입력:echo_supervisord_conf,슈퍼 viscord 가 표 시 됩 니 다.conf 설정 템 플 릿 입 니 다.
설정 파일 을/etc 경로 로 지정 합 니 다.(관리 가 편리 합 니 다)

echo_supervisord_conf>/etc/supervisord.conf
프로필 설명

[unix_http_server]
file=/tmp/supervisor.sock ; UNIX socket   ,supervisorctl    
;chmod=0700 ; socket     mode,    0700
;chown=nobody:nogroup ; socket     owner,  : uid:gid
;[inet_http_server] ; HTTP    ,   web     
;port=127.0.0.1:9001 ; Web         IP    ,       ,       
;username=user ;           
;password=123 ;          
[supervisord]
logfile=/tmp/supervisord.log ;     ,    $CWD/supervisord.log
logfile_maxbytes=50MB ;       ,    rotate,   50MB
logfile_backups=10 ;              10
loglevel=info ;     ,   info,  : debug,warn,trace
pidfile=/tmp/supervisord.pid ; pid   
nodaemon=false ;        ,    false,   daemon      
minfds=1024 ;               ,   1024
minprocs=200 ;             ,   200
; the below section must remain in the config file for RPC
; (supervisorctl/web interface) to work, additional interfaces may be
; added by defining them in separate rpcinterface: sections
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[supervisorctl]
serverurl=unix:///tmp/supervisor.sock ;    UNIX socket    supervisord,    unix_http_server     file   
;serverurl=http://127.0.0.1:9001 ;    HTTP       supervisord
;          
[include]
files = relative/directory/*.ini ;     *.conf   *.ini
프로 세 스 프로그램 설정

[program:usercenter]
directory = /home/leon/projects/usercenter ;        
command = gunicorn -c gunicorn.py wsgi:app ;     ,                    
autostart = true ;   supervisord           
startsecs = 5 ;    5         ,          
autorestart = true ;            
startretries = 3 ;           ,    3
user = leon ;        
redirect_stderr = true ;   stderr      stdout,   false
stdout_logfile_maxbytes = 20MB ; stdout       ,   50MB
stdout_logfile_backups = 20 ; stdout        
; stdout     ,                   ,          (supervisord          )
stdout_logfile = /data/logs/usercenter_stdout.log
;      environment           ,           PYTHONPATH
; environment=PYTHONPATH=$PYTHONPATH:/path/to/somewhere
슈퍼 visord.conf 파일 에 프로 세 스 설정 을 추가 합 니 다.
각 프로 세 스 를 단독 파일 에 설정 한 다음[include]설정 항목 을 통 해 참조 하 는 것 을 추천 합 니 다.

[include]
files = /etc/supervisor/*.conf
슈퍼 바 이 저 서비스 시작
실행 명령

supervisord -c /etc/supervisord.conf
슈퍼 바 이 저 서비스 클 라 이언 트 관리
슈퍼 visord 명령 행 클 라 이언 트 관리 도구 슈퍼 visorctl 을 사용 하여 프로 세 스 를 관리 할 수 있 습 니 다.

supervisorctl status
supervisorctl stop usercenter
supervisorctl start usercenter
supervisorctl restart usercenter
supervisorctl reread
supervisorctl update
슈퍼 바 이 저 웹 관리 인터페이스

;[inet_http_server] ; HTTP    ,   web     
;port=127.0.0.1:9001 ; Web         IP    ,       ,       
;username=user ;           
;password=123 ;          
브 라 우 저 에 입력http://127.0.0.1:9001,웹 관리 인터페이스 에 들 어 갈 수 있 습 니 다
총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 셔 서 저희 에 대한 지지 에 감 사 드 립 니 다.

좋은 웹페이지 즐겨찾기