看到网上大部分hadoop搭建教程,其中有一部分搭建过程不能成功,现在整理一下hadoop环境搭建基本步骤和搭建过程遇到的问题及对应的解决办法
用到的工具如下:
Linux:CentOS6.5
JDK:jdk-8u101-linux-x64.tar.gz 对应的官网下载地址如下:http://eclipse.org/downloads/
虚拟机:VMware Workstation Pro
Hadoop:hadoop-0.20.2-tar.gz
第一步:配置SSH服务
首先,CentOS6.5自带SSH服务,使用命令 ps -e | grep ssh,如果已经安装了该服务,则会出现 sshd 的字样,如果没有安装该服务,可以使用 yum install ssh 来实现在线安装该服务。
然后,
执行如下命令:cd /root
执行如下命令:ssh-keygen -t rsa
然后一直回车,配置成功后,执行 ls ,由于该目录是隐藏目录,所以直接 cd .ssh ,然后再 ls ,会发现如下两个文件id_rsa.pub authorized_keys,至此SSH服务配置完毕
第二步:安装JDK8
①.在/usr下创建一个java目录,然后将jdk-8u101-linux-x64.tar.gz 复制到该目录下,
执行如下命令:cd /usr
mkdir java
cp /home/**/Desktop/jdk-8u101-linux-x64.tar.gz /usr/java
tar -zxvf jdk-8u101-linux-x64.tar.gz
②.在 /etc/profile 配置如下内容
执行如下命令:vi /etc/profile
配置内容如下:
export JAVA_HOME=/usr/java/jdk1.6.0_22
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
这样我们就设置好了JDK,在centos下 source /etc/profile 就可以生效了
第三步:安装hadoop
①.新建目录/usr/hadoop,将hadoop-0.20.2-tar.gz拷贝到该目录下,修改 /etc/profile 文件,在该文件尾添加
如下内容:
export HADOOP_HOME=/usr/hadoop/hadoop-0.20.2
export PATH=$HADOOP_HOME/bin:$PATH
②.cd 到 /usr/hadoop/hadoop-0.20.2/conf 下配置如下四个文件,
分别为:hadoop-env.shcore-site.xml hdfs-site.xml mapred-site.xml
1>在hadoop-env.sh 配置如下内容
export JAVA_HOME=/usr/java/jdk1.8.0_101
export HADOOP_CLASSPATH=/usr/hadoop/hadoop-0.20.2
2>在core-site.xml 配置如下内容
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop-0.20.2</value>
</property>
3>在hdfs-site.xml 配置如下内容
<property>
<name>dfs.data.dir</name>
<value>/usr/hadoop-0.20.2/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
4>在mapred-site.xml 配置如下内容
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
<property>
<name>mapred.chlid.tmp</name>
<value>/opt/temp</value>
</property>
最后一步
①.关闭防火墙,root用户下执行命令/etc/init.d/iptables stop,运行命令/etc/init.d/iptables status
查防火墙状态。然后切换到/usr/hadoop/hadoop-0.20.2/bin 下,运行 start-all.sh 启动服务,
这一步可能启动不了,这时候使用如下命令来启动./start-all.sh , 使用 jps 来查看后台java 进程,
如果发现有如下5个进程,然后在浏览器里面输入:http://localhost:50030 和 http://localhsot:50070
查看部署的节点。