在CentOS 6上以本地模式搭建Hadoop(只需六步)
0x00:目录
1、添加特定的组(hadoop)和用户(hduser)
2、配置SSH免密码登录
3、JDK和Hadoop的下载
4、JDK和Hadoop环境设置
5、配置Hadoop
6、启动Hadoop
0x01:过程
1、添加特定的组(hadoop)和用户(hduser)【以root用户登录】
1) groupadd hadoop
2) useradd hduser -g hadoop
2、配置SSH免密码登录
1) 切换到新添加的用户hduser 【以下步骤均以hduser用户执行】
su - hduser
2) 生成公钥
ssh-keygen -t rsa -p ""
3) cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
4) 检查是否设置成功
ssh localhost
输出信息:
The authenticity of host 'localhost (::1)' can't be established.
RSA key fingerprint is da:80:b4:64:d2:9a:94:92:99:02:7d:b1:ff:4f:d1:ac.
Are you sure you want to continue connecting (yes/no)? yes 【<--这里输入yes】
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
3、JDK和Hadoop的下载
1)下载JDK
mkdir /home/hduser/Downloads
cd /home/hduser/Downloads
wget http://download.oracle.com/otn-pub/java/jdk/8u77-b03/jdk-8u77-linux-x64.tar.gz
2) 下载Hadoop
wget http://archive.apache.org/dist/hadoop/common/stable1/hadoop-1.2.1.tar.gz
4、JDK和Hadoop环境设置
1) 将下载好的JDK和Hadoop压缩文件复制到/home/hduser/opt下
cp /home/hduser/Downloads/jdk-8u77-linux-x64.tar.gz /home/hduser/opt/
cp /home/hduser/Downloads/hadoop-1.2.1.tar.gz /home/hduser/opt/
2) 解压JDK和Hadoop文件
cd /home/hduser/opt
tar -zxvf jdk-8u77-linux-x64.tar.gz
tar -zxvf hadoop-1.2.1.tar.gz
3) 编辑~/.bash_profile
export JAVA_HOME=/home/hduser/opt/jdk1.8.0_77
export HADOOP_HOME=/home/hduser/opt/hadoop-1.2.1
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH:$HOME/bin
注:JAVA_HOME为jdk所在路径,HADOOP_HOME为hadoop所在路径
4)检测Java环境和Hadoop环境
检查Java环境:
java -version
输出信息:
java version "1.8.0_77"
Java(TM) SE Runtime Environment (build 1.8.0_77-b03)
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode)
检查Hadoop环境:
hadoop
输出信息:
Warning: $HADOOP_HOME is deprecated.
Usage: hadoop [--config confdir] COMMAND
where COMMAND is one of:
....... ......
Most commands print help when invoked w/o parameters.
5、配置Hadoop
1) 进入hadoop所在的配置目录
cd /home/hduser/opt/hadoop-1.2.1/conf
2) 修改hadoop配置文件
共修改四个配置文件:1) hadoop-env.sh 2)core-site.xml 3)hdfs-site.xml 4)mapred-site.xml
对于hadoop-env.sh文件,设置JAVA_HOME的路径为/home/hduser/opt/jdk1.8.0_77
对于core-site.xml文件,配置为:
core-site.xml配置信息对于hdfs-site.xml文件,配置为:
hdfs-site.xml配置信息对于mapred-site.xml文件,配置为:
mapred-site.xml配置信息6、启动Hadoop
1) 格式化namenode
hadoop namenode -format
2) 启动所有Hadoop的守护进程
cd /home/hduser/opt/hadoop-1.2.1/bin
start-all.sh
3) 检查hadoop是否启动正常
jps
输出信息:
11041 TaskTracker
10834 SecondaryNameNode
11111 Jps
10919 JobTracker
10729 DataNode
10623 NameNode
看到这6个进程就说明Hadoop已经正常启动运行。
0x02:备注
如果DataNode没有启动,可以尝试以下办法解决。
cd /home/hduser/opt/hadoop-1.2.1/bin
stop-all.sh
cd /home/hduser/opt/hadoop-1.2.1/logs
将目录下所有的文件删除【但是不要删除history文件夹】
然后重新执行格式化namenode操作
再次启动hadoop所有守护进程进行验证
0x03:参考
http://hadoop.apache.org/docs/r1.2.1/single_node_setup.html
http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-linux-single-node-cluster/
文章不足之处,还请批评指正。
文章转载请注明出处,谢谢。
网友评论