ubuntu搭建hadoop-2.8.3(伪分布式)

最好不要以root用户进行配置,选择一个普通用户进行配置!!!

1.先安装jdk,已安装的可以跳过此步骤,未安装的可参考以下教程

linux安装jdk教程

2.下载hadoop-2.8.3

下载地址:hadoop下载


3.将下载的hadoop-2.8.3拷贝至linux系统桌面


解压至根目录

命令:sudo tar -zxvf /home/qy/桌面/hadoop-2.8.3.tar.gz -C /home/qy/

注:每个人的根目录不一样,我的是qy


解压后根目录会出现hadoop-2.8.3这个文件夹


4.修改hadoop-2.8.3文件的组用户 

解压之后文件是“带锁”的,这是因为只有root用户才能对其进行操作,为了方便,我们将文件的所属用户修改为当前操作用户

命令:sudo chown -R 用户名 文件路径 

我的当前操作的用户名是:qy

命令:sudo chown -R qy /home/qy/hadoop-2.8.3



可以看到文件右下角的锁已经去掉,说明命令执行成功

5.配置环境变量

输入 vim /etc/profile 命令可打开profile文件(也可在目录中直接打开此文件)

在文件末尾加入以下信息(命令中不要自行加入空格,否则没法使用)

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_161                           #你的jdk路径
export JRE_HOME=${JAVA_HOME}/jre
export HADOOP_HOME=/home/qy/hadoop-2.8.3                             #你的hadoop路径
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=${JAVA_HOME}/bin:$HADOOP_HOME/bin:$PATH
其中 一定要把各个Home路径设置写在 PATH 路径的前面(因为PATH路径会用到这些路径)


执行命令,使环境变量生效:

source  /etc/profile

6.在/etc/hosts 文件中添加本机ip和主机名

命令:sudo vim /etc/hosts

我的ip地址:192.168.161.130

qy是我的用户名(此处应填你们自己的ip和用户名


注:不知道自己ip地址的,输入ifconfig查看自己的ip地址

命令:ifconfig


7.安装配置ssh免密登录

(1)安装ssh

命令:sudo apt-get install ssh

(2)安装完成之后,查看在根目录下是否存在.ssh文件夹

命令:ls –a 


若没有则创建

命令:mkdir  .ssh

(3)产生密钥

切换到.ssh目录,在.ssh 目录下执行ssh-keygen -t rsa -P ''     注意后面的两个单引号,一直回车不用输入任何东西

执行完成之后,会生成两个文件


(4)将生成的公钥追加到授权的key中去

命令:cat id_rsa.pub >> authorized_keys

注:依然在.ssh目录下执行此命令


(5)验证安装是否成功

ssh –version


ssh localhost  不需要输入密码即安装成功(第一次需要输入yes


退出使用命令exit

8.配置hadoop

确保已退出ssh,退出使用命令exit

进入hadoop-2.8.3目录下的/etc/hadoop目录下

(1)修改slaves文件,最好配置为ip(我为了方便设置的是自己的用户名,若想填ip地址也可以,但是之后的hadoop文件配置都要填写ip地址,即保持一致

命令:sudo vim slaves


也可在图形界面打开slaves文件



在etc/hosts中,我的ip对应的是用户名qy,所以我填的是qy,且之后的其它文件配置时要保持一致


slaves文件中加入从节点(此处伪分布式即为这台机器的ip)


:wq保存退出

(2)修改hadoop-env.sh,打开hadoop-env.sh

命令:vim hadoop-env.sh


在文件末尾加入jdk路径

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_161         

注:你的jdk路径


(3)修改core-site.xml,配置HDFS的地址及端口号

在hadoop--2.8.3目录下创建一个空文件夹tmp

命令:mkdir tmp


切换到hadoop-2.8.3目录下的/etc/hadoop目录下

打开core-site.xml文件

命令:vim core-site.xml


在<configuration>  </configuration>中加入以下配置

<property>
<name>hadoop.tmp.dir</name>
<value>/home/qy/hadoop-2.8.3/tmp</value>                <!-- 刚刚创建的tmp文件的路径 -->
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://qy:9000</value>                           <!-- 此处填自己的ip或用户名,和之前配置slaves文件时保持一致 -->
</property>

(4)修改hdfs-site.xml,配置HDFS文件的备份方式,及文件的默认路径

在<configuration>  </configuration>中加入以下配置

<property>
<name>dfs.replication</name>
<value>1</value>                                 <!-- 备份数目,单节点是1,多节点一般为3 -->
</property>  
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/qy/hadoop-2.8.3/dfs/name</value>    <!-- namenode所在路径 -->        
</property>
<property>
<name>dfs.namenode.data.dir</name>
<value>/home/qy/hadoop-2.8.3/dfs/data</value>    <!-- datanode所在路径 -->        
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>                             <!-- HDFS的权限 -->
</property>

 (5)配置mapred-site.xml

将mapred-site.xml.template复制并重命名为mapred-site.xml

命令:cp mapred-site.xml.template mapred-site.xml

修改mapred-site.xml文件,在<configuration>  </configuration>中加入以下配置

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

(6)配置yarn-site.xml

在<configuration>  </configuration>中加入以下配置

<property>
<name>yarn.resourcemanager.hostname</name>
<value>qy</value>                 <!-- 本机IP或者用户名和之前的slaves文件配置保持一致 -->        
</property>  
<property>  
<name>yarn.nodemanager.aux-services</name>  
<value>mapreduce_shuffle</value>
</property>


9.格式化文件系统HDFS

进入hadoop-2.8.3下的bin文件夹,执行命令

./hadoop namenode -format

10.启动hadoop

进入hadoop-2.8.3下的sbin夹,执行 ./start-all.sh

注:注意/前面的点

11.验证是否安装成功

执行执行jps命令,会出现6个进程,说明你配置成功了(少一个都不行


12.查看资源使用状态

http://localhost:8088(MapReduce 的Web页面)    (配置的ip就用ip,主机名就用主机名

我的ip映射的是qy,所以我访问的地址是:http://qy:8088         (用ip地址也可以)




http://localhost:50070(HDFS 的Web页面) 

同上,ip主机名都可以


13.查看各节点状态

进入hadoop-2.8.3下,执行命令:bin/hadoop dfsadmin -report

14.运行自带的wordcount例子

(1).在本地创建一个文件夹input,创建两个文本文件file1、file2,输入要统计的数据


file1的数据,随便输入的,中间以空格隔开


file2的数据


(2).在hdfs上创建一个文件夹qy_input  一定要加 /

把我们创建的文本文件放进hdfs的qy_input中


(3).执行wordcount例子  qy_output 是结果输出目录,注意jar包的路径可能与我的不一样然后运行等待


(4).执行过程,执行时间大概20秒左右


(5).查看结果 输出目录qy_output下的part-r-0000就是结果


猜你喜欢

转载自blog.csdn.net/qymufeng/article/details/79557034