【问题标题】:ERROR: Cannot set priority of journalnode process 6520错误:无法设置日志节点进程的优先级 6520
【发布时间】:2019-05-11 16:18:11
【问题描述】:

我有三个安装了 docker 的物理节点。我在这些节点之间配置了一个高可用的 hadoop 集群。配置是这样的: 核心站点.xml:

  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://mycluster</value>
  </property>

  <property>
     <name>dfs.journalnode.edits.dir</name>
     <value>/tmp/hadoop/dfs/jn</value>
  </property>

  <property>
     <name>fs.default.name</name>
     <value>hdfs://mycluster</value>
  </property>

  <property>
     <name>ha.zookeeper.quorum</name>
     <value>10.32.0.1:2181,10.32.0.2:2181,10.32.0.3:2181</value>
  </property>

hdfs-site.xml:

   <property>
     <name>dfs.nameservices</name>
     <value>mycluster</value>
   </property>
   <property>
     <name>dfs.ha.namenodes.mycluster</name>
     <value>nn1,nn2</value>
   </property>
   <property>
     <name>dfs.namenode.rpc-address.mycluster.nn1</name>
     <value>10.32.0.1:8020</value>
   </property>
   <property>
     <name>dfs.namenode.rpc-address.mycluster.nn2</name>
     <value>10.32.0.2:8020</value>
   </property>
   <property>
     <name>dfs.namenode.http-address.mycluster.nn1</name>
     <value>10.32.0.1:50070</value>
   </property>
   <property>
     <name>dfs.namenode.http-address.mycluster.nn2</name>
     <value>10.32.0.2:50070</value>
   </property>
   <property>
     <name>dfs.client.failover.proxy.provider.mycluster</name>
     <value>org.apache.hadoop.hdfs.server.namenode.
      ha.ConfiguredFailoverProxyProvider</value>
   </property>
   <property>
     <name>dfs.namenode.shared.edits.dir</name>
     <value>qjournal:// 
     10.32.0.1:8485;10.32.0.2:8485;10.32.0.3:8485/mycluster</value>
   </property>
   <property>
     <name>dfs.permissions.enable</name>
     <value> false </value>
   </property>
   <property>
     <name>dfs.ha.fencing.methods</name>
     <value>sshfence</value>
   </property>
   <property>
     <name>dfs.ha.fencing.ssh.private-key-files</name>
     <value>/home/hdfs/.ssh/id_rsa</value>
   </property>
   <property>
     <name>dfs.ha.fencing.ssh.connect-timeout</name>
     <value>30000</value>
   </property>
   <property>
     <name>dfs.permissions.superusergroup</name>
     <value>hdfs</value>
   </property>
   <property>
     <name>dfs.replication</name>
     <value>1</value>
   </property>
   <property>
     <name>dfs.namenode.name.dir</name>
     <value>file:///usr/local/hadoop_store/hdfs/namenode</value>
   </property>
   <property>
     <name>dfs.datanode.data.dir</name>
     <value>file:///usr/local/hadoop_store/hdfs/datanode</value>
   </property>
   <property>
     <name>dfs.namenode.datanode.registration.ip-hostname- 
     check</name>
     <value>false</value>
   </property>
   <property>
     <name>dfs.ha.automatic-failover.enabled</name>
     <value>true</value>
   </property>

我创建了 hdfs 用户和 ssh-passwordless。当我想通过这个命令启动 journalnode 来格式化 namenode 时:

    sudo /opt/hadoop/bin/hdfs --daemon start journalnode

我收到此错误:

错误:无法设置日志节点进程 6520 的优先级

请问我的配置有什么问题来接收错误?

提前谢谢你。

【问题讨论】:

    标签: docker hadoop


    【解决方案1】:

    问题解决了。我检查了 /opt/hadoop/logs/*.log 中的日志并看到这一行:

    无法创建/tmp/hadoop/dfs/journalnode的目录。

    首先,我将日志节点目录的配置放到hdfs-site.xml中,并制作了一个日志节点目录。然后我再次启动日志节点,我遇到了这个错误:

    目录不可写。所以,我运行了这些命令来使目录可写:

      chmod 777 /tmp/hadoop/dfs/journalnode
      chown -R root /tmp/hadoop/dfs/journalnode
    

    然后我可以启动日志节点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多