Hadoop集群安装

news2024/11/30 6:58:18

集群规划

node01node02node03
角色主节点从节点从节点
NameNode
DataNode
ResourceManager
NodeManager
SecondaryNameNode
Historyserver

上传安装包到node01

解压到指定目录

tar -zxvf /bigdata/soft/hadoop-3.3.3.tar.gz -C /bigdata/server/

创建软链接

cd /bigdata/server

ln -s hadoop-3.3.3/ hadoop

常见的Hadoop软件目录说明

目录作用说明
bin/Hadoop最基本的管理脚本和使用脚本hdfs: 文件上传命令
hadoop文件管理基础命令
yarn: 资源调度相关
mapred: 程序运行, 启动历史服务器
etc/Hadoop配置文件的目录core-site.xml
hdfs-site.xml
mapred-site.xml
yarn-site.xml
include/对外提供的编程库头文件对外提供的编程库头文件(具体动态库和静态库在lib目录中),
这些头文件均是用C++定义的,通常用于C++程序访问HDFS或者编写MapReduce程序
lib/动态库和静态库该目录包含了Hadoop对外提供的编程动态库和静态库,
与include目录中的头文件结合使用。
libexec/shell配置文件各个服务对用的shell配置文件所在的目录,
可用于配置日志输出、启动参数(比如JVM参数)等基本信息。
sbin/Hadoop管理命令主要包含HDFS和YARN中各类服务的启动/关闭脚本
share/官方自带示例Hadoop各个模块编译后的jar包所在的目录

Hadoop配置文件修改

Hadoop安装主要就是配置文件的修改,一般在主节点进行修改,完毕后scp分发给其他各个从节点机器

hadoop-env.sh

文件中设置的是Hadoop运行时需要的环境变量。JAVA_HOME是必须设置的,即使我们当前的系统中设置了JAVA_HOME,它也是不认识的,因为Hadoop即使是在本机上执行,它也是把当前的执行环境当成远程服务器

vim hadoop-env.sh

54行的JAVA_HOME的设置

export JAVA_HOME=/bigdata/server/jdk1.8

在文件末尾添加如下内容

export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

core-site.xml

hadoop的核心配置文件,有默认的配置项core-default.xml
core-default.xml与core-site.xml的功能是一样的,如果在core-site.xml里没有配置的属性,则会自动会获取core-default.xml里的相同属性的值。

cd /bigdata/server/hadoop/etc/hadoop/
vim core-site.xml

在文件的configuration的标签中添加以下内容:

<property>
 <name>fs.defaultFS</name>
 <value>hdfs://node01:8020</value>
</property>

<property>
 <name>hadoop.tmp.dir</name>
 <value>/bigdata/data/hadoop</value>
</property>

<!-- 设置HDFS web UI用户身份 -->
<property>
 <name>hadoop.http.staticuser.user</name>
 <value>root</value>
</property>

<!-- 整合hive -->
<property>
 <name>hadoop.proxyuser.root.hosts</name>
 <value>*</value>
</property>

<property>
 <name>hadoop.proxyuser.root.groups</name>
 <value>*</value>
</property>

hdfs-site.xml

HDFS的核心配置文件,有默认的配置项hdfs-default.xml

hdfs-default.xml与hdfs-site.xml的功能是一样的,如果在hdfs-site.xml里没有配置的属性,则会自动会获取hdfs-default.xml里的相同属性的值。

cd /bigdata/server/hadoop/etc/hadoop/

vim hdfs-site.xml

 <!-- 指定secondarynamenode运行位置 -->
 <property>
     <name>dfs.namenode.secondary.http-address</name>
     <value>node02:50090</value>
 </property>

mapred-site.xml

MapReduce的核心配置文件,有默认的配置项mapred-default.xml

mapred-default.xml与mapred-site.xml的功能是一样的,如果在mapred-site.xml里没有配置的属性,则会自动会获取mapred-default.xml里的相同属性的值。

cd /bigdata/server/hadoop/etc/hadoop/

vim mapred-site.xml

 <property>
     <name>mapreduce.framework.name</name>
     <value>yarn</value>
 </property>
 <property>
     <name>yarn.app.mapreduce.am.env</name>
     <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
 </property>
 <property>
     <name>mapreduce.map.env</name>
     <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
 </property>
 <property>
     <name>mapreduce.reduce.env</name>
     <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
 </property>

yarn-site.xml

YARN的核心配置文件,有默认的配置项yarn-default.xml

yarn-default.xml与yarn-site.xml的功能是一样的,如果在yarn-site.xml里没有配置的属性,则会自动会获取yarn-default.xml里的相同属性的值。

cd /bigdata/server/hadoop/etc/hadoop/

vim yarn-default.xml

<!-- 指定YARN的主角色(ResourceManager)的地址 -->
 <property>
     <name>yarn.resourcemanager.hostname</name>
     <value>node01</value>
 </property>

 <!-- NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序默认值:"" -->
 <property>
     <name>yarn.nodemanager.aux-services</name>
     <value>mapreduce_shuffle</value>
 </property>

 <!-- 是否将对容器实施物理内存限制 -->
 <property>
     <name>yarn.nodemanager.pmem-check-enabled</name>
     <value>false</value>
 </property>

 <!-- 是否将对容器实施虚拟内存限制。 -->
 <property>
     <name>yarn.nodemanager.vmem-check-enabled</name>
     <value>false</value>
 </property>
 <!-- 开启日志聚集 -->
 <property>
     <name>yarn.log-aggregation-enable</name>
     <value>true</value>
 </property>

 <!-- 设置yarn历史服务器地址 -->
 <property>
     <name>yarn.log.server.url</name>
     <value>http://node02:19888/jobhistory/logs</value>
 </property>

 <!-- 保存的时间7天 -->
 <property>
     <name>yarn.log-aggregation.retain-seconds</name>
     <value>604800</value>
 </property>

workers

workers文件里面记录的是集群主机名。主要作用是配合一键启动脚本如start-dfs.sh、stop-yarn.sh用来进行集群启动。这时候workers文件里面的主机标记的就是从节点角色所在的机器。

cd /bigdata/server/hadoop/etc/hadoop/

vim workers

node01
node02
node03

同步hadoop软件包到node02和node03

scp -r hadoop-3.3.3/ node02:$PWD

scp -r hadoop-3.3.3/ node03:$PWD

在node02节点配置软链接

ln -s hadoop-3.3.3/ hadoop

在node03节点配置软链接

ln -s hadoop-3.3.3/ hadoop

[所有节点]配置环境变量

vim /etc/profile

export HADOOP_HOME=/bigdata/server/hadoop

export PATH= P A T H : PATH: PATH:HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile

Hadoop集群启动

启动方式

要启动Hadoop集群,需要启动HDFSYARN两个集群。
注意:首次启动HDFS时,必须在主节点node01对其进行格式化操作。本质上是一些清理和准备工作,因为此时的HDFS在物理上还是不存在的。

hadoop namenode -format

手动单个节点启动

主节点node01启动namenode

cd /bigdata/server/hadoop/bin

./hdfs --daemon start namenode

node02启动secondarynamenode

cd /bigdata/server/hadoop/bin

./hdfs --daemon start secondarynamenode

所有节点启动datanode

cd /bigdata/server/hadoop/bin

./hdfs --daemon start datanode

查看进程情况

jpg

netstat -ntlp

其中hdfs的web端口: node01:9870已经可以正常访问

主节点node01启动ResouceManager

cd /bigdata/server/hadoop/bin

./yarn --daemon start resourcemanager

所有节点启动Nodemanager

cd /bigdata/server/hadoop/bin

./yarn --daemon start nodemanager

如果想要停止某个节点上某个角色,只需要把命令中的start改为stop即可。

一键脚本启动

如果配置了etc/hadoop/workersssh免密登录,则可以使用程序脚本启动所有Hadoop两个集群的相关进程,在主节点所设定的机器上执行。

hdfs:/bigdata/server/hadoop/sbin/start-dfs.sh

yarn:/bigdata/server/hadoop/sbin/start-yarn.sh

停止脚本

hdfs:/bigdata/server/hadoop/sbin/stop-dfs.sh

yarn:/bigdata/server/hadoop/sbin/stop-yarn.sh

完整的一键启动hdfs和yarn脚本

start-all.sh: 启动所有的hdfs和yarn的脚本

stop-all.sh: 停止所有的hdfs和yarn的脚本

启动后的效果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

集群Web访问UI

hdfs: http://node01:9870

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

yarn:http://node01:8088

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

MapReduce JobHistory

JobHistory用来记录已经finished的mapreduce运行日志,日志信息存放于HDFS目录中,默认情况下没有开启此功能,需要在mapred-site.xml中配置并手动启动。

修改mapred-site.xml

cd /bigdata/server/hadoop/etc/hadoop/

vim mapred-site.xml

	<property>
     <name>mapreduce.jobhistory.address</name>
     <value>node02:10020</value>
 </property>
	<property>
     <name>mapreduce.jobhistory.webapp.address</name>
     <value>node02:19888</value>
 </property>

scp mapred-site.xml node02: P W D s c p m a p r e d − s i t e . x m l n o d e 03 : PWD scp mapred-site.xml node03: PWDscpmapredsite.xmlnode03:PWD

在node02节点启动JobHistory

cd /bigdata/server/hadoop/bin

./mapred --daemon start historyserver

访问web管理界面

http://node02:19888/jobhistory

运行演示程序

在hdfs创建一个目录:

hdfs dfs -mkdir /input

上传文件到hdfs的/input目录

hdfs dfs -put start-all.sh /input

运行示例程序

hadoop jar /bigdata/server/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.3.jar wordcount /input /output

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

http://node02:19888/jobhistory`

运行演示程序

在hdfs创建一个目录:

hdfs dfs -mkdir /input

上传文件到hdfs的/input目录

hdfs dfs -put start-all.sh /input

运行示例程序

hadoop jar /bigdata/server/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.3.jar wordcount /input /output

[外链图片转存中…(img-sGiM0nUt-1728869465896)]

[外链图片转存中…(img-P7KlMe3y-1728869465896)]

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

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

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

相关文章

在线matlab环境

登陆https://ww2.mathworks.cn/ 在线文档https://ww2.mathworks.cn/help/index.html 在线环境[需要先登陆]

C4T避风型电动采光排烟天窗(图集09J621-2)

C4T避风型电动采光排烟天窗是09J621-2《电动采光排烟天窗》图集中的一种窗型。也是一种现代化的建筑消防排烟通风采光设备&#xff0c;被广泛应用于多风地区厂房。 C4T避风型电动采光排烟天窗配有成品避风罩&#xff0c;该避风置由钢制骨架和彩色钢板构成&#xff0c;固定在电动…

50 | 装饰器模式:通过剖析Java IO类库源码学习装饰器模式

上一篇文章我们学习了桥接模式&#xff0c;桥接模式有两种理解方式。第一种理解方式是“将抽象和实现解耦&#xff0c;让它们能独立开发”。这种理解方式比较特别&#xff0c;应用场景也不多。另一种理解方式更加简单&#xff0c;类似“组合优于继承”设计原则&#xff0c;这种…

openEuler、Linux操作系统常见操作-(6)如何登录Linux

如何登录Linux Linux登陆方式主要有如下两种: 。本地登陆 。一个典型的Linux系统将运行六个虚拟控制台和一个图形控制台&#xff0c;openEuler目前暂未支持图形化界面; 可以通过CtrlAltF[1-6]在6个虚拟控制台之间进行切换。 远程登录 。默认情况下openEuler支持远程登录&…

制作PPT的入门步骤有哪些?2个高效软件轻松搞定PPT!

对于现代的职场人士和学生来说&#xff0c;PPT——PowerPoint已经成为他们工作和学习无法避开的部分&#xff0c;换到各种商业会议、学术报告和教学中&#xff0c;PPT演示文稿都扮演着重要的角色&#xff1a;不仅能够帮助演讲者更好地展示讲义内容&#xff0c;更让观众能够通过…

JavaScript全面指南(四)

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;JavaScript篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来JavaScript篇专栏内容:JavaScript全面指南 目录 61、如何防止XSRF攻击 62、如何判断一个对象是否为数组&…

科研绘图系列:R语言散点相关系数图(scatter plot)

文章目录 介绍加载R包数据函数画图系统信息介绍 散点相关系数图是一种数据可视化图表,它结合了散点图和相关系数来展示两个连续变量之间的关系。这种图表通常用于相关性分析,以判断两个变量之间是否存在某种关联,并总结坐标点的分布模式。 在散点相关系数图中,横轴和纵轴…

SpringBoot+Vue+Uniapp智能社区服务小程序系统(源码+lw+部署文档+讲解等)

项目运行截图 技术框架 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念&#xff0c;提供了一套默认的配置&#xff0c;让开发者可以更专注于业务逻辑而不是配置文件。Spring Boot 通过自动化配置和约…

截图贴图工具 | PixPin v1.9.0 绿色版

PixPin是一款功能强大且使用简单的截图和贴图工具&#xff0c;它旨在帮助用户提高工作效率。PixPin的主要功能包括截图、贴图、标注、文本识别、长截图和截动图。它允许用户自由选择或自动探测窗口来设定截图范围&#xff0c;精准截取所需内容&#xff0c;并将所截取的图像“贴…

D37【python 接口自动化学习】- python基础之函数

day37 函数的参数 学习日期&#xff1a;20241014 学习目标&#xff1a;输入输出与文件操作&#xfe63;-50 函数的参数&#xff1a;怎样实现函数与外部数据通信&#xff1f; 学习笔记&#xff1a; 实参与形参 代码实现 # 实参与形参 def foo(number):print(number)n1123 n…

redis与springBoot整合

前提 要实现,使用Redis存储登录状态 需要一个完整的前端后端的项目 前端项目搭建 解压脚手架 安装依赖 配置请求代理 选做: 禁用EsLint语法检查 Vue Admin Template关闭eslint校验&#xff0c;lintOnSave&#xff1a;false设置无效解决办法_lintonsave: false-CSDN博客 …

【前端】如何制作一个简单的网页(3)

接下来我们为html元素添加网页内容。网页内容按照功能的不同可以区分为网页头与网页体两个部分。 先来说说什么是网页头。 网页头 网页头&#xff08;又称为网页头部信息&#xff09;向浏览器提供文档的一些信息。 这些信息包括网页的名称、编码方式、样式、JS代码等。 &…

java项目之纺织品企业财务管理系统源码(springboot+vue+mysql)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的纺织品企业财务管理系统。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 基于spring boot…

Thread类的基本用用法

1.创建线程 1.1继承Thread类 线程创建需要Thread类但是不需要import导入是为什么&#xff1f; 因为java.lang默认import不需要导入&#xff0c;java.lang中包含Thread 为什么在MyThread类中只能使用try catch 无法使用throws&#xff1f; 因为父类Thread run中没有throws …

Java 日志打印

使用日志打印&#xff1a; private static Logger log LoggerFactory.getLogger(DeptController.class);RequestMapping("/depts")public Result list() { // System.out.println("查询全部部门数据");log.info("查询全部部门数据");ret…

Spring Boot:为中小型医院网站提速

3 系统分析 3.1 可行性分析 通过对本基于Spring Boot的中小型医院网站实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、操作可行性、经济可行性和时间可行性四方面进行分析。 3.1.1 技术可行性 本基于Spring Boot的中小型…

[LeetCode] 118. 杨辉三角

给定一个非负整数 numRows&#xff0c;生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中&#xff0c;每个数是它左上方和右上方的数的和。 示例 1: 输入: numRows 5 输出: [[1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]] 示例 2: 输入: numRows 1 输出: [[1…

【计网】从零开始理解UDP协议 --- 理解端口号和UDP结构

我依旧敢和生活顶撞&#xff0c; 敢在逆境里撒野&#xff0c; 直面生活的污水&#xff0c; 永远乐意为新一轮的月亮和日落欢呼。 --- 央视文案 --- 从零开始理解UDP协议 1 再谈端口号2 理解UDP 报头结构3 UDP 的特点4 UDP 的缓冲区5 UDP 使用注意事项 1 再谈端口号 之前我…

个性化图像生成新SOTA!阿里开源MIP-Adapter,可将无需微调的IP-Adapter推广到同时合并多个参考图像。

今天给大家介绍阿里最近开源的个性化图像生成的新方法MIP-Adapter&#xff0c;将无需微调的预训练模型&#xff08;IP-Adapter&#xff09;推广到同时合并多个参考图像。MIP-Adapter会根据每个参考图像与目标对象的相关性来给这些图像分配不同的“重要性分数”。这样&#xff0…

OpenShift 4 - 云原生备份容灾 - Velero 和 OADP 基础篇

《OpenShift 4.x HOL教程汇总》 说明&#xff1a; 本文主要说明能够云原生备份容灾的开源项目 Velero 及其红帽扩展项目 OADP 的概念和架构篇。操作篇见《OpenShift 4 - 使用 OADP 对容器应用进行备份和恢复&#xff08;附视频&#xff09; 》 Velero 和 OADP 包含的功能和模…