热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在云主机上安装hadoop分布式模式

一、 背景

最近这两周在UCloud公司实习,第一周尝试了云计算,第二周尝试并研究了大数据生态中的hadoop、yarn、spark、mapreduce等技术,并在公司提供的云主机上分别安装了hadoop伪分布式模式、hadoop分布式模式、yarn、spark以及在hadoop分布式模式上提交与查看作业。
本文介绍在一台云主机上安装hadoop完全分布模式。

二、 实验目标

在部署的3台主机m1、m2、m3中,分别安装hadoop,修改配置文件,实现hadoop的完全分布式。

三、 实验环境

3台云主机操作系统:CentOS7
jdk.1.8.0_191及以上已安装,具体JAVA版本与hadoop版本的对应关系,请参考https://cwiki.apache.org/confluence/display/HADOOP2/HadoopJavaVersions

四、 实验过程

1.关闭防火墙和SELinux(后面步骤会详细介绍做法)

2.修改IP映射关系
编辑/etc/hosts文件,添加如下内容(具体格式为:内网IP+tab+主机名,这里的内网IP是为了便于描述,实际的IP可能并不相邻,但一定在同一网段):
192.168.1.1 m1
192.168.1.2 m2
192.168.1.3 m3

3.关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

4.关闭SELinux
vim /etc/selinux/config,修改第7行(如果有)enforcing为disabled

5.安装openssh客户端
yum –y install psmisc openssh-clients

6.重启所有服务器

7.配置各主机之间的ssh免密登录(此处不再赘述)
这里注意,一定要免密登录,否则每次互相通信都要输入密码,很繁琐,效率低下。
ssh免密登录的测试方法:
在m1中输入 ssh m2,看是否可以在不提示输密码的情况下,登录到m2中,其他主机之间同理(都要互相测试一下,否则可能有些主机之间通了,有些主机之间没有通)。

8.从hadoop官网下载hadoop包:http://www.apache.org/dyn/closer.cgi/hadoop/common/
这里选择hadoop2.8.5
在云主机上安装hadoop分布式模式

9.将下载的hadoop-2.8.5.tar.gz通过winscp传入主机中,解压到云主机,位置自定
在云主机上安装hadoop分布式模式

10.配置环境变量
编辑 /etc/profile 文件,在末尾追加如下内容(具体路径要根据自己解压hadoop的路径而做出改变):
export JAVA_HOME=/home/yourUserName/module/jdk1.8.0_201
export PATH=PATH:PATH:JAVA_HOME/bin
export HADOOP_HOME=/home/yourUserName/module/hadoop-2.7.2
export PATH=PATH:PATH:HADOOP_HOME/bin
export PATH=PATH:PATH:HADOOP_HOME/sbin

11. 刷新环境变量 source /etc/profile

12.在m1中,修改hadoop的配置文件hadoop-env.sh
把${JAVA_HOME}改为绝对路径,如export JAVA_HOME=/home/name/module/jdk1.8.0_201

13.在m1中,修改hadoop的配置文件mapred-env.sh
在第16行,删除#后把${JAVA_HOME}改为绝对路径,如export JAVA_HOME=/home/name/module/jdk1.8.0_201

14.在m1中,修改hadoop的配置文件yarn-env.sh
在第23行,删除#后把${JAVA_HOME}改为绝对路径,如export JAVA_HOME=/home/name/module/jdk1.8.0_201

15.在m1中,修改hadoop的配置文件core-site.xml
在云主机上安装hadoop分布式模式

16.在m1中,修改hadoop的配置文件hdfs-site.xml
在云主机上安装hadoop分布式模式

17. 在m1中,修改hadoop的配置文件mapred-site.xml
在云主机上安装hadoop分布式模式

18. 在m1中,修改hadoop的配置文件yarn-site.xml
在云主机上安装hadoop分布式模式

19. 在m1中,修改hadoop的配置文件slaves
slaves设定了datanode,我的配置中,设定m2与m3为datanode,所以我的salves中为:
m2
m3

20.m1通过scp命令,将配置文件分发到其他各节点
scp -r /home/name/module [email protected]:/home/name/
scp -r /home/name/module [email protected]:/home/name/

21.格式化namenode,输入命令 hdfs namenode -format
在云主机上安装hadoop分布式模式

22.启动hdfs集群,输入命令start-dfs.sh

23.输入指令jps,查看进程
预期:
m1上会出现NameNode的服务;
m2上会出现SecondaryNameNode、DataNode的服务
m3上会出现DataNode的服务

24. 启动yarn集群,输入命令start-yarn.sh
预期:
m1上出现ResourceManager的服务;
m2上出现NodeManager的服务;
m3上出现NodeManager的服务

五、 收获及心得

经过了前两天的工作,我已经学会了如何配置hadoop本地模式、伪分布式模式、JAVA环境等必要前提,并在查阅了相关资料后,大致理解了hadoop集群的工作原理。主要参考的文档还是官方教程。
在配置的过程中,我注重对每一步意义的理解,并查阅文档深入学习了hadoop相关配置文件的作用和语法,以及配置文件中各个参数的作用。对这戏东西了解之后,在之后的hadoop其它模式的配置或hadoop运行时,应该会更加高效,遇到问题也能在理解可能造成问题的原因的基础上,更快的解决问题。
ps:官方文档有些步骤跨越比较大,在每一步之间,如果想深入理解这一步配置的意义,还要自己查阅资料。

六、 参考资料

https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html


推荐阅读
  • 从0到1搭建大数据平台
    从0到1搭建大数据平台 ... [详细]
  • hadoop完全分布式搭建
    原文链接:hadoop完全分布式搭建主机分配以及地址要求:角色主机名IP地址Namenodemaster192.168.222.201Datanodeslave ... [详细]
  • Presto:高效即席查询引擎的深度解析与应用
    本文深入解析了Presto这一高效的即席查询引擎,详细探讨了其架构设计及其优缺点。Presto通过内存到内存的数据处理方式,显著提升了查询性能,相比传统的MapReduce查询,不仅减少了数据传输的延迟,还提高了查询的准确性和效率。然而,Presto在大规模数据处理和容错机制方面仍存在一定的局限性。本文还介绍了Presto在实际应用中的多种场景,展示了其在大数据分析领域的强大潜力。 ... [详细]
  • 在前一篇文章《Hadoop》系列之“踽踽独行”(二)中,我们详细探讨了云计算的核心概念。本章将重点转向物联网技术,全面解析其基本原理、应用场景及未来发展前景。通过深入分析物联网的架构和技术栈,我们将揭示其在智能城市、工业自动化和智能家居等领域的广泛应用潜力。此外,还将讨论物联网面临的挑战,如数据安全和隐私保护等问题,并展望其在未来技术融合中的重要角色。 ... [详细]
  • Hadoop 2.6 主要由 HDFS 和 YARN 两大部分组成,其中 YARN 包含了运行在 ResourceManager 的 JVM 中的组件以及在 NodeManager 中运行的部分。本文深入探讨了 Hadoop 2.6 日志文件的解析方法,并详细介绍了 MapReduce 日志管理的最佳实践,旨在帮助用户更好地理解和优化日志处理流程,提高系统运维效率。 ... [详细]
  • HBase在金融大数据迁移中的应用与挑战
    随着最后一台设备的下线,标志着超过10PB的HBase数据迁移项目顺利完成。目前,新的集群已在新机房稳定运行超过两个月,监控数据显示,新集群的查询响应时间显著降低,系统稳定性大幅提升。此外,数据消费的波动也变得更加平滑,整体性能得到了显著优化。 ... [详细]
  • Hadoop——实验七:MapReduce编程实践
    文章目录一.实验目的二.实验内容三.实验步骤及结果分析 1.基于ubuntukylin14.04(7)版本,安装hadoop-eclipse-kepler-plugi ... [详细]
  • 各个组件confspark-env.sh配置spark的环境变量confspark-default.conf配置spark应用默认的配置项和spark-env.sh有重合之处,可在 ... [详细]
  • 本文详细介绍了如何安全地手动卸载Exchange Server 2003,以确保系统的稳定性和数据的完整性。根据微软官方支持文档(https://support.microsoft.com/kb833396/zh-cn),在进行卸载操作前,需要特别注意备份重要数据,并遵循一系列严格的步骤,以避免对现有网络环境造成不利影响。此外,文章还提供了详细的故障排除指南,帮助管理员在遇到问题时能够迅速解决,确保整个卸载过程顺利进行。 ... [详细]
  • 本文详细介绍了HDFS的基础知识及其数据读写机制。首先,文章阐述了HDFS的架构,包括其核心组件及其角色和功能。特别地,对NameNode进行了深入解析,指出其主要负责在内存中存储元数据、目录结构以及文件块的映射关系,并通过持久化方案确保数据的可靠性和高可用性。此外,还探讨了DataNode的角色及其在数据存储和读取过程中的关键作用。 ... [详细]
  • NoSQL数据库,即非关系型数据库,有时也被称作Not Only SQL,是一种区别于传统关系型数据库的管理系统。这类数据库设计用于处理大规模、高并发的数据存储与查询需求,特别适用于需要快速读写大量非结构化或半结构化数据的应用场景。NoSQL数据库通过牺牲部分一致性来换取更高的可扩展性和性能,支持分布式部署,能够有效应对互联网时代的海量数据挑战。 ... [详细]
  • hadoop3.1.2 first programdefault wordcount (Mac)
    hadoop3.1.2安装完成后的第一个实操示例程 ... [详细]
  • HDFS是什么?HDFS全称HadoopDistributedFileSystem,简称HDFS,是一个分布式文件系统。它是谷歌的GFS提出之后出现的另外一种文件系统。它有一定高 ... [详细]
  • Hadoop的分布式架构改进与应用
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
author-avatar
qk墨砚轩
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有