2017-04-13 86 views
5

我正在尝试将hadoop与intel光泽集成。我已将hadoop-lustre-plugin-3.1.0添加到hadoop-2.7.3/lib/native文件夹。 Lustre安装在/mnt/lustre。我收到以下错误,当我开始使用Hadoop的start-all.sh在配置Hadoop for Lustre时无法启动名称节点

[[email protected] hadoop]# start-all.sh 
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh 
17/04/06 17:36:55 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 
Incorrect configuration: namenode address dfs.namenode.servicerpc-address or dfs.namenode.rpc-address is not configured. 
Starting namenodes on [ ] 
... 

核心的site.xml:

<property> 
    <name>fs.defaultFS</name> 
    <value>lustre:///</value> 
</property> 
<property> 
    <name>fs.lustre.impl</name> 
    <value>org.apache.hadoop.fs.LustreFileSystem</value> 
</property> 
<property> 
    <name>fs.AbstractFileSystem.lustre.impl</name> 
    <value>org.apache.hadoop.fs.LustreFileSystemlustre</value> 
</property 
<property> 
    <name>fs.lustrefs.mount</name> 
    <value>/mnt/lustre/hadoop</value> 
    <description>This is the directory on Lustre that acts as the root level for Hadoop services</description> 
</property> 
<property> 
    <name>lustre.stripe.count</name> 
    <value>1</value> 
</property> 
<property> 
    <name>lustre.stripe.size</name> 
    <value>4194304</value> 
</property> 
<property> 
    <name>fs.block.size</name> 
    <value>1073741824</value> 
</property> 

maprd-site.xml中

<property> 
    <name>mapreduce.job.map.output.collector.class</name> 
    <value>org.apache.hadoop.mapred.SharedFsPlugins$MapOutputBuffer</value> 
</property> 
<property> 
    <name>mapreduce.job.reduce.shuffle.consumer.plugin.class</name> 
    <value>org.apache.hadoop.mapred.SharedFsPlugins$Shuffle</value> 
</property> 

HDFS-site.xml中

<property> 
<name>dfs.name.dir</name> 
<value>/mnt/lustre/hadoop/hadoop_tmp/namenode</value> 
<description>true</description> 
</property> 

是是否在配置文件中缺少配置?

+0

你需要光泽透明接入(例如使用HDFS://的URI,但在后台达到光泽)?否则,“启动YARN服务 - 不需要HDFS。在这种情况下,AFS使用Lustre。”根据以下来源:http://cdn.opensfs.org/wp-content/uploads/2014/04/D3_S28_RunHadoopMapReduceJobsonLustre.pdf –

+0

我已经按照pdf中的步骤和使用纱线提交工作,但得到错误: – Trupti

+0

'[@ master〜]#yarn jar /opt/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount/mnt/lustre/file/mnt/luster/hadoop/out 17/04/17 17:21:45 WARN util.NativeCodeLoader:无法为您的平台加载native-hadoop库。在适用的情况下使用builtin-java类java.lang.SecurityException:class“org.apache.hadoop.fs.LustreFileSystem”' s签名者信息与相同包中其他类的签名者信息不匹配 – Trupti

回答

0

由于fs.defaultFS具有光泽特定的URI,因此启动脚本无法确定Namenode必须启动的主机。

添加这个属性在hdfs-site.xml

<property> 
    <name>dfs.namenode.rpc-address</name> 
    <value>namenode_host:port</value> 
</property> 
+0

更新后的hdfs-site.xml仍然是namenode未启动。日志如下:'$ less hadoop-root-namenode-master.tcs.com.log2017 -04-17 14:37:24,849错误org.apache.hadoop.hdfs.server.common。存储:无法获取/mnt/lustre/hadoop/namedir/in_use.lock上的锁定。如果此存储目录通过NFS挂载,请确保相应的nfs锁定服务正在运行。 java.io.IOException:函数未实现 at sun.nio.ch.FileDispatcherImpl.lock0(Native Method)' – Trupti

+0

您是否设置了namenode的格式? – franklinsijo

+0

是的。我试图在成功格式化namenode之后启动hadoop,但仍无法正常工作。 'root @ master〜]#cd/mnt/luster/hadoop/namedir/current [root @ master current]#ll total 16 -rw-r - r - 1 root root 350 Apr 17 14:36 fsimage_0000000000000000000 -rw-r - r-- 1 root root 62 Apr 17 14:36 fsimage_0000000000000000000.md5 -rw-r - r-- 1 root root 2 Apr 17 14:36 seen_txid -rw-r-- r - 1 root root 203 Apr 17 14:36 VERSION' – Trupti