Hadoop3.1.3集群搭建

  • 前言
  • 集群规划
  • 集群搭建具体步骤
    • 1、下载`hadoop-3.1.3.tar.gz`
    • 2、上传并解压
    • 3、配置`path`变量
    • 4、修改配置文件
      • 4.1 修改文件`hadoop-env.sh`
      • 4.2 修改文件`workers`
      • 4.3 修改文件`core-site.xml`
      • 4.4 修改文件`hdfs-site.xml`
      • 4.5 修改文件`mapred-site.xml`
      • 4.6 修改文件 `yarn-site.xml`
    • 5、把`/opt/module/hadoop`复制到其他节点上
    • 6、在其他节点上操作
    • 7、名称节点的格式化
    • 8、启动`Hadoop`集群
    • 9、验证是否启动成功
    • 10、查看运行实例
    • 11、关闭`Hadoop`集群

前言

当Hadoop采用分布式模式部署和运行时,存储采用分布式文件系统HDFS,而且,HDFS的名称节点和数据节点位于不同机器上。这时,数据就可以分布到多个节点上,不同数据节点上的数据计算可以并行执行,这时的MapReduce分布式计算能力才能真正发挥作用。

集群规划

我们使用三个虚拟机节点来搭建集群环境:

ip 主机名 功能
192.168.36.121 hadoop1 NameNode DataNode ResourceManager NodeManager
192.168.36.122 hadoop2 DataNode NodeManager
192.168.36.123 hadoop3 SecondryNameNode DataNode NodeManager

分别在上述的节点上修改hosts文件,增加IP和主机名的映射关系:

# 打开hosts文件
vim /etc/hosts# 添加如下内容
192.168.36.121   hadoop1
192.168.36.122   hadoop2
192.168.36.123   hadoop3

另外,Hadoop 集群运行需要 Java 运行环境,所以,在各个节点上需要安装 JDK

集群搭建具体步骤

注意:以下步骤均在hadoop1节点上进行操作,特殊说明除外!

1、下载hadoop-3.1.3.tar.gz

hadoop官网下载:https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz

2、上传并解压

将下载好的 hadoop-3.1.3.tar.gz 上传到 hadoop1 虚拟机节点 /opt/module 目录下。

cd /opt/module
# 解压
tar -zxvf hadoop-3.1.3.tar.gz
# 修改目录名
mv hadoop-3.1.3 hadoop

3、配置path变量

vim ~/.bashrc
# 添加如下内容:
export PATH=$PATH:/opt/module/hadoop/bin:/opt/module/hadoop/sbin# :wq! 保存退出后执行如下命令,使配置生效
source ~/.bashrc

4、修改配置文件

cd /opt/module/hadoop/etc/hadoop

4.1 修改文件hadoop-env.sh

vim hadoop-env.sh
# 添加如下内容
export JAVA_HOME=/usr/java/jdk1.8.0_131

4.2 修改文件workers

vim workers
# 将localhost去掉添加如下内容
hadoop1
hadoop2
hadoop3

注意:需要把所有数据节点的主机名写入该文件,每行一个,默认为localhost(即把本机作为数据节点),所以,在伪分布式配置时,就采用了这种默认的配置,使得节点既作为名称节点也作为数据节点。在进行分布式配置时,可以保留localhost,让hadoop1节点同时充当名称节点和数据节点,或者也可以删掉localhost这行,让hadoop1节点仅作为名称节点使用。

4.3 修改文件core-site.xml

<!--修改为如下内容:-->
<configuration><property><name>fs.defaultFS</name><value>hdfs://hadoop1:8020</value></property><property><name>hadoop.tmp.dir</name>                            <value>file:/opt/module/hadoop/tmp</value><description>Abase for other temporary directories.</description></property>
</configuration>

4.4 修改文件hdfs-site.xml

dfs.replication的值还是设置为 3, 也就是说,一份数据保存三份副本,Hadoop的分布式文件系统HDFS一般都是采用冗余存储。

<configuration><property><name>dfs.namenode.secondary.http-address</name><value>hadoop1:50090</value></property><property><name>dfs.replication</name><value>3</value></property><property><name>dfs.namenode.name.dir</name><value>file:/opt/module/hadoop/tmp/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>file:/opt/module/hadoop/tmp/dfs/data</value></property>
</configuration>

4.5 修改文件mapred-site.xml

<!--修改为如下内容:-->
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.jobhistory.address</name><value>hadoop1:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>hadoop1:19888</value></property><property><name>yarn.app.mapreduce.am.env</name><value>HADOOP_MAPRED_HOME=/opt/module/hadoop</value></property><property><name>mapreduce.map.env</name><value>HADOOP_MAPRED_HOME=/opt/module/hadoop</value></property><property><name>mapreduce.reduce.env</name><value>HADOOP_MAPRED_HOME=/opt/module/hadoop</value></property>
</configuration>

4.6 修改文件 yarn-site.xml

<!--修改为如下内容:-->
<configuration><property><name>yarn.resourcemanager.hostname</name><value>hadoop1</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property>
</configuration>

5、把/opt/module/hadoop复制到其他节点上

cd /opt/module
rm -r ./hadoop/tmp     # 删除 Hadoop 临时文件
rm -r ./hadoop/logs/*   # 删除日志文件
tar -zxcf hadoop.tar.gz ./hadoop   # 先压缩再复制
scp ./hadoop.tar.gz hadoop2:/opt/module
scp ./hadoop.tar.gz hadoop3:/opt/module

6、在其他节点上操作

cd /opt/module
rm -r ./hadoop    # 删掉旧的(如果存在)
tar -zxvf hadoop.tar.gz

7、名称节点的格式化

首次启动Hadoop集群时,需要先在hadoop1节点执行名称节点的格式化(只需要执行这一次,后面再启动Hadoop时,不要再次格式化名称节点)

hdfs namenode -format

8、启动Hadoop集群

需要在hadoop1节点上进行

# 启动hdfs
start-dfs.sh
# 启动yarn
start-yarn.sh
# 启动历史服务
mr-jobhistory-daemon.sh start historyserver

9、验证是否启动成功

通过命令jps可以查看各个节点所启动的进程。如果已经正确启动,则在hadoop1节点上可以看到NameNodeResourceManager、和JobHistoryServer以及DataNodeNodeManager进程
在其他两个节点可以看到DataNodeNodeManager进程,在hadoop3节点上还可以看到SecondryNameNode进程
缺少任一进程都表示出错。

10、查看运行实例

在执行过程中,可以在Linux系统中打开浏览器,在地址栏输入http://hadoop1:8088/cluster,通过Web界面查看任务进度,在Web界面点击 Tracking UI 这一列的History连接,可以看到任务的运行信息。

11、关闭Hadoop集群

关闭Hadoop集群,需要在hadoop1节点执行如下命令:

stop-yarn.sh
stop-dfs.sh
mr-jobhistory-daemon.sh stop historyserver

至此,就顺利完成了Hadoop集群搭建。

微信公众号:扫描下方二维码或 搜索 笑看风云路 关注

Hadoop集群搭建配置教程相关推荐

  1. Linux centos 6配置hadoop 集群搭建笔记教程

    一.安装JDK 1.上传jdk-8u121-linux-x64.tar.gz文件到/opt目录 2.解压jdk文件 tar -zxvf jdk-8u121-linux-x64.tar.gz -C /u ...

  2. Hadoop集群搭建安装教程(续集)高可用(HA)

    针对Hadoop集群的高可用环境,研究搭建方式,根据相关资料和教程以及自己实际操作,整理步骤如下. 集群规划 节点 运行角色 node1 namenode.zkfc.zookeeper.journal ...

  3. hadoop集群搭建完整教程,java电商项目面试技巧

    前言 本系列的目的是明明白白.彻彻底底的搞定日期/时间处理的几乎所有case.上篇文章铺设所有涉及到的概念解释,例如GMT.UTC.夏令时.时间戳等等,若你还没看过,不仅强烈建议而是强制建议你前往用花 ...

  4. 不看就亏系列!这里有完整的 Hadoop 集群搭建教程,和最易懂的 Hadoop 概念!| 附代码...

    作者 | chen_01_c 责编 | Carol 来源 | CSDN 博客 封图 | CSDN付费下载于视觉中国 hadoop介绍 Hadoop 是 Lucene 创始人 Doug Cutting, ...

  5. hadoop集群搭建 修改配置文件(三台主机都要配置)

    hadoop集群搭建      修改配置文件(三台主机都要配置) master 主机配置 1)hadoop-env.sh vim hadoop-env.sh 2)core-site.xml vim c ...

  6. ssh无密登录配置详解(hadoop集群搭建)

    ssh无密登录原理 Hadoop集群搭建时,配置ssh是给yarn用的,最好先清空.ssh目录下的文件,再生成密钥,在节点中含有resourcemanager的服务器(有多个resourcemanag ...

  7. Hadoop集群搭建教程(详细)

    需要的安装包: 1.jdk压缩包 2.hadoop压缩包 请前往百度云上上下载相关安装包(密码:8op1) 开始搭建hadoop集群 一.使用VMvare创建两个虚拟机,我使用的是ubuntu16.0 ...

  8. Hadoop集群环境配置搭建

    一.简单介绍 Hadoop最早诞生于Cutting于1998年左右开发的一个全文文本搜索引擎 Lucene,这个搜索引擎在2001年成为Apache基金会的一个子项目,也是 ElasticSearch ...

  9. CENTOS上的网络安全工具(十二)走向Hadoop(4) Hadoop 集群搭建

    目录 〇.踩坑指南 1.OpenJDK的版本 2.WEB用户 一.克隆虚拟机 二.配置主机名和网络 1.配置网络 2.设置主机名 3.将主机关系对应名写入host文件 三.配置免密SSH访问 1.本机 ...

最新文章

  1. 浅说——九讲背包之01背包
  2. 看似简单的问题 静态方法和实例化方法的区别
  3. Pycharm 社区版本Database Navigator 安装教程
  4. 第六代微型计算机是,AMD Carrizo第六代A系列处理器技术解析
  5. SQL基础【八、Insert】
  6. 【bzoj3744】Gty的妹子序列 分块+树状数组+主席树
  7. php大量数据库抽象,数据库的数据抽象有几个级别
  8. 研究员告警:严重漏洞影响数千万台IoT设备,可远程查看实时音视频并接管设备...
  9. cmake笔记(1)
  10. 蜗牛学院:程序员最值得看的12部电影
  11. android系统应用更改内存,安卓root后必备神器:修改系统/清理内存神器
  12. 最美人间四月天,我用五个关键词带你回顾
  13. Matlab之误差分析
  14. 有了这25个正则表达式,代码效率提高80%
  15. Html秒表计时代码,js实现秒表计时器功能代码示例
  16. (转霄神)HM解码流程图
  17. UBUNTU ROS 编译后无法rosrun package文件(已解决)
  18. 升职加薪/积分落户必备职称——2020年中级经济师不容错过
  19. Monthly Expense(二分专题)
  20. JS中new操作符做了什么?

热门文章

  1. 使用Python+mongoDB爬虫收集有道词典的文章
  2. Java String的不可变性
  3. 网络爬虫------WebMagic使用教程
  4. L010 linux命令及基础手把手实战总结
  5. java sdp协议_Java 7 SDP
  6. C# 写入注册表启动项
  7. 书论06 蔡邕《九势》
  8. Mysql分析-profile详解(转http://blog.csdn.net/ty_hf/article/details/54895026)
  9. attrib批量显示文件夹_如何使用DOS命令attrib设置文件或文件夹的属性
  10. Linux操作系统下开启wifi热点的方法