>  기사  >  운영 및 유지보수  >  감독자는 어떻게 설치되고 구성됩니까?

감독자는 어떻게 설치되고 구성됩니까?

零下一度
零下一度원래의
2017-06-27 10:13:561435검색

Supervisor 소개

Supervisor를 사용하면 사용자는 UNIX와 유사한 운영 체제에서 여러 프로세스를 제어할 수 있습니다. 블록은 다음과 같습니다.

편의성

각 프로세스 인스턴스에 대해 rc.d 스크립트를 작성해야 하는 경우가 종종 불편합니다. rc.d스크립트는 프로세스 초기화/자동 시작/관리의 일반적인 형태이지만 작성하고 유지 관리하는 것이 어려울 수 있습니다. 또한 rc.d 스크립트는 충돌이 발생한 프로세스를 자동으로 다시 시작할 수 없으며 많은 프로그램이 충돌 시 정상적으로 다시 시작되지 않습니다. Supervisord는 프로세스를 하위 프로세스로 시작하고 충돌 시 자동으로 다시 시작하도록 구성할 수 있습니다. 자체 호출에서 프로세스를 시작하도록 자동으로 구성할 수도 있습니다.

정확도

UNIX에서는 프로세스의 정확한 가동/중단 상태를 얻는 것이 어려운 경우가 많습니다. Pidfile은 종종 거짓말을 합니다. Supervisord는 프로세스를 하위 프로세스로 시작하므로 항상 하위 프로세스의 실제 작동/중단 상태를 알고 이 데이터를 쉽게 쿼리할 수 있습니다.

프로세스 그룹

프로세스는 그룹으로 시작하고 중지해야 하는 경우가 많으며 때로는 "우선순위"에 따라서도 시작됩니다. 사람들은 종종 이것을 설명하는 데 어려움을 겪습니다. Supervisor를 사용하면 프로세스에 우선 순위를 할당할 수 있으며 사용자는 "모두 시작" 및 "모두 다시 시작"과 같은 Supervisorctl 클라이언트를 통해 명령을 실행하여 미리 할당된 우선 순위에 따라 프로세스를 시작할 수 있습니다. 또한 프로세스는 하나의 단위로 중지 및 시작될 수 있는 논리적으로 연결된 프로세스 그룹인 "프로세스 그룹"으로 그룹화될 수 있습니다.

Features

Simple

Supervisor는 배우기 쉬운 간단한 INI 스타일 구성 파일을 통해 구성됩니다. 실패한 프로세스 다시 시작, 자동 로그 순환 등 삶을 더 쉽게 만들어 주는 다양한 프로세스별 옵션을 제공합니다.

중앙 집중식

프로세스는 개별적으로 또는 그룹으로 제어할 수 있습니다. 로컬 또는 원격 명령줄과 웹 인터페이스를 제공하도록 Supervisor를 구성할 수 있습니다.

Efficient

Supervisor는 fork/exec를 통해 하위 프로세스를 시작하며, 하위 프로세스는 백그라운드 처리를 수행하지 않습니다.

강력한 확장성

Supervisor에는 관리를 위해 모든 언어로 작성된 프로그램에서 사용할 수 있는 간단한 이벤트 알림 프로토콜과 제어를 위한 XML-RPC 인터페이스가 있습니다. 또한 Python 개발자가 활용할 수 있는 확장 지점을 사용하여 구축되었습니다.

Windows를 제외한

supervisor와 호환됩니다. Linux, Mac OS X, Solaris 및 FreeBSD에서 테스트되고 지원됩니다. 완전히 Python으로 작성되었으므로 설치에 C 컴파일러가 필요하지 않습니다.

안정성

Supervisor는 수년 동안 사용되어 왔으며 많은 서버에서 사용되고 있습니다.



Supervisor 구성 요소

supervisord

supervisord 서버 프로그램. 자체 호출에서 서브루틴 시작, 클라이언트 명령에 응답, 충돌하거나 종료된 하위 프로세스 다시 시작, 하위 프로세스 stdoutstderr 출력 기록, 해당 하위 프로세스 생성 및 처리를 담당합니다. 수명주기.

프로필. 이는 일반적으로 /etc/supervisord.conf 에 있습니다. 이 구성 파일은 "Windows-INI" 스타일 구성 파일입니다. 이 파일에는 암호화되지 않은 사용자 이름과 비밀번호가 포함될 수 있으므로 적절한 파일 시스템 권한으로 보호하는 것이 중요합니다.

supervisorctl

supervisor의 명령줄 클라이언트는 supervisorctl이라고 합니다. supervisor가 제공하는 기능에 대해 쉘과 유사한 인터페이스를 제공합니다. supervisorctl에서 사용자는 다양한 supervisord에 연결하고, 하위 프로세스를 중지 및 시작하고, 실행 중인 프로세스 목록 supervisord을 얻을 수 있습니다.

명령줄 클라이언트는 UNIX 도메인 소켓 또는 인터넷(TCP) 소켓을 통해 서버와 통신합니다. 서버는 클라이언트 사용자가 명령 실행을 허용하기 전에 인증 자격 증명을 제시해야 한다고 주장할 수 있습니다. 클라이언트 프로세스는 일반적으로 서버와 동일한 구성 파일을 사용하지만 [supervisorctl] 섹션이 있는 구성 파일은 모두 정상적으로 작동합니다.

웹 서버

웹 서버는 브라우저를 통해 액세스하여 프로세스 상태를 보고 제어할 수 있으며, 구성 파일의 [inet_http_server] 블록에서 을 구성하고, 서버 URL(예: http에 액세스할 수 있습니다. ://localhost:9001 /) 웹 인터페이스를 통해 프로세스 상태를 보고 제어할 수 있습니다.

XML-RPC 인터페이스

웹 UI를 제공하는 동일한 HTTP 서버는 감독자 및 실행되는 프로그램을 조사하고 제어하는 ​​데 사용할 수 있는 XML-RPC 인터페이스를 제공합니다. XML-RPC API 문서를 참조하세요.


설치 및 사용 지침은 여기를 클릭하세요 wuguiyunwei.com

위 내용은 감독자는 어떻게 설치되고 구성됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.