Supervisor 학습 기록
슈퍼 바 이 저 를 배우 기 전에 먼저 슈퍼 바 이 저 와 그 기능 이 무엇 인지 알 아야 한다.supervisor 는 python 으로 개발 한 프로 세 스 관리 도구 입 니 다. 관리 하 는 프로 세 스 나 프로그램 은 daemon 프로 세 스 가 아 닙 니 다. supervisor 는 자동 으로 daemon 프로 세 스 로 설치 하기 때문에 예 를 들 어 supervisor 로 nginx 를 관리 하려 면 설정 이 필요 합 니 다
daemon off
.슈퍼 바 이 저 는 현재 웹 응용 에서 매우 광범 위 하 다. 웹 사이트 에서 흔히 볼 수 있 는 배치 방법: django + uwsgi + nginx + 슈퍼 바 이 저.질문
현재 슈퍼 바 이 저 는 python 2. x 만 지원 하기 때문에 슈퍼 바 이 저 를 설치 할 때 시스템 의 기본 python 버 전 을 python 2. x 로 바 꿉 니 다.python 3 를 관리 하 는 프로그램 이 필요 하 다 면 프로그램 을 시작 하 는 python 편집 기 를 python 3 으로 바 꾸 면 됩 니 다.
관리자 설정
일반적으로 Ubuntu OS 에서
apt-get install supervisor
를 통 해 설치 되면 슈퍼 바 이 저 는 기본적으로 시작 되 고 /etc/supervisor
디 렉 터 리 에서 슈퍼 바 이 저 d. conf 를 자동 으로 생 성 합 니 다.다른 OS 에 차이 가 있 을 수 있 습 니 다. 일반 리 눅 스에 서 부팅 을 설정 하 는 방식 을 참조 하여 슈퍼 바 이 저 부팅 을 설정 할 수 있 습 니 다. 파일 템 플 릿 을 설정 하면 다음 과 같은 방법 으로 생 성 할 수 있 습 니 다.슈퍼 바 이 저 설정 모드 생 성
echo_supervisord_conf > /etc/supervisor/supervisord.conf
supervisord. conf 설정
슈퍼 visor 의 설정 파일 은 일반적으로 두 개의 큰 블록 으로 나 눌 수 있 습 니 다. 유 니 버 설 부분 과 APP 부분 은 기본적으로 기본 설정 을 사용 하면 됩 니 다. 관리 되 는 모든 프로 세 스 의 설정 은
/etc/supervisor/conf.d
디 렉 터 리 에 놓 고 슈퍼 visord. conf 설정 include conf.d/*.conf
을 통 해다음은 간단하게 슈퍼 바 이 저 를 통 해 celery 의 대기 열 작업, 정시 작업 및 프로 세 스 설정 을 관리 하 는 모델 입 니 다.
[program:celery_worker]
autorestart = true
autostart = true
stopasgroup = true
command = /home/zaihui/server/env/bin/celery worker --app=core --loglevel=WARN --concurrency=4 --events --queue celery,hi_priority --pidfile=/var/run/celery_worker.pid
directory = /home/zaihui/server/
numprocs = 1
startsecs = 10
stderr_logfile = /var/log/supervisor/celery_error-%(process_num)s.log
stdout_logfile = /var/log/supervisor/celery-%(process_num)s.log
environment =
AWS_PROD=True,
PYTHONPATH=/home/zaihui/server/ygg,
C_FORCE_ROOT=True,
AWS_ACCESS_KEY_ID="AKIAOIA6TYIGJ2GE7WJQ",
AWS_SECRET_ACCESS_KEY="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"
[program:celery_beat]
autorestart = true
autostart = true
stopasgroup = true
directory = /home/zaihui/server/
command = /home/zaihui/server/env/bin/celery beat --app=core --loglevel=WARN --pidfile=/var/run/celery_beat.pid
numprocs = 1
startsecs = 10
stdout_logfile = /var/log/supervisor/celery_beat-%(process_num)s.log
stderr_logfile = /var/log/supervisor/celery_beat_error-%(process_num)s.log
environment =
AWS_PROD=True,
PYTHONPATH=/home/zaihui/server/ygg,
C_FORCE_ROOT=True,
AWS_ACCESS_KEY_ID="AKIAOIA6TYIGJ2GE7WJQ",
AWS_SECRET_ACCESS_KEY="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"
[program:celery_flower]
autorestart = true
autostart = true
stopasgroup = true
directory = /home/zaihui/server/
command = /home/zaihui/server/env/bin/celery flower --app=core --conf=/etc/supervisor/conf.d/flowerconfig.py --broker_api=http://zaihui:[email protected]:15672/api/
numprocs = 1
startsecs = 10
stdout_logfile = /var/log/supervisor/celery_flower-%(process_num)s.log
stderr_logfile = /var/log/supervisor/celery_flower_error-%(process_num)s.log
environment =
AWS_PROD=True,
PYTHONPATH=/home/zaihui/server/ygg,
C_FORCE_ROOT=True,
AWS_ACCESS_KEY_ID="AKIAOIA6TYIGJ2GE7WJQ",
AWS_SECRET_ACCESS_KEY="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"
supervisor , /etc/supervisor/conf.d , /etc/supervisor/supervisord.conf include conf.d/*.conf
슈퍼 바 이 저 서 비 스 를 시작 하거나 닫 습 니 다.
supervisord - c / etc / supervisor / supervisord. conf \ # supervisord - c / etc / supervisor / supervisord. conf shutdown \ # supervisord - c / etc / supervisor / supervisord. conf reload 를 시작 합 니 다 \ # supervisorctl 을 다시 시작 합 니 다 stop all \ # 모든 프로 세 스 를 닫 습 니 다 supervisorctl stop \ # 프로 세 스 를 따로 닫 습 니 다.
docker 에서 슈퍼 visord 사용
응용 프로그램 이 docker 미 러 에 놓 여 용 기 를 통 해 시작 하면 docker 용기 의 시작 명령 은
supervisord -n -c /etc/supervisor/supervisord.conf
일 것 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.