Hadoop分布式集群安装配置

1.1 安装环境

操作系统deepin 15.11, VMware Workstation,hadoop 3.1.3 版本。在deepin 操作系统中安装 VMware Workstation,在 VMware Workstation中安装两个deepin系统,采用两个节点作为集群环境,一个作为Master节点,一个作为Slave 节点。

1.2 hadoop的安装准备

在Master节点和Slave节点都需要进行如下准备工作,主要是配置hadoop用户,安装SSH server和安装Java 环境。

  1. 在安装虚拟机系统时,每个系统都创建hadoop用户。
  2. 选择一个节点作为Master, ctrl+alt+t打开终端,通过命令行方式进行安装,更新apt,执行如下命令。
	sudo apt-get update 
  1. 安装vim ,用于后续修改配置文件。
	sudo apt-get install vim
  1. 安装SSH并登录主机。
	sudo apt-get install openssh-serverssh localhost 
  1. 配置SSH无密码登录,由于hadoop 远程登录只能无密码登录,因此需要配置无密登录。
	退出登录: exitcd ~/.ssh/sh-keygen -t rsacat ./id_rsa.pub >> ./authorized_keys

在这里插入图片描述

在这里插入图片描述

  1. 安装Java 环境,采用jdk-8u162-linux-x64.tar.gz,在Documents/目录下。
	cd  /usr/libsudo mkdir jvmcd  ~/Documents/sudo tar -zxvf   ./jdk-8u162-linux-x64.tar.gz  -C  /usr/lib/jvm

在这里插入图片描述

  1. 配置环境变量,在配置文件开头位置添加如下内容。
    打开配置文件:
	cd  ~vim ~/.bashrc
添加内容:export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH
  1. 查看jdk是否安装成功。
	Java -version

在这里插入图片描述

1.3 安装Hadoop
在Master 节点安装hadoop ,并把/usr/local/中的hadoop 文件夹复制到其他Slave节点的/usr/local目录下。

  1. hadoop-3.1.3.tar.gz 在目录~/Documents/下,安装到/usr/local目录下。
	cd  ~/Documents/sudo tar zxf  hadoop3.1.3.tar.gz  -C  /usr/local
  1. 修改文件夹名,并修改文件的权限。
	cd  /usr/local/sudo mv ./hadoop-3.1.3/ ./hadoopsudo chown  -R hadoop  ./hadoop

在这里插入图片描述

  1. 查看是否安装成功。
	cd  /usr/local/hadoop./bin/hadoop version

在这里插入图片描述

1.4 Hadoop集群配置

  1. 网络配置,配置每个节点的网络,采用桥接来实现节点之间的互联,通过NAT模式连接网络。
    1)通过Edit->Virtual Netwrok Editor,点击Add Network添加一个网络,设置连接方式为桥接。
    2)设置vmnet8中的子网号为192.168.138.0,子网掩码255.255.255.0和网关192.168.138.133,点击NAT Setting即可设置网关。

在这里插入图片描述
在这里插入图片描述

  1. 配置需要每个节点主机的IP 地址,在子网192.168.138.0下,设置IP地址,Master 节点的IP为:192.168.138.128, Slave节点的IP 为:192.168.138.131。
    1)通过ifconfig来查看网卡的IP地址,如下图所示,ens33即为桥接网卡。

在这里插入图片描述

2)节点计算机静态IP 配置,执行如下命令打开配置文件。
Master节点:

sudo vim  /etc/network/interfaces
添加内容:
auto ens33 
iface ens33 inet  static
address 192.168.138.128

通过如下命令使设置生效,出现OK字样则成功:

sudo  /etc/init.d/networking restart

Slave节点:
用同样的方法设置,添加的内容为:

auto ens33 
iface ens33 inet  static
address 192.168.138.131
  1. 修改主机名,将Master节点的主机名为Master,将Slave节点的主机名改为Slave,分别在两个节点中执行如下命令。
    sudo vim /etc/hostname
  2. 在Master节点和Slave节点修改自己节点的IP 映射,添加如下相同内容。
    执行如下命令,注释掉文件中除127.0.0.1 localhost 的其他的IP 地址映射。
	sudo  vim /etc/hosts添加IP映射:192.168.138.128     Master192.168.138.131	    Slave
  1. 重启每个节点,完成主机名更新。
  2. 测试每个节点是否能Ping 通,通过如下命令测试。
	ping   Master  -c   3ping   Slave    -c  3 

在这里插入图片描述
在这里插入图片描述

  1. SSH无密吗登录节点,配置Master 节点可以远程登录其他Slave节点。由于修改过主机名,所以需要删除原来的SSH 公钥。在Master节点执行如下命令生成公钥。
	cd     ~/.sshrm   ./id_rsa*ssh-keygen   -t   rsa
  1. 让Master 节点能无密登录SSH 本机,在Master节点执行如下命令.
	cat   ./id_rsa.pub   >>   ./authorized_keys
  1. 通过远程拷贝文件,将主机Master ssh公钥传输到Slave 节点。
	scp    ~/.ssh/id_rsa.pub   hadoop@Slave:/home/hadoop/

在这里插入图片描述

  1. 在Slave 节点将 ssh 公钥加入授权,执行如下命令,需要删除原先SSH公钥。
	mkdir    ~/.sshcat     ~/id_rsa.pub   >>   ~/.ssh/authorized_keysrm   ~/id_rsa.pub

在这里插入图片描述
11. 在Master 节点上测试远程登录Slave 节点,可以看到主机名改变为Slave。

	ssh   Slave

在这里插入图片描述
12. 在Master节点配置hadoop 的PATH 变量,则可以直接使用hadoop,hdfs 相关命令而不需要转到相关目录。
打开配置文件:

	vim  ~/.bashrc添加内容:export   PATH=$PATH:/usr/local/hadoop/bin:/usr/loacl/hadoop/sbin使配置生效:source  ~/.bashrc
  1. 在Master节点修改配置目录/usr/local/hadoop/etc/hadoop目录下的5个配置文件。
  1. workers 文件
    Master作为NameNode,Slave作为 DataNode。将DataNode的主机名写入workers 文件,删除localhost。添加如下内容。
	Slave
  1. core-site.xml
    修改标签中的内容如下。
	<configuration><property><name>fs.defaultFS</name><value>hdfs://Master:9000</value></property><property><name>hadoop.tmp.dir</name><value>file:/usr/local/hadoop/tmp</value><description>Abase for other temporary directories.</description></property></configuration>	
  1. hdfs-site.xml
    修改标签中的内容如下。
	<configuration><property><name>dfs.namenode.secondary.http-address</name><value>Master:50090</value></property><property><name>dfs.replication</name><value>1</value></property><property><name>dfs.namenode.name.dir</name><value>file:/usr/local/hadoop/tmp/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>file:/usr/local/hadoop/tmp/dfs/data</value></property></configuration>
  1. mapred-site.xml
    修改标签中的内容如下。
	<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.jobhistory.address</name><value>Master:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>Master:19888</value></property></configuration>
  1. yarn-site.xml
    修改标签中的内容如下。
	<configuration><property><name>yarn.resourcemanager.hostname</name><value>Master</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property></configuration>
  1. 在Master节点通过远程拷贝Master 节点的/usr/loacl/hadoop目录到其他Slave 节点。首先先删除之前的临时文件和日志。
	cd    /usr/localsudo  rm  -r  ./hadoop/tmpsudo  rm  -r   ./hadoop/logs/*tar   -zcf   ~/hadoop.master.tar.gz    ./hadoopcd  ~scp   ./hadoop.master.tar.gz    Slave:/home/hadoop
  1. 在Slave 节点解压文件。
	sudo    rm   -r    /usr/local/hadoopsudo tar  -zxf   ~/hadoop.master.tar.gz   -C    /usr/localsudo  chown  -R   hadoop   /usr/local/hadoop
  1. 在Master 节点执行 NameNode 的格式化。
	hdfs   namenode    -format

在这里插入图片描述
17. 在Master 节点上启动hadoop 集群,执行如下命令。

	start-dfs.shstart-yarn.shmr-jobhistory-daemon.sh  start historyserver

在这里插入图片描述
18. 通过jps 查看集群的节点启动的进程信息,分别在Master 和 Slave 节点执行jps。
Master 节点:
在这里插入图片描述
Slave 节点:
在这里插入图片描述

  1. 在Master节点查看集群的DataNode 是否正常启动。
	hdfs  dfsadmin    -report

在这里插入图片描述
通过网页查看Slave 节点的相关信息:
在这里插入图片描述

  1. 关闭hadoop集群。
	stop-yarn.shstop-dfs.shmr-jobhistory-daemon.sh stop historyserver或者通过如下命令关闭集群。stop-all.sh

1.5 总结

问题1:

  • Master 节点NameNode 没有启 动,DataNode节点却启动了;
  • 执行hdfs dfsadmin -report命令出现如下信息:
    report:Call From Master/192.168.138.128 to Master:9000 failed on connection exception: java.net.ConnectException:拒绝连接;For more details see :http://wiki.apache.org/hadoop/ConnectionRefused

解决:分析发现,我没有配置slaves文件,在hadoop3.1.3版本中,不存在slaves文件,通过网络查询资料以及和同学交流,我发现slaves文件更改成了workes文件,因此配置workes文件;由于前后操作不当,因此导致了此问题。通过如下方式解决:
关闭集群,删除临时文件和日志,重新执行hdfs namenode -format.

问题2:

  • 当关机重启后,集群无法启动,无法ping 通 ;

解决:分析发现各节点的IP发生了变化,导致 集群无法启动,是由于采用了NAT 进行网络连接,NAT模式在每次重启计算机会动态分配IP 地址;采用桥接来实现各节点的连通,配置静态IP.

参考文献

1.厦门大学数据库实验室,http://dblab.xmu.edu.cn/blog/install-hadoop-cluster/
2.网络配置,https://www.cnblogs.com/guangluwutu/p/9705136.html,
https://www.cnblogs.com/lilongxin/p/9034245.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/484155.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

复杂性理论研究的核心问题是什么

文章来源&#xff1a;学习时报作者&#xff1a;陈一壮我曾提出复杂性理论的核心不是一般的涌现而是自组织&#xff0c;以突出其相对于传统系统论的特点。普利高津也讲到过&#xff1a;“复杂性诞生”于“物理―化学系统的自组织”。但是我又想到必须对这个自组织的概念作进一步…

【译】索引进阶(四):页和区

【译注&#xff1a;此文为翻译&#xff0c;由于本人水平所限&#xff0c;疏漏在所难免&#xff0c;欢迎探讨指正】 原文链接&#xff1a;传送门。 在之前的章节中&#xff0c;我们在有索引和没有索引的情况下执行同一个查询&#xff0c;比较了各自需要的工作。我们的最主要的评…

网络体系结构

计算机网络的体系结构 网络体系结构是从功能上描述计算机网络结构计算机网络体系结构简称网络体系结构&#xff0c;是分层结构每层遵循某个/些网络协议完成本层功能计算机网络体系结构是计算机网络各层及其协议的集合体系结构是一个计算机网络的功能层次及其关系的定义体系结构…

计算机网络安全-RSA加密原理

一. 安全的攻击类型 危及信息安全的举动. 中断&#xff1a;对可用性的攻击&#xff0c;包括对硬件,通信线路的破坏等&#xff1b; 截获:对机密性的攻击&#xff0c;如窃听等&#xff1b; 篡改&#xff1a;对完整性的攻击&#xff0c;如改变数据或文件&#xff1b; 伪造&…

为什么神经网络不适合理解自然语言 ?

来源&#xff1a;AI前线作者&#xff1a;Ben Dickson译者&#xff1a;王强策划&#xff1a;刘燕过去十年中&#xff0c;人工智能行业的一大趋势就是通过创建更大的深度学习模型来解决问题。这种趋势在自然语言处理领域最为明显&#xff0c;这也是人工智能最具挑战性的领域之一。…

Spark详解

一.Spark 简介 Spark 和Scala 1.1 Spark 是基于内存计算的大数据并行计算框架&#xff0c;可用于构建大型的、低延迟的数据分析应用程序&#xff1b; 1.2 Spark 的特点&#xff1a; 1.3 Scala是一门现代的多范式编程语言&#xff0c;可扩展式语言&#xff1b; 1.4 Scala 特性&…

应用层协议与网络应用

网络应用的体系结构 1、客户机/服务器&#xff08;Client-Server&#xff0c; C/S&#xff09; 服务器&#xff1a; 7*24小时提供服务永久访问地址/域名利用大量服务器实现可拓展性 客户机&#xff1a; 与服务器通信&#xff0c;使用服务器提供的服务间歇性接入网络可能使…

oc之脚本

进入Build Phases页面&#xff0c;点击加号选择“New Run Script Phases”创建Run Script 在这里添加Run Script&#xff0c; 1.每次编译运行版本号&#xff08;bundleVersion&#xff09;自增1 buildNumber$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" &q…

案例分享|突破卡脖子技术,研制协作机器人核心零部件的方向与思考

来源&#xff1a; 机器人大讲堂协作机器人&#xff0c;作为一种新型的智能机器人&#xff0c;扫除了人机协作的障碍&#xff0c;让机器人彻底摆脱护栏或围笼的束缚&#xff0c;让机器人与人可以在生产、制造与服务上协同作战&#xff0c;充分发挥机器人的效率及人类的智能&…

Spark安装及其sbt和maven 打包工具安装

一&#xff0e;安装准备 需要先安装hadoop,Java JDK,采用 Hadoop(伪分布式)&#xff0b;Spark(Local模式) 的组合&#xff0e;spark和sbt&#xff0c;maven的版本&#xff1a;spark-2.4.5-bin-without-hadoop.tgz 和sbt-1.3.8.tgz,maven-3.6.3&#xff1b; https://pan.baidu.…

SpringBoot集成Spring Security(一)登录注销

同个人网站 https://www.serendipper-x.cn/&#xff0c;欢迎访问 &#xff01; SpringBoot集成Spring Security&#xff08;二&#xff09;注册 、密码加密、修改密码 写在前面 Spring Security是一种基于 Spring AOP 和 Servlet 过滤器的安全框架。它提供全面的安全性解决方案…

什么是1+N模式的新一代城市大脑建设方案

来源&#xff1a;城市大脑全球标准研究组前言&#xff1a;2021年上半年&#xff0c;我们在城市大脑的最新探索和研究中&#xff0c;提出了1N模式的新一代城市大脑建设方案。其中“1”是世界统一标准的城市神经元网络&#xff0c;“N”是N条城市云反射弧&#xff0c;这是基于互联…

图计算-Pregel-Hama

一.图计算简介 1.1 图计算是专门针对图结构数据的处理&#xff0e; 许多大数据都是以大规模图或网络的形式呈现&#xff1b;许多非图结构的大数据&#xff0c;也常常被转换为图模型后进行分析&#xff1b;图结构很好地表达了数据之间的关联性&#xff1b;关联性计算是大数据计…

英伟达推出全球首个元宇宙平台,豪砸数亿是为什么?

来源&#xff1a;AI科技大本营(ID:rgznai100)编译&#xff1a;禾木木翻译&#xff1a;AI科技大本营NVIDIA 在 SIGGRAPH 推出首个全球元宇宙平台&#xff0c;并赢得了最佳展示奖。目前处于公测阶段&#xff0c;它对 NVIDIA RTX 和 GeForce RTX GPU 用户免费开放。用户在安装完 N…

长链剖分题表

长链剖分&#xff0c;类似于重链剖分(dsu on tree)的一种替代算法。最广泛的用法是优化与深度有关的树上DP&#xff0c;以及处理一些与点分治类似的问题。有一部分长链剖分题也可以用dsu on tree做&#xff0c;单复杂度往往会多一个log。 每个点找到高度最大的儿子作为自己的重…

流计算

一.概述 实时获取来自不同数据源的海量数据经过实时分析处理&#xff0c;或的有价值的信息&#xff0e; 1.数据的处理流程 静态数据:数据不会发生变化&#xff0c;如数据仓库中的数据&#xff1b;流数据:数据以大量&#xff0c;快速&#xff0e;时变的流形式持续到达&#xf…

SpringBoot集成Spring Security(二)注册 、密码加密、修改密码

SpringBoot集成Spring Security&#xff08;一&#xff09;登录注销 写在前面 上一节创建了项目并且利用Spring Security完成了登录注销功能&#xff0c;这里继续说一下注册、密码加密和找回密码&#xff0c;代码注释较清晰。 一、web层 控制 StudentController.java package …

自动驾驶需要做哪些测试?

来源&#xff1a;广电计量&#xff0c;文&#xff1a;李梓熙、王闻彦参考资料来源&#xff1a;《有问必答 | 自动驾驶汽车之道路“测试”与“考试”》by公安部交通管理科研所微发布自动驾驶已然成为汽车行业热词。在大家殷切的期盼下&#xff0c;近几年上市的车型&#xff0c;多…

大数据的应用-UserCF和ItemCF推荐算法

一.推荐系统 1.1 推荐系统是大数据在互联网领域的典型应用&#xff0c;它可以通过分析用户的历史记录来了解用户的喜好&#xff0c;从而主动的为用户推荐其感兴趣的信息&#xff0c;满足用户的个性化推荐需求&#xff0e; 1.2 推荐系统是自动联系用户和物品的一种工具&#x…

计算机网络之Web应用

1、web与HTTP world Wide Web&#xff1a; 网页 网页互相链接 网页包含多个对象&#xff1a; 对象&#xff1a; HTML文件、JPEG图片、视频文件、动态脚本等 基本HTML文件&#xff1a; 包含对其他对象引用的链接 对象的寻址&#xff1a; URL&#xff08;Uniform Resource Locato…