hadoop 主机是64位机器,而native库默认是32位的问题

阅读更多

 

Unable to load native-hadoop library

 

warning解决产生这个warning的原因是apache hadoop2.7需要使用2.1.4的glibc而我们云主机操作系统的lib是2.1.2:

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable

 

1.

# ll /lib64/libc.so.6    //查看当前系统glibc版本

$ export HADOOP_ROOT_LOGGER=DEBUG,console

hadoop fs -ls /

此事会输出debug信息,看到warning找出hadoop需要的glibc版本

 

2.下载对应版本的glibc安装

下载地址,找到对应版本的glibc

http://ftp.gnu.org/gnu/glibc/

 

[root@node1 ~]# export CFLAGS="-g -O2"

[root@node1 ~]# ./glibc-2.14.1/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

[root@node1 ~]# make

[root@node1 ~]# make install

 

此事再尝试hadoop命令,一句没有报错了

[hadoop@node1 hadoop-2.7.0]$ bin/hadoop fs -ls /

Found 1 items

drwxr-xr-x   - hadoop supergroup          0 2015-05-21 09:12 /home 

 

找到简便方法:

wget http://dl.bintray.com/sequenceiq/sequenceiq-bin/hadoop-native-64-2.7.0.tar

解压到 hadoop-2.7.0/lib/native/

你可能感兴趣的:(hadoop 主机是64位机器,而native库默认是32位的问题)