2013-08-03 2 views
3

다음은 내 supervisord.conf 파일입니다. 하나는 사육사가 시작한다고 생각 하겠지만 그렇지는 않습니다. 내가 쉬가 시작 전경 /var/chef/cache/zookeeper-3.4.5/bin/zkServer.sh사육사와 관리자가 잘 작동하지 않습니다

# -*- conf -*- 

[include] 
files = *.supervisor 

[supervisord] 
pidfile = /var/run/supervisord.pid 
nodaemon=false 

[supervisorctl] 
serverurl=unix:///var/run/supervisord.sock ; use a unix:// URL for a unix socket 

[unix_http_server] 
file = /var/run/supervisord.sock 

[rpcinterface:supervisor] 
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface 


[program:zookeeper] 
command= sh /var/chef/cache/zookeeper-3.4.5/bin/zkServer.sh start-foreground 
process_name=%(program_name)s 
autostart=true 
autorestart=true 
stdout_logfile=/var/log/zookeeper.log 
stopsignal=KILL 
#stopasgroup = true 
#killasgroup = true 
#stdout_logfile = /tmp/zookeeper.out 
#stderr_logfile = /tmp/zookeeper.err 
pidfile = /var/run/zookeeper.pid 


[group:zookeeper_server] 
programs=zookeeper 
+0

stdout과 stderr를 모두 /var/log/zookeeper.log로 리디렉션 할 수 있습니다. command = sh /var/chef/cache/zookeeper-3.4.5/bin/zkServer.sh start-foreground >>/var/log/zookeeper.log 2> & 1. – hailinzeng

답변

0

사용을 명시 적으로 명령을 명령 쉘을 호출하지 않고 실행하면

ZK는 수동으로 작동 예를 들면 : 자바와

command=/opt/java/bin/java -Dzookeeper.log.dir="." -cp "/home/app/zookeeper/bin/../build/classes:/home/app/zookeeper/bin/../build/lib/*.jar:/home/app/zookeeper/bin/../lib/slf4j-log4j12-1.6.1.jar:/home/app/zookeeper/bin/../lib/slf4j-api-1.6.1.jar:/home/app/zookeeper/bin/../lib/netty-3.2.2.Final.jar:/home/app/zookeeper/bin/../lib/log4j-1.2.15.jar:/home/app/zookeeper/bin/../lib/jline-0.9.94.jar:/home/app/zookeeper/bin/../zookeeper-3.4.5.jar:/home/app/zookeeper/bin/../src/java/lib/*.jar:/home/app/zookeeper/bin/../conf:" -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only=false org.apache.zookeeper.server.quorum.QuorumPeerMain "/home/app/zookeeper/bin/../conf/zoo.cfg" 

/옵션/자바/당신이 쉘을 실행하고 명령 줄을 복사하여 붙여 넣을 수 있습니다에/홈

그것을 찾으려면/응용 프로그램/사육사 사육사.

os/vm 등에 따라 관리자가 때때로 쉘 스크립트와 파이썬 스크립트에 문제가있는 것 같습니다. 아직 이유를 찾지 못했습니다.

하지만 독립 실행 형 명령을 사용하면 잘 작동합니다.

나는 수퍼바이저에서 foreground 프로세스로 zookeeper를 실행하고, 사육사 log4j 구성 (콘솔 만)에서 롤링 로그를 비활성화하고 감독자 회전을 사용합니다. 그것은 일을합니다.

관련 문제