安装前提:

1.ssh软件安装

2.ssh免密设置成功

3.Jdk1.7以上版本安装

4.Path设置,将jdk的bin目录设置到path中

5.Hadoop软件下载并解压。

6.对Hadoop文件解压文件夹下的hadoop-2.7.3/etc/hadoop目录下的hadoop-env.sh 、core-site.xml、hadfs-site.xml、mapred-site.xml、yarn-site.xml文件进行修改。

7.配置Hadoop环境变量

8.运行Hadoop

9.运行Hadoop实例

SSH免密设置

(一)先确定当前系统ssh指令是否可执行,具体过程为:

在控制台中敲击出ssh,然后连续按两次tab键,如果安装ssh软件,即可以在控制台中观察到如下提示:

centos7下hadoop配置 hadoop安装配置_centos7下hadoop配置


如果未安装ssh软件,自行百度安装教程,此处不赘述。

(二)继续在控制台中敲击ssh-keygen -t rsa (注意空格)

centos7下hadoop配置 hadoop安装配置_linux_02


连续enter键,直到出现以#号出现的控制行。

(三)通过命令ls -al ~/.ssh查看ssh文件夹下的内容:

centos7下hadoop配置 hadoop安装配置_linux_03


可发现文件id_rsa以及id_rsa.pub。如果未发现,请重试上述操作,或者自行百度原因。

(四)使用命令 cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys 将id_rsa.pub文件的内容写入authorized_keys中,此时ssh免密设置已完成。

SSH免密设置验证

使用ssh localhost登入

centos7下hadoop配置 hadoop安装配置_hdfs_04


此时免密设置已成功。

Jdk1.8安装及PATH配置

(一)从网址http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html中下载jdk1.8,将压缩包通过winscp上传到本机。或者用wget 指令在该网址中下载jdk1.8 至当前目录。(前提是已经配置好并能网络连接)

(二)使用tar xvzf [压缩文件所在路径] -C [解压文件路径] 解压下载好的jdk。

(三)配置系统path :使用指令vi /etc/profile打开编辑界面

centos7下hadoop配置 hadoop安装配置_hadoop_05


在如图处添加JAVA_HOME=‘jdk解压路径’

(四)source /etc/profile更新profile文件的修改

(五)echo $JAVA_HOME 查看配置以后的值

centos7下hadoop配置 hadoop安装配置_centos7下hadoop配置_06


(六)使用指令export PATH=$PATH:$JAVA_HOME/bin,将PATH设置

(七)查看修改以后的path值

centos7下hadoop配置 hadoop安装配置_xml_07


这个只是临时设置PATH,如果想永久设置PATH,请继续看步骤八

(八)在/etc/profile 继续加入export PATH=$PATH:$JAVA_HOME,然后保存修改,并在命令行中输入source /etc/profile。当文件路径更改时,只用修改JAVA_HOME的值即可。

(九)在命令行中输入java,回车,可观察到,java指令信息如下:

centos7下hadoop配置 hadoop安装配置_linux_08


即代表配置成功

HADOOP安装配置及运行测试

(一)去官网https://archive.apache.org/dist/hadoop/common/hadoop-2.7.3/ 下载hadoop-2.7.3.tar.gz ,大小204M。

(二)和jdk安装一样,将其解压到指定目录下即可。

(三)在/etc/profile中添加HADOOP_HOME=’解压hadoop的目录路径’,如下图所示。

centos7下hadoop配置 hadoop安装配置_xml_09


保存并退出后,source /etc/profile系统重新加载配置

(四)echo $PATH 查看path值

centos7下hadoop配置 hadoop安装配置_hadoop_10


可发现hadoop及jdk的bin路径已配置完毕。同样键入指令hadoop 或者hdfs,如下:

centos7下hadoop配置 hadoop安装配置_xml_11

centos7下hadoop配置 hadoop安装配置_xml_12


即表明,配置成功。

(五)进入hadoop解压目录(cd $HADOOP_HOME)输入 vi etc/hadoop/hadoop-env.sh

进入编辑模式

查找并修改 export JAVA_HOME=’此处为安装(解压)jdk的路径’,如下图所示。

centos7下hadoop配置 hadoop安装配置_linux_13


保存并退出。

(六)修改核心文件vi etc/hadoop/core-site.xml ,进入并按照下图添加相应属性。

centos7下hadoop配置 hadoop安装配置_hadoop_14


保存并退出。其中注释地方可自行修改主机名和端口以及目录。

代码如下:

<configuration> 
 <property> 
 <name>fs.defaultFS</name> 
 <value>hdfs://0.0.0.0:9000</value> 
 </property> 
 <property> 
 <name>hadoop.tmp.dir</name> 
 <value>/opt/hadoop/tmp</value> 
 </property> 
 </configuration>

(七)修改文件vi etc/hadoop/hdfs-site.xml,加入如下代码:

centos7下hadoop配置 hadoop安装配置_linux_15


其中dfs.namecode.name.dir 所对应的value值可以指定存放目录,如果为多个目录请用逗号隔开。同理于dfs.namecode.data.dir。

代码如下:

<configuration> 
 <property> 
 <name>dfs.replication</name> 
 <value>1</value> 
 </property> 
 <property> 
 <name>dfs.namenode.name.dir</name> 
 <value>file:/opt/hadoop/tmp/hdfs/name</value> 
 </property> 
 <property> 
 <name>dfs.datanode.data.dir</name> 
 <value>file:/opt/hadoop/tmp/hdfs/data</value> 
 </property> 
 </configuration>

(八)修改文件vi etc/hadoop/mapred-site.xml.template ,如下加入代码,并使用指令cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml

centos7下hadoop配置 hadoop安装配置_hdfs_16


代码如下:

<configuration> 
 <property> 
 <name>mapreduce.framework.name</name> 
 <value>yarn</value> 
 </property> 
 </configuration>

(九)修改文件vi etc/hadoop/yarn-site.xml,如下加入代码

centos7下hadoop配置 hadoop安装配置_hdfs_17


代码如下:

<configuration> 
 <!-- Site specific YARN configuration properties --> 
 <name>yarn.nodemanager.aux-services</name> 
 <value>mapreduce_shuffle</value> 
 </configuration>

配置基本完成。

(十)运行HADOOP :

A.键入命令 hdfs namenode -format 初始化namecode

B.运行sbin目录下的start-all.sh

其中会分别需要键入yes与Y。

(十一)启动完毕,可以通过浏览器访问http://localhost:8088以及50070两个端口,并会分别在浏览器中看到

centos7下hadoop配置 hadoop安装配置_hadoop_18


centos7下hadoop配置 hadoop安装配置_hdfs_19


如果,用远程访问该hadoop服务器,请先确认服务器是否联网,然后关闭服务器的防火墙(暂时关闭防火墙指令:service firewalld stop,永久关闭:systemctl disable firewalld.service),

然后远程端通过服务器ip访问,即将localhost改为网段中服务器的ip。

(十二)HADOOP实例运行

A.进入hadoop安装目录。

B.通过指令 hdfs dfs -mkdir -p /user/本机用户名/iput

C.通过指令查看是否创建成功,如下图所示:

centos7下hadoop配置 hadoop安装配置_hadoop_20


警告可忽略。(上述的output目录不予考虑,之后会解释。)

D.通过指令 hdfs -put $HADOOP_HOME/etc/hadoop/*.xml /user/root/input 将需要统计的文件上传到之前创建的input文件夹中。可查看到如下的文件:

警告可忽略。

E.运行测试jar 。键入代码hadoop jar share/hadoop/mapreduce/

hadoop-mapreduce-examples-2.7.3.jar grep input output ‘[a-z.]+’ 注意空格,此处的output就是上述图片中看到的/user/root/output文件夹。

F.查看output文件夹下信息。

centos7下hadoop配置 hadoop安装配置_linux_21


结语:

如果结果和上图类似,hadoop的demo在linux上搭建已完成。Ps:如果过程中出现错误信息,请查看hadoop安装目录中的logs文件夹里面的cat logs/hadoop-root-datanode-localhost.localdomain.log ,搜寻error来处理异常。最后,祝你更上一层楼!