2016-11-03 3 views
0

내 스파크 클러스터와 관련된 hdfs를 시작하고 중지하는 서비스를 만들었습니다.
서비스 :Systemd Hdfs 서비스 [hadoop] - 시작

[Unit] 
Description=Hdfs service 
[Service] 
Type=simple 
WorkingDirectory=/home/hduser 
ExecStart=/opt/hadoop-2.6.4/sbin/start-service-hdfs.sh 
ExecStop=/opt/hadoop-2.6.4/sbin/stop-service-hdfs.sh 
[Install] 
WantedBy=multi-user.target 

문제는 내가 서비스를 시작할 때, 그것은 시작 직후 시작된 중지입니다! :) 문제는 서비스의 유형이라고 생각합니다. 어떤 유형을 선택해야할지 모르겠습니다 ...

고마워요.
감사합니다.

+0

올바른지 만들어 실제 PID이다? journalctl과 hdfs 로그 모두 (어디에 놓았는지 모르겠습니다) – Misko

+0

설치 중에 namenode를 포맷 했습니까? –

답변

1

구성에 몇 가지 문제가 있습니다. 이것이 작동하지 않는 이유입니다.

HADOOP_HOME/home/hadoop/envs/dwh/hadoop/

[Unit] 
Description=Hadoop DFS namenode and datanode 
After=syslog.target network.target remote-fs.target nss-lookup.target network-online.target 
Requires=network-online.target 

[Service] 
User=hadoop 
Group=hadoop 
Type=forking 
ExecStart=/home/hadoop/envs/dwh/hadoop/sbin/start-dfs.sh 
ExecStop=/home/hadoop/envs/dwh/hadoop/sbin/stop-dfs.sh 
WorkingDirectory=/home/hadoop/envs/dwh 
Environment=JAVA_HOME=/usr/lib/jvm/java-8-oracle 
Environment=HADOOP_HOME=/home/hadoop/envs/dwh/hadoop 
TimeoutStartSec=2min 
Restart=on-failure 
PIDFile=/tmp/hadoop-hadoop-namenode.pid 

[Install] 
WantedBy=multi-user.target 

체크리스트입니다 hadoop 2.7.3, hive 2.1.1, ubuntu 16.04 사용자 hadoop에서

내가 실행 해요 :

  • 사용자 및 사용자 그룹을 설정
  • 서비스 유형은 fork
  • 입니다
  • PID 파일이 설정되고,이 start-dfs.sh
  • 환경 변수가 로그 (들) 란 무엇을 말하는가
관련 문제