Hadoop学习笔记(5)-搭建Hadoop分布式

0.前言

我要搭建的集群是一台Master和3台Worker。先按照以下博客内容配置。
第一步:修改hostname和hosts
http://blog.csdn.net/xummgg/article/details/50634327
第二步:ubuntu下ssh无密码登入(设置ssh公钥认证)
http://blog.csdn.net/xummgg/article/details/50634730

1.安装rsync

这里写图片描述
rsync,remote synchronize顾名思意就知道它是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。可以通过ssh方式来传输文件。
在4台机器上都安装好rsync,可通过ssh进入其他机器并输入安装指令。

2.安装JDK

Hadoop是要安装在JVM上运行的,所以都要安装JDK。这里的操作先在一台机器上进行,先在Master机器上进行。

2.1 下载JDK

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
选择linux 64位系统,压缩凡是tar.gz
这里写图片描述
截图中时8.73版本。我实际下载的时8.71版本。

2.2 解压

我下载的在Downloads文件夹里,所以先直接解压在当前目录:
这里写图片描述
复制到local目录下(我把要安装的东西都放在了这个目录下)
这里写图片描述

2.3 配置JDK,JRE环境变量

修改bashrc文件,添加环境变量
这里写图片描述
在文件末尾加入如下内容:
再用soure命令,使其生效:
这里写图片描述

2.4 验证

输入java -version,能显示版本好,就表示JDK配置成功。
这里写图片描述

4台电脑都要配置jdk,后面配置中会用scp命令来传输给其他3台。

3.安装Hadoop

继续先在Master机器上进行单台配置。

3.1下载Hadoop

下载地址:
http://hadoop.apache.org/releases.html
我选用时2.6.2版本,binary的。
这里写图片描述

3.2 解压

解压在当前目录
这里写图片描述
复制到local目录下
这里写图片描述

3.3 配置Hadoop环境变量

用vim命令编辑bashrc文件:
这里写图片描述
添加如下内容:
这里写图片描述
保存并退出。再用source使其生效。
这里写图片描述
图中配置HADOOP_CONF_DIR文件时为了更好多支持yarn的运行(yarn是个资源管理框架)
监测环境配置是否正确,输入hadoop version
这里写图片描述
能显示版本就表示正确。

3.4 单台设置Hadoop文件配置

Hadoop的配置文件在etc里的hadoop里面,我一共是配置了6个文件,core-site.xml,hdfs-site.xml,mapred-site.xml,yarn-site.xml,hadoop-env.sh,slaves

  1. 配置core-site.xml
    先cd进入etc的hadoop里。
    这里写图片描述
    vim命令打开core-site.xml文件
    这里写图片描述
    添加如下配置内容:
    这里写图片描述
  2. 配置hdfs-site.xml
    vim命令打开hdfs-site.xml文件
    这里写图片描述
    添加如下配置内容:
    这里写图片描述
  3. 配置mapred-site.xml
    在目录里木有mapred-site.xml文件,只有mapred-site.xml.template文件,先复制这个文件,并命名为mapred-site.xml,用cp命令复制,代码如下:
    这里写图片描述
    vim命令打开mapred-site.xml文件
    这里写图片描述
    添加如下配置内容:
    这里写图片描述
  4. 配置yarn-site.xml
    vim命令打开yarn-site.xml文件
    这里写图片描述
    添加如下配置内容:
    这里写图片描述
  5. 配置hadoop-env.sh
    vim命令打开hadoop-env.sh文件
    这里写图片描述
    添加如下配置内容:
    这里写图片描述
  6. 配置slaves
    vim命令打开slaves文件
    这里写图片描述
    修改配置如下:
    这里写图片描述
    这个时候Master里的Hadoop内容都配置完成了。

3.5 配置Hadoop集群

直接从Master机器上将JDK,Hadoop,bashrc文件都发送到各个Worker机器上。
scp传bashrc文件给3台Worker机器:
这里写图片描述
scp传hadoop文件夹给3台Worker机器:
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
scp传JDk文件夹给3台Worker机器:
这里写图片描述
这里写图片描述
这里写图片描述
并用ssh登入其他worker,用source使每台的bashrc文件生效。下面只取Worker1机器的操作。
这里写图片描述
到这里所以相关配置完成了。

4.运行Hadoop集群

格式化文件系统(必须做):
这里写图片描述
开启dfs文件系统:
这里写图片描述
用JPS查看当前进行,显示如下则启动成功:
这里写图片描述
也可以在WEB浏览器等入Master:50070来查看,可以看到我的Live Nodes 显示有3台存在,说明成功了。
这里写图片描述
也可以在Live Nodes点进去,查看具体信息:
这里写图片描述
开启yarn资源管理模块:
这里写图片描述
再用jps来查看,发现多开启了个ResoureManager,说明资源管理模块yarn开启成功。
这里写图片描述
可以登入到Woker节点,用jps查看,内容如下:
这里写图片描述
还可以再Master:8088上查看内容:
这里写图片描述
再这上面就可以开启mapreduce。

5.测试Hadoop集群

在测试中发现我的Mac,跑4台虚拟机,运行hadoop,内存不够。所以测试改为1台master和2台worker。请自行修改slave,hosts 文档。
这里写图片描述

先在hadoop文件系统上创建用户文件夹,如下图中前2行代码。
在本地hadoop目录下创建一个input文件夹,把hadoop目录x下的etc/hadoop目录里所有xml格式结尾的文件都复制到input文件夹。将本地的input文件夹上传到远程hadoop的文件系统上去。(用hadoop的put命令)
这里写图片描述

可以到master:50070里看下,文件是否上传成功。
这里写图片描述

运行官方自带的wordcount程序,将input作为输入,将output/wordcount 作为输出地址:
这里写图片描述

运行完成后,可以看到root用户下多了wordcount的结果:
这里写图片描述

获取分布式系统上的output文件夹,放到本地hadoop-2.6.2目录下:
这里写图片描述

进入文件夹内查看结果:
这里写图片描述

还可以在master:8080里查看job的记录:
这里写图片描述


XianMing

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值