0

サービスを開始するために start-all.sh を実行しているこのサイトの助けを借りて、CDH4.6.0 をインストールしています。

  /etc/init.d/hadoop-hdfs-namenode start

  /etc/init.d/hadoop-hdfs-datanode start

  /etc/init.d/hadoop-hdfs-secondarynamenode start

  /etc/init.d/hadoop-0.20-mapreduce-jobtracker start

  /etc/init.d/hadoop-0.20-mapreduce-tasktracker start

  bin/bash [to start bash prompt after starting services]

これらの命令をdockerファイルの一部として実行した後、

 CMD ["start-all.sh"]

すべてのサービスを開始します

jpsした時しか見えない

 jps
 Namenode
 Datanode
 Secondary Namenode
 Tasktracker

しかし、ジョブトラッカーはまだ開始されていません。ログは次のとおりです

  2015-01-23 07:26:46,706 INFO org.apache.hadoop.metrics.jvm.JvmMetrics: 
  Initializing JVM Metrics with processName=JobTracker, sessionId=
  2015-01-23 07:26:46,735 INFO org.apache.hadoop.mapred.JobTracker: 

  JobTracker up at: 8021

  2015-01-23 07:26:46,735 INFO org.apache.hadoop.mapred.JobTracker: 

  JobTracker webserver: 50030
  2015-01-23 07:26:47,725 INFO org.apache.hadoop.mapred.JobTracker:    

  Creating the system directory

  2015-01-23 07:26:47,750 WARN org.apache.hadoop.mapred.JobTracker: Failed 

  to operate on mapred.system.dir (hdfs://localhost:8020/var/lib/hadoop-

  hdfs/cache/mapred/mapred/system) because of permissions.

  2015-01-23 07:26:47,750 WARN org.apache.hadoop.mapred.JobTracker: This 

  directory should be owned by the user 'mapred (auth:SIMPLE)'

  2015-01-23 07:26:47,751 WARN org.apache.hadoop.mapred.JobTracker: Bailing out ...

  org.apache.hadoop.security.AccessControlException: Permission denied: user=mapred, access=WRITE, inode="/":hdfs:supergroup:drwxr-xr-x

しかし、bashプロンプトから再度起動すると、機能します。なんでそうなの?助言がありますか?

ログ見れば分かる。ジョブ トラッカーはポート 8020 で起動していますが、ポート 8020 で動作しようとするのはなぜですか? それって問題ですか?もしそうなら、どのように対処するのですか?

4

1 に答える 1