Cloudera CDH5 저장소에서 CentOS 7에 Hue를 설치했습니다.
시작 후 보고된 오류:
# systemctl status hue
hue.service - SYSV: Hue web server
Loaded: loaded (/etc/rc.d/init.d/hue)
Active: failed (Result: resources) since sob 2016-11-26 20:25:31 UTC; 6min ago
Process: 3448 ExecStart=/etc/rc.d/init.d/hue start (code=exited, status=0/SUCCESS)
lis 26 20:25:20 node0 systemd[1]: Starting SYSV: Hue web server...
lis 26 20:25:20 node0 su[3457]: (to hue) root on none
lis 26 20:25:31 node0 hue[3448]: Starting hue: [ OK ]
lis 26 20:25:31 node0 systemd[1]: PID file /usr/lib/hue/pids/supervisor.pid not readable (yet?) after start.
lis 26 20:25:31 node0 systemd[1]: Failed to start SYSV: Hue web server.
lis 26 20:25:31 node0 systemd[1]: Unit hue.service entered failed state.
이것은잘못된 오류, Hue는 실제로 올바르게 시작되었으며 /var/run/hue/supervisor.pid
다른 디렉토리( )에 pid 파일을 생성했습니다.
# ps -ef | grep hue
hue 3877 1 0 20:25 ? 00:00:00 python2.7 /usr/lib/hue/build/env/bin/supervisor -p /var/run/hue/supervisor.pid -l /var/log/hue -d
hue 3949 3877 0 20:25 ? 00:00:03 python2.7 /usr/lib/hue/build/env/bin/hue runcherrypyserver
PIDFILE 변수는 pid 디렉토리 에 올바르게 설정되어 있습니다 /etc/init.d/hue
. 비록 systemctl이 주석으로 보고한 디렉토리를 발견했지만:
# pidfile: /usr/lib/hue/pids/supervisor.pid
[...]
PIDFILE=/var/run/hue/supervisor.pid
/etc
이제 나는 그것들을 모두 살펴보았는데 /usr
systemd /var
에게 특정 디렉토리에서 pidfile을 찾도록 지시하는 구성을 찾을 수 없습니다. 어떤 팁이 있나요?
답변1
[...] systemd에게 해당 특정 디렉터리에서 pidfile을 찾도록 지시하는 구성을 찾을 수 없습니다.
여러분 모두는 할 수 있고 그것을 할 수 있습니다. 당신은 당신의 질문에 그것을 넣었습니다 :
systemctl
또한 댓글에 보고된 디렉토리도 확인했습니다.# pid 파일:/usr/lib/hue/pids/supervisor.pid
바로 거기. 구성 정보는 systemd-sysv-generator
PID 파일의 위치를 알려줍니다.
이것은 여러 주요 rc
스크립트(Mewburn rc
, OpenBSD , LFS, Fedora/RHEL/CentOS, SUSE, Debian/Ubuntu 및 OpenRC) rc
중에서 systemd가 가져오려고 시도하는 두 개의 스크립트 중 하나입니다 . 경품은 설명 앞에 추가되는 "SYSV:"입니다. 다른 스타일을 가져올 때 앞에 "LSB:"를 추가합니다.
PIDFILE
pid 디렉토리는 변수를 통해 올바르게 설정되었습니다.
"맞다"는 것은 과장된 표현이다. 이전 rc
스크립트는 자기모순적이었습니다. 헤더의 구성 정보는 스크립트의 실제 기능과 모순됩니다.
한 가지 방법은 모순되는 rc
스크립트를 수정하는 것입니다. 더 나은 접근 방식은 서비스 단위를 작성하는 것입니다. 잘못된 rc
스크립트를 사용하면 데몬이 두 개의 중첩된 서비스 관리자(systemd 아래의 감독자)에서 실행될 수 있습니다. 아이러니하게도 이 PID 파일 정크는 단순히 불필요합니다.
그것은 다음과 같습니다:
[단위] 설명=Hue 웹 서버 문서=https://unix.stackexchange.com/a/326354/5132 [제공하다] 유형=단순 사용자=색조 작업 디렉터리=/usr/lib/hue/ 환경=PYTHON_EGG_CACHE=/tmp/.hue-python-eggs ExecStart=/usr/bin/env 빌드/env/bin/hue runcherrypyserver syslogidentifier=hue [설치하다] WantedBy=다중 사용자.대상