Hadoop集群安装

集群规划

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.rhkb.cn/news/447997.html

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

相关文章

基于Spring Boot的医疗病历B2B平台开发策略

第4章 系统设计 4.1 系统总体设计 系统不仅要求功能完善&#xff0c;而且还要界面友好&#xff0c;因此&#xff0c;对于一个成功的系统设计&#xff0c;功能模块的设计是关键。由于本系统可执行的是一般性质的学习信息管理工作&#xff0c;本系统具有一般适用性&#xff0c;其…

49 | 桥接模式:如何实现支持不同类型和渠道的消息推送系统?

上一篇文章我们学习了第一种结构型模式&#xff1a;代理模式。它在不改变原始类&#xff08;或者叫被代理类&#xff09;代码的情况下&#xff0c;通过引入代理类来给原始类附加功能。代理模式在平时的开发经常被用到&#xff0c;常用在业务系统中开发一些非功能性需求&#xf…

Docker consul注册中心

一、consul 1.1、什么是服务注册与发现 服务注册与发现是微服务架构中不可或缺的重要组件。 起初服务都是单节点的&#xff0c;不保障高可用性&#xff0c;也不考虑服务的压力承载&#xff0c;服务之间调用单纯的通过接口访问。 直到后来出现了多个节点的分布式架构&#x…

如何看一个flutter项目的具体flutter版本

查看pubspec.lock文件 这个项目实际运行的就是 flutter 3.16.6 版本的

模电板测试分析报告【积分/微分电路】

积分电路常用于波形转换&#xff0c;如将矩形波变三角波。对正弦波积分可以实现相移。 微分电路&#xff1a; 为什么直接串联0.1uF电容到反馈线上去&#xff1a; 整改&#xff1a;这么看的话原理图中C58应该换成电阻的。 积分电路下图中红色的换成电容就可以变成微分电路了。 从…

八、随机名字功能

摘要&#xff1a; XML在C#与Unity3D中的实战运用 - PlaneZhong - 博客园 (cnblogs.com) 读取策划提供的配置文件。 策划提供一份execel文档&#xff0c;程序将它转化为一个配置文件&#xff08;xml&#xff09; 首先&#xff1a; XML是一个可扩展标记的语言 一、转换方法…

VSCode运行QT界面

VSCode用久了,感觉Qt Creator的写起代码来还是不如VSCode得心应手,虽然目前还是存在一些问题,先把目前实现的状况做个记录,后续有机会再进一步优化。 当前方式 通过QtCreator创建一个CMake项目,然后使用CMake的方式在VSCode中进行编译。 claude给出的建议 左上角的名字会…

Node.js管理工具NVM

nvm&#xff08;Node Version Manager&#xff09;是一个用于管理多个 Node.js 版本的工具。以下是 nvm 的使用方法和一些常见命令&#xff1a; 一、安装 nvm 下载 nvm&#xff1a; 地址&#xff1a;https://github.com/coreybutler/nvm-windows/releases访问 nvm 的 GitHub 仓…

【C语言】你不知道的知识小盲区——柔性数组

文章目录 一、什么是柔性数组二、柔性数组的特点三、柔性数组的使用四、柔性数组的优势 一、什么是柔性数组 也许你从来没有听说过柔性数组&#xff08;flexible array&#xff09;这个概念&#xff0c;但是它确实是存在的。在C99标准中&#xff0c;如果结构体的最后一个成员是…

sqli-labs less-26 空格绕过

空格绕过 过滤空格 用Tab代替空格%20 %09 %0a %0b %0c %0d %a0 //() 绕过空格注释符绕过//–%20//#–- -;%00; 空白字符绕过SQLite3 —— 0A,0D,0c,09,20 MYSQL 09,0A,0B,0B,0D,A0,20 PosgressSQL 0A,0D,0C,09,20 Oracle_11g 00,0A,0D,0C,09,20 MSSQL 01,02,03,04,05,06,07,…

[瑞吉外卖]-05菜品模块

文件上传下载 介绍 文件上传也称为upload&#xff0c;是指将本地图片、视频、音频等文件上传到服务器上, 可以供其他用户浏览或下载 前端组件库提供了上传组件&#xff0c;但是底层原理还是基于form表单的文件上传。 服务端要接收客户端上传的文件&#xff0c;通常都会使用Ap…

一次Fegin CPU占用过高导致的事故

记录一下 一次应用事故分析、排查、处理 背景介绍 9号上午收到CPU告警&#xff0c;同时业务反馈依赖该服务的上游服务接口响应耗时太长 应用告警-CPU使用率 告警变更 【WARNING】项目XXX,集群qd-aliyun,分区bbbb-prod,应用customer,实例customer-6fb6448688-m47jz, POD实例CP…

Web集群服务-Nginx

1. web服务 1. WEB服务:网站服务,部署并启动了这个服务,你就可以搭建一个网站 2. WEB中间件: 等同于WEB服务 3. 中间件:范围更加广泛,指的负载均衡之后的服务 4. 数据库中间件:数据库缓存,消息对列 2. 极速上手指南 nginx官网: nginx documentation 2.1 配置yum源 vim /etc/…

HTML基础知识

介绍 HTML&#xff08;HyperText Markup Language&#xff0c;超文本标记语言&#xff09;是一种用于创建网页的标准标记语言。它描述了一个网站的结构骨架&#xff0c;使得浏览器能够展示具有特定格式的文本、链接、图片和其他内容。以下是HTML的一些基础知识&#xff1a; HT…

骨传导耳机哪个牌子好?自费测评5大爆款骨传导耳机,高能不断!

随着科技的飞速发展&#xff0c;耳机市场也迎来了一次又一次的革新。从有线到无线&#xff0c;从入耳式到头戴式&#xff0c;每一次技术的突破都为用户带来了全新的听觉体验。近年来&#xff0c;骨传导耳机以其独特的传声方式和健康舒适的佩戴体验&#xff0c;逐渐成为运动爱好…

初识Linux之指令(二)

一&#xff1a;head指令 head 与 tail 就像它的名字一样的浅显易懂&#xff0c;它是用来显示开头或结尾某个数量的文字区块&#xff0c;head 用来显示档案的 开头至标准输出中&#xff0c;而 tail 想当然尔就是看档案的结尾。 语法&#xff1a;head 【参数】 【文件】 功能&…

docker (desktopcompose) download

docker docker-compose download 百度网盘获取离线包链接release-notes 参考dockerdocker-composewlspowershell

Loss:Objects as Points

目录 3. 预备知识4. 物体作为点4.1. 3D 检测4.2. 人体姿态估计4-(1). 物体作为点的核心概念4-(2). 从点到边界框的推理过程4-(3). 3D 检测4-(4). 人体姿态估计5. 实现细节目录 3. 预备知识4. 物体作为点4.1. 3D 检测4.2. 人体姿态估计4-(1). 物体作为点的核心概念4-(2). 从点到…

微知-Mellanox提供的一个不错的测试rdma_cm方式建链的工具软件ucmatose?(ucmatose; ucmatose -s 1.1.1.1)

文章目录 快速命令获取背景实验server端客户端一个错误的情况无法建链&#xff1a; rpm安装包&#xff1a;librdmacm-utils-48.0-1.0.1.an8.x86_64详细介绍综述 快速命令获取 #server端 ucmatose# client端 ucmatose -s 1.1.1.1背景 平时使用rdma cm建链的测试一般使用ib_wri…

算法:974.和可以被K整除的子数组

题目 链接:leetcode链接 思路分析&#xff08;前缀和 同余定理&#xff09; 首先&#xff0c;我们要了解一下什么是同余定理 同余定理&#xff1a; 如果&#xff08;a - b&#xff09;/ p k …… 0 则 a % p b % p 证明我写在草稿纸上&#xff0c;如下图&#xff1a; 初…