【黑马2023大数据实战教程】VMWare虚拟机部署HDFS集群详细过程

文章目录

  • 部署HDFS集群
    • 1.配置workers:
    • 2.配置hadoop-env.sh文件
    • 3.配置core-site.xml文件
    • 4.配置hdfs-site.xml文件
    • 准备数据目录
    • 分发Hadoop文件夹
    • 配置环境变量
    • 授权为hadoop用户
    • 格式化文件系统
    • 错误排查方法!!

视频:黑马2023 VMWare虚拟机部署HDFS集群
注意!这些操作的前提是完成了前置准备中的服务器创建、固定IP、防火墙关闭、Hadoop用户创建、SSH免密、JDK部署等操作!!!

操作在这里 大数据集群环境准备过程记录(3台虚拟机)

部署HDFS集群

1.上传Hadoop安装包到node1节点中
rz -bey
2.解压缩安装包到/export/server/中
tar -zxvf hadoop-3.3.4.tar.gz -C /export/server
3构建软链接
cd /export/server
ln -s /export/server/hadoop-3.3.4 hadoop
4.进入hadoop安装包内
cd hadoop

ls -l查看文件夹内部结构:
各个文件夹含义如下:

bin ,存放Hadoop的各类程序 (命令 etc,存放Hadoop的配置文件
include,C语言的一些头文件lib,存放Linux系统的动态链接库 (.so文件)libexec,存放配置Hadoop系统的脚本文件
(.sh和.cmd licenses-binary,存放许可证文件 sbin,管理员程序 (super bin)
share,存放二进制源码 (Javajar包)


主要配置的是
etc中的一些文件:!!!
cd /export/server/hadoop/etc/hadoop

这里要注意,我一开始把配置全写在/export/server/hadoop 文件中,最后启动时无法启动节点,排查了好久>_<!!

1.配置workers:

vim workers
先删掉内置的localhost
输入:

node1
node2
node3

2.配置hadoop-env.sh文件

vim hadoop-env.sh
填入如下内容

export JAVA_HOME=/export/server/jdk
export HADOOP_HOME=/export/server/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_LOG_DIR=$HADOOP_HOME/logs

JAVA HOME,指明JDK环境的位置在哪
HADOOP_HOME,指明Hadoop安装位置
HADOOP_CONF_DIR,指明Hadoop配置文件目录位置
HADOOP_LOG DIR,指明Hadoop运行日志目录位置
通过记录这些环境变量,来指明上述运行时的重要信息

3.配置core-site.xml文件

vim core-site.xml
在文件内部填入如下内容

<configuration>
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://node1:8020</value>
	</property>
	<property>
		<name>io.file.buffer.size</name>
		<value>131072</value>
	</property>
</configuration>

key: fs.defaultFS 含义:HDFS文件系统的网络通讯路径 值:hdfs://nodel:8020
协议为hdfs:// namenode为node1 namenode通讯端口为8020 key:
jo.file.buffer.size 含义: io操作文件缓冲区大小 值:131072bit

hdfs://node1:8020为整个HDFS内部的通讯地址,应用协议为hdfs:// (Hadoop内置协议)
表明DataNode将和node1的8020端口通讯,node1是NameNode所在机器
此配置固定了node1必须启动NameNode进程

4.配置hdfs-site.xml文件

在文件内部填入如下内容

<configuration>
	<property>
		<name>dfs.datanode.data.dir.perm</name>
		<value>700</value>
	</property>
	<property>
		<name>dfs.namenode.name.dir</name>
		<value>/data/nn</value>
	</property>
	<property>
		<name>dfs.namenode.hosts</name>
		<value>node1,node2,node3</value>
	</property>

	<property>
		<name>dfs.blocksize</name>
		<value>268435456</value>
	</property>
	<property>
		<name>dfs.namenode.handler.count</name>
		<value>100</value>
	</property>
	<property>
		<name>dfs.datanode.data.dir</name>
		<value>/data/dn</value>
	</property>
</configuration>


这里我出现了HDFS部署成功但是网页端打不开的情况,通过显示指定端口解决了
,即加入了:

dfs.namenode.http-address node1:9870

详细问题记录在这篇博客:HDFS集群部署成功但网页无法打开如何解决中。

准备数据目录

namenode数据存放node1的/data/nn
datanode数据存放node1、node2、node3的/data/dn所以应该
在node1节点:
mkdir -p /data/nn
mkdir /data/dn
在node2和node3节点
mkdir -p /data/dn

分发Hadoop文件夹

分发

在node1执行如下命令
cd /export/server (或者当前步骤cd… 就回到server目录)

scp -r hadoop-3.3.4 node2:`pwd`/
scp -r hadoop-3.3.4 node3:`pwd`/

在node2执行,为hadoop配置软链接
ln -s /export/server/hadoop-3.3.4 /export/server/hadoop
在node3执行,为hadoop配置软链接
ln -s /export/server/hadoop-3.3.4 /export/server/hadoop

配置环境变量

vim /etc/profile
在/etc/profile文件底部追加如下内容:

export HADOOP_HOME=/export/server/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

注:PATH是追加的,不会和之前的冲突

环境变量生效 source /etc/profile

授权为hadoop用户

hadoop部署的准备工作基本完成
为了确保安全,hadoop系统不以root用户启动,我们以普通用户hadoop来启动整个Hadoop服务所以,现在需要对文件权限进行授权。

以root身份,在node1、node2、node3三台服务器上均执行如下命令
su - root
cd /data/

chown -R hadoop:hadoop /data
chown -R hadoop:hadoop /export

ll 查看已经授权给hadoop了
在这里插入图片描述

格式化文件系统

前期准备全部完成,现在对整个文件系统执行初始化
1.格式化namenode
确保以hadoop用户执行
su - hadoop
格式化namenode
hadoop namenode -format
2.启动
一键启动hdfs集群
start-dfs.sh
一键关闭hdfs集群
stop-dfs.sh
如果遇到命令未找到的错误,表明环境变量未配置好,可以以绝对路径执行
export/server/hadoop/sbin/start-dfs.sh
export/server/hadoop/sbin/stop-dfs.sh

jps
查看正在运行的java程序·

在这里插入图片描述

错误排查方法!!

理解start-dfs.ah执行:
在当前机器去启动SecondaryNameNode,并根据core-site.xml的记录启动NameNode
根据workers文件的记录,启动各个机器的datanode

执行脚本不报错,但是进程不存在:
查看日志:

cd /export/server/hadoop/logs
ll--查看有哪些log可以排查
tail -100 hadoop-hadoop-namenode-node3.log--这里是你要检查的日志

清理:
rm -rf /export/server/hadoop/logs/*
rm -rf /data/nn/;rm -rf /data/dn/

出现权限问题时:
chown -R hadoop:hadoop /data
chown -R hadoop:hadoop /export

返回上一级 cd …

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Jmeter性能测试工具之性能测试的概念

性能测试的概念 性能测试是指通过特定方式&#xff0c;对被测系统按照一定策略施加压力&#xff0c;获取系统 响应时间、TPS&#xff08;Transaction Per Second&#xff09;、吞吐量、资源利用率等性能指标&#xff0c;以期保证生产系统的性能能够满足用户需求的过程。 性能…

opencv_c++学习(十六)

一、线性滤波 均值滤波&#xff1a; blur(InputArray src, utputArray dst,Size ksize, Point anchor Point(-i,-1), int borderType BoRDER_DEFAULT)src:待均值滤波的图像&#xff0c;图像的数据类型必须是CV_8U、CV_16U、CV_16S、CV_32F和CV_64F这五种数据类型之一。 ds…

ESP8266连接 TLink 云平台

1.硬件准备 &#xff08;1&#xff09;正点原子 ATK-ESP-01 WIFI 模块 &#xff08;2&#xff09;正点原子 STM32F103ZET6精英板子 &#xff08;3&#xff09;USB转TTL模块 2.烧录固件 &#xff08;1&#xff09;烧录软件和固件都可以在正点原子增值资料包找到。 &#xff08;2…

【大数据学习篇8】 热门品类Top10分析

在HBase命令行工具中执行“list”命令&#xff0c;查看HBase数据库中的所有数据表。学习目标/Target 掌握热门品类Top10分析实现思路 掌握如何创建Spark连接并读取数据集 掌握利用Spark获取业务数据 掌握利用Spark统计品类的行为类型 掌握利用Spark过滤品类的行为类型 掌握利用…

English Learning - L3 作业打卡 Lesson2 Day14 2023.5.18 周四

English Learning - L3 作业打卡 Lesson2 Day14 2023.5.18 周四 引言&#x1f349;句1: A brown out is an expression for a reduction in electric power.成分划分弱读连读爆破语调 &#x1f349;句2: Brown outs happen when there is too much demand for electricity.成分…

微服务之以nacos注册中心,以gateway路由转发服务调用实例(第一篇)

实现以nacos为注册中心,网关路由转发调用 项目版本汇总项目初始化新建仓库拉取仓库项目父工程pom初始化依赖版本选择pom文件如下 网关服务构建pom文件启动类配置文件YMLnacos启动新建命名空间配置网关yml(nacos)网关服务启动 用户服务构建pom文件启动类配置文件YML新增url接口配…

行业分析——半导体行业

半导体行业是现代高科技产业和新兴战略产业&#xff0c;是现代信息技术、电子技术、通信技术、信息化等产业的基础之一。我国政府先后制定了《中国集成电路产业发展规划》和《中国人工智能发展规划》&#xff0c;明确提出要支持半导体和人工智能等产业的发展&#xff0c;为半导…

DRMS-关于开展防范风险整改工作的工作计划

防范风险整改工作 工作计划 &#xff12;&#xff10;&#xff12;&#xff13;年&#xff15;月&#xff11;&#xff10;日 尊敬的【DRMS】集群用户&#xff1a; 根据河南省郑州市国家高新技术产业开发区市场监督管理局《关于河南数权数字信息科技研究院网络违规整改通知》及…

微信小程序nodejs+vue高校食堂餐厅点餐订餐系统ja221

本文以实际运用为开发背景&#xff0c;运用软件工程原理和开发方法&#xff0c;它主要是采用 语言 node.js 框架&#xff1a;Express 前端:Vue.js 数据库&#xff1a;mysql 数据库工具&#xff1a;Navicat 开发软件&#xff1a;VScode 前端vueelementui, (1) vue引入elementu…

【IDEA使用码云教程】

IDEA使用码云教程 一、下载、安装git二、配置Gitee插件三、克隆项目四、上传项目五、推送项目六、更新项目 一、下载、安装git 1.打开git官网&#xff0c;选择你的操作系统 官网下载地址&#xff1a;https://git-scm.com/downloads 2.根据你的系统位数选择相应的版本下载 系统…

Spring Cloud Alibaba 集成 sentinel ,sentinel控制台不能检测到服务,但是在命令行配置启动参数就能看到服务

问题背景 Spring Cloud Alibaba 集成 sentinel &#xff0c;sentinel代码写的限流降级的功能都是好的&#xff0c;但是sentinel控制台不能检测到服务&#xff0c;在程序启动时配置JVM启动参数&#xff08;-Dcsp.sentinel.dashboard.serverlocalhost:18080 -Dproject.namename-…

成绩管理系统

系列文章 任务28 成绩管理系统 文章目录 系列文章一、实践目的与要求1、目的2、要求 二、课题任务三、总体设计1.存储结构及数据类型定义2.程序结构3.所实现的功能函数4、程序流程图 四、小组成员及分工五、 测试读入数据浏览全部信息增加学生信息保存数据删除学生信息修改学生…

【活动预告】数据集成引擎BitSail遇上CDC

BitSail是字节跳动开源数据集成引擎&#xff0c;于2022年10月26日宣布开源&#xff0c;可支持多种异构数据源间的数据同步&#xff0c;并提供离线、实时、全量、增量场景下全域数据集成解决方案。BitSail支撑了字节内部众多的业务线&#xff0c;支持多种数据源之间的批式/流式/…

头歌计算机组成原理实验—运算器设计(6)第6关:5位无符号阵列乘法器设计

第6关&#xff1a;5位无符号阵列乘法器设计 实验目的 帮助学生掌握阵列乘法器的实现原理&#xff0c;能够分析阵列乘法器的性能&#xff0c;能在 Logisim 中绘制阵列乘法器电路。 视频讲解 实验内容 在 Logisim 中打开 alu.circ 文件&#xff0c;在5位阵列乘法器中实现斜向…

Rocketmq常用使用场景

RocketMQ 是阿里开源的分布式消息中间件&#xff0c;跟其它中间件相比&#xff0c;RocketMQ 的特点是纯JAVA实现 基础概念 Producer&#xff1a; 消息生产者&#xff0c;负责产生消息&#xff0c;一般由业务系统负责产生消息 Producer Group&#xff1a; 消息生产者组&#xf…

聚会游戏玩什么?UMO轻松炒热气氛

UMO是一款有趣的多人益智桌游&#xff0c;考验玩家耐力和技巧的比拼&#xff01;玩家将在游戏中通过特定的规则来出牌&#xff0c;谁先出完所有牌谁就赢&#xff0c;游戏非常讲究策略和运气哦~ 当玩家手上只剩一张牌时&#xff0c;必须喊出UMO&#xff01;游戏因此得名。【数字…

3 个令人惊艳的 ChatGPT 项目,开源了!

过去一周&#xff0c;AI 界又发生了天翻地覆的变化&#xff0c;其中&#xff0c;最广为人知的&#xff0c;应该是 OpenAI 正式上线 ChatGPT iOS 客户端&#xff0c;让所有人都可以更方便的在手机上与 ChatGPT 聊天。 此外&#xff0c;Stable Diffusion 母公司 Stability AI 也…

论文阅读_音频压缩_SoundStream

论文信息 number headings: auto, first-level 2, max 4, _.1.1 name_en: SoundStream: An End-to-End Neural Audio Codec name_ch: SoundStream&#xff1a;一种端到端的神经音频编解码器 paper_addr: http://arxiv.org/abs/2107.03312 doi: 10.1109/TASLP.2021.3129994 dat…

Apache Kafka - 安装注意事项

文章目录 概述安装Kafka配置Kafka启动Kafka配置注意事项导图 概述 在现代的大数据时代&#xff0c;消息队列成为了极为重要的组件。Kafka作为一种高吞吐量、低延迟、可扩展的分布式发布订阅消息系统&#xff0c;在大数据领域得到了广泛的应用。来&#xff0c;这里我们将介绍如…

Python系列之字符串和列表

感谢点赞和关注 &#xff0c;每天进步一点点&#xff01;加油&#xff01; 目录 一、字符串 1.1 字符串的定义与输入 1.2 字符串的拼接与格式化输出 1.3 字符串的下标 1.4 字符串的切片和倒序 1.5 字符串的常见操作 二、列表-List 2.1 列表的常见操作 2.2 列表合并和拼…