JAVA_HOME=/usr/java/jdk1.8.0_65 CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar HADOOP_HOME=/usr/hop/hadoop-2.7.7 PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin export PATH JAVA_HOME CLASSPATH HADOOP_HOME
生效环境变量
source /etc/profile
测试环境变量配置是否成功
hadoop version
9. 把Hadoop发送到其他机器上
scp -r /usr/hop/hadoop-2.7.7/ root@node-2:/usr/hop
注意,如果导出目录没设置在Hadoop安装包里,其他机器上也要手动创建导出目录(最好把导出目录直接设置在hadoop文件夹里面。。)
10. 把环境变量发送到其他机器上
scp -r /etc/profile root@node-2:/etc/
生效其他机器的环境变量
source /etc/profile
Hadoop集群启动 1.hdfs格式化
只有首次启动需要
格式化本质是进行文件系统初始化操作,创建一些自己所需要的文件
格式化之后,集群启动成功,后续不要再格式化
格式化的操作在hdfs集群的主角色(namenode)上操作
#以下两条命令都可以,只要执行1条! #在node-1中执行 hdfs namenode –format hadoop namenode –format
2.启动hdfs集群
定位到/usr/hop/hadoop-2.7.7/sbin
目录中有一堆执行文件,其中start-dfs.sh就是hdfs集群的启动文件
start-all.sh和stop-all.sh是Deprecated的,不建议使用
执行start-dfs.sh
发现报错(如果没报错就跳过)
一些解决方案
配置完hadoop启动的时候出现如下警告信息:
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
如何验证64bit还是32bit?
进入hadoop安装目录,用ldd命令查看依赖库
ldd libhadoop.so.1.0.0 会输出如下信息:
./libhadoop.so.1.0.0: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./libhadoop.so.1.0.0) linux-vdso.so.1 => (0x00007fff369ff000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f3caa7ea000) libc.so.6 => /lib64/libc.so.6 (0x00007f3caa455000) /lib64/ld-linux-x86-64.so.2 (0x00007f3caac1b000)
可以看到依赖的都是/lib64/的动态库,所以不是64位/32位问题。但是看到报错,GLIBC_2.14找不到,现在检查系统的glibc库, ldd --version即可检查。 输入命令:
ldd --version #会输出如下信息: ldd (GNU libc) 2.12 Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Written by Roland McGrath and Ulrich Drepper.
原来系统预装的glibc库是2.12版本,而hadoop期望是2.14版本,所以打印警告信息。
先回到Hadoop/sbin目录关闭hdfs
cd /usr/hop/hadoop-2.7.7/sbin/ stop-dfs.sh
到下载glibc-2.14.tar.xz
tar glibc-2.14.tar.gz xz -d glibc-2.14.tar.xz tar -xvf glibc-2.14.tar cd glibc-2.14 mkdir build cd build ../configure --prefix=/usr/local/glibc-2.14 make -j4 make install
看看现在libc.so.6在哪个位置,然后修改软链接