IT story

감독자 소켓 오류 문제 [종료 됨]

hot-time 2020. 9. 4. 08:09
반응형

감독자 소켓 오류 문제 [종료 됨]


$ supervisorctl reread
error: <class 'socket.error'>, [Errno 111] Connection refused: file: /usr/lib64/python2.6/socket.py line: 567

프로덕션 시스템에서 감독자를 구성하려고하는데이 오류가 발생합니다. 감독자 로그 파일이 비어 있습니다.

를 입력 supervisorctl하면 다음과 같이 불평합니다.

http://localhost:9001 refused connection

현재 포트 9001에서 수신중인 항목이 lsof | grep TCP없습니다. AFACT : 아무것도 반환하지 않습니다.


supervisorctl을 사용하려면 먼저 supervisord를 시작해야합니다. 나의 경우에는:

sudo supervisord -c /etc/supervisor/supervisord.conf
sudo supervisorctl -c /etc/supervisor/supervisord.conf

다음과 같이 사용자 지정 경로로 감독을 시작한 경우 :

sudo supervisord -c /mypath/supervisord.conf

그런 다음 다음과 같이 동일한 매개 변수로 supervisorctl을 시작해야합니다.

sudo supervisorctl -c /mypath/supervisord.conf

상대 URL로 supervisor를 시작한 -c다음 다른 디렉토리에서 supervisorctl을 실행 하면이 문제가 발생할 수 있습니다 .

예를 들면 :

supervisord -c supervisord.conf
supervisorctl start someapp ## works 
cd somedirectory
supervisorctl restart someapp ## http://localhost:9001 refused connection

해결책은 항상 절대 경로를 사용하는 것입니다. 예 :

좋은:

supervisord -c /etc/supervisor/supervisord.conf

나쁜:

supervisord -c supervisord.conf

이 문제는 오래된 supervisord.conf파일 버전을 사용할 때도 발생합니다 . 최신 버전의 감독자는 다른 구성 파일을 사용합니다. 위의 솔루션은 작동하지 않습니다. 이 경우 다음을 사용하여 구성 파일을 재생성하면됩니다.

echo_supervisord_conf > /etc/supervisord.conf

누군가에게 도움이되기를 바랍니다.


다음을 수행하십시오.

sudo service supervisor start

모든 것이 정상인 게시물 b4-1b 버전에 문제가 있습니다.

sudo supervisorctl reload


배포 패키지가있는 Ubuntu 18.04

/etc/supervisord.conf내 서비스 관리자 ( systemd )가 구성 파일을 사용하는 동안 구성 파일 만든 것과 같은 실수를했을 것입니다./etc/supervisor/supervisord.conf

sudo rm /etc/supervisord.conf

또는

sudo mv /etc/supervisord.conf /etc/supervisor/supervisord.conf

당신이 그것을 유지하고 싶다면

이제 실행할 수 있습니다. sudo supervisorctl


왜?

supervisorctl처음 실행할 때에 있는 구성 파일 /etc/supervisord.conf을 검색합니다.없는 경우 패키지의 기본 파일을 검색합니다. /etc/supervisor/supervisord.conf이것은 systemd가 실제로 실행 하는 파일 입니다.

Systemd/etc/supervisor/supervisord.conf 는 다른 파일의 존재 여부에 관계없이 항상 파일을 사용합니다 .

다음 을 실행 하여 systemd 를 사용중인 파일을 확인할 수 있습니다.sudo systemctl status supervisor

여기에 이미지 설명 입력 마지막 줄에서 구성 파일이 하드 코딩 된 명령을 볼 수 있습니다.


모두 supervisordsupervisorctl사용 -c절대 설정 파일의 경로를 만들 엉 확실히 두 명령은 동일한 설정으로 시동.

참고 URL : https://stackoverflow.com/questions/18859063/supervisor-socket-error-issue

반응형