当前位置: 首页 > news >正文

从头搭hadoop集群--分布式hadoop集群搭建

模板虚拟机安装配置见博文:https://blog.csdn.net/weixin_66158110/article/details/139236148

配置文件信息如下:https://pan.baidu.com/s/1074eD5aNVugEPcjwVvi9jA?pwd=l1xq(提取码:l1xq)

hadoop版本:hadoop-3.1.3

一、克隆模版虚拟机

1、克隆虚拟机

鼠标移动至虚拟机--管理--克隆,除提到页面均点击下一页即可

(1)克隆类型必须选择“创建完整克隆”

(2)编辑名称和位置

点击完成后等待

再重复上述步骤两遍,分别命名为bigdata04、bigdata05

2、修改克隆机的ip地址

(1)打开虚拟机后进入如下目录

cd /etc/sysconfig/network-scripts

(2)编辑ifcfg-ens33文件内容

vi ifcfg-ens33

bigdata03、04、05分别改为73、74、75

3、修改克隆机的主机名称
vi /etc/hostname

bigdata03、04、05分别改为bigdata03、bigdata04、bigdata05

完成后把所有虚拟机都重启一下

二、MobaXterm连接三台虚拟机

点击Session进行如下配置

创建成功后如下图

三、在bigdata03安装hadoop

1、上传安装包

在bigdata03左边的输入框输入/opt,点击进入install_packages,将下载好的hadoop压缩包拖入

2、输入命令解压
tar -zxvf /opt/install_packages/hadoop-3.1.3.tar.gz -C /opt/softs/
3、重命名文件夹

进入到softs目录下

cd /opt/softs

 修改文件夹名称

mv hadoop-3.1.3/ hadoop3.1.3/
4、配置环境变量

(1)编辑配置文件

vim /etc/profile

(2)在配置文件末尾加入如下内容

#HADOOP_HOME
export HADOOP_HOME=/opt/softs/hadoop3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbinexport HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root

(3) 使配置文件生效

source /etc/profile

(4)验证环境变量配置是否生效

echo $HADOOP_HOME

显示如下图没问题 

四、配置三台虚拟机的映射 

1、编辑hosts文件
vim /etc/hosts

在文件末尾加上如下代码

192.168.173.73 bigdata03
192.168.173.74 bigdata04
192.168.173.75 bigdata05

2、将编辑好的hosts文件远程传输给bigdata04、bigdata05
scp /etc/hosts root@bigdata04:/etc/
scp /etc/hosts root@bigdata05:/etc/

3、检查是否传输过去

在bigdata04中输入如下命令

cat /etc/hosts

显示如下图成功 

五、设置免密登录

以下步骤在bigdata03、bigdata04、bigdata05上均要各自手动执行一次,共执行三次。

1、切换目录
cd /root
2、查看隐藏内容
ls -al
3、进入.ssh目录
cd .ssh
4、生成免密登录的公钥和私钥
ssh-keygen -t rsa

命令执行后,回车三次,可以完成公钥和私钥的生成

5、将公钥和私钥发送到要免密的虚拟机上
ssh-copy-id bigdata03
ssh-copy-id bigdata04
ssh-copy-id bigdata05

六、集群规划

bigdata03bigdata04bigdata05
HDFS

NameNode

DataNode

SecondNameNode

DataNode

DataNode
YARNNodeManagerNodeManager

ResourceManager

NodeManager

集群规划时有两个注意点:

  1. hdfs中的NameNode和SecondNameNode不要安装在同一个节点上
  2. yarn中的ResourceManager不要和NameNode和SecondNameNode在同一个节点上
1、在bigdata03中根据集群规划修改配置文件

(1)跳转到配置文件目录下

cd /opt/softs/hadoop3.1.3/etc/hadoop

(2)修改hadoop-env.sh

vim hadoop-env.sh

输入/JAVA_HOME检索位置,修改第三个位置的JAVA_HOME 

(3)将4个xml文件拖到/opt/softs/hadoop3.1.3/etc/hadoop目录下

(4)编辑workers

vim workers

输入如下内容(一个一行不要并行)

bigdata03
bigdata04
bigdata05

2、将hadoop3.1.3目录传输给bigdata04和05

在bigdata03中执行把东西远程传输过去就行

scp -r /opt/softs/hadoop3.1.3/ root@bigdata04:/opt/softs/
scp -r /opt/softs/hadoop3.1.3/ root@bigdata05:/opt/softs/
3、将profile文件传输给bigdata04和05
scp /etc/profile root@bigdata04:/etc/
scp /etc/profile root@bigdata05:/etc/

 在bigdata03中传输完后记得在bigdata04和bigdata05中使profile文件生效

source /etc/profile
Tips:到这里集群的安装就完成了,剩下的内容属于集群初始化

七、在NameNode所在节点(bigdata03)进行初始化

在bigdata03上执行如下语句

hdfs namenode -format

完成后/opt/softs/hadoop3.1.3目录下会出现data目录

 八、启动hdfs

1、在NameNode(bigdata03)上输入启动命令
start-dfs.sh

2、 在三台虚拟机上分别输入jps命令,检验输出是否与集群规划一致

九、在ResourceManager(bigdata05)上启动yarn

1、跳转到指定目录下
cd /opt/softs/hadoop3.1.3/sbin
2、启动命令
start-yarn.sh

报错:

解决方法:

(1)编辑profile文件

vim /etc/profile

在文件末尾添加这两行代码

export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

(2)远程传输给另外两台

scp /etc/profile root@bigdata03:/etc/
scp /etc/profile root@bigdata04:/etc/

(3)在三台模拟机中都输入如下命令使文件生效

source /etc/profile

(4)在bigdata05中重新启动yarn

start-yarn.sh
3、再次输入jps检验与集群规划是否一致

十、关闭hdfs和yarn

开启这两个后在关闭模拟机前都要记得关掉,这很重要!

stop-yarn.sh
stop-dfs.sh

使用jps命令检查,只剩下jps说明关闭成功,可以关机了

相关文章:

从头搭hadoop集群--分布式hadoop集群搭建

模板虚拟机安装配置见博文:https://blog.csdn.net/weixin_66158110/article/details/139236148 配置文件信息如下:https://pan.baidu.com/s/1074eD5aNVugEPcjwVvi9jA?pwdl1xq(提取码:l1xq) hadoop版本:h…...

odoo10 权限控制用户只允许看到自己的字段

假设一个小区管理员用户&#xff0c;只想看到自己小区的信息。 首先添加一个用户信息选项卡界面&#xff0c;如下图的 用户 > 隶属信息&#xff1a; 我们在自己创建的user模块中&#xff0c;views文件夹下添加base_user.xml <?xml version"1.0" encoding&q…...

图解Mysql索引原理

概述 是什么 索引像是一本书的目录列表&#xff0c;能根据目录快速的找到具体的书本内容&#xff0c;也就是加快了数据库的查询速度索引本质是一个数据结构索引是在存储引擎层&#xff0c;而不是服务器层实现的&#xff0c;所以&#xff0c;并没有统一的索引标准&#xff0c;…...

Arduino网页服务器:如何将Arduino开发板用作Web服务器

大家好&#xff0c;我是咕噜铁蛋&#xff01;今天&#xff0c;我将和大家分享一个有趣且实用的项目——如何使用Arduino开发板搭建一个简易的网页服务器。通过这个项目&#xff0c;你可以将Arduino连接到互联网&#xff0c;并通过网页控制或查询Arduino的状态。 一、项目背景与…...

大模型日报2024-06-05

大模型日报 2024-06-05 大模型资讯 AI气象预测取得重大进展&#xff1a;单台桌面电脑即可运行全球天气模型 摘要: 一项新的人工智能天气预测模型已经取得重大进展&#xff0c;该模型能够在一台普通的桌面电脑上运行&#xff0c;预测全球天气。这意味着即使没有复杂的物理计算&a…...

LLM 大模型学习必知必会系列(二):提示词工程-Prompt Engineering 以及实战闯关

角色扮演&#xff1a;在系统指令中告诉千问你需要它扮演的角色&#xff0c;即可沉浸式和该角色对话交流语言风格&#xff1a;简单调整 LLM 的语言风格任务设定&#xff1a;比如旅行规划&#xff0c;小红书文案助手这样的专项任务处理System message 也可以被用于规定 LLM 的答复…...

Spring系统学习 - Spring入门

什么是Spring&#xff1f; Spring翻译过来就是春天的意思&#xff0c;字面意思&#xff0c;冠以Spring的意思就是想表示使用这个框架&#xff0c;代表程序员的春天来了&#xff0c;实际上就是让开发更加简单方便&#xff0c;实际上Spring确实做到了。 官网地址&#xff1a;ht…...

Priority_queue

一、priority_queue的介绍和使用 1.1 priority_queue的介绍 1.优先队列是一种容器适配器&#xff0c;根据严格的弱排序标准&#xff0c;它的第一个元素总是它所包含的元素中最大的。 2.优先队列类似于堆&#xff0c; 在堆中可以随时插入元素&#xff0c; 并且只能检索最大堆…...

SpringMVC:获取请求数据

1. 通过RequestParma注解接收 /**** value和name都可以使用&#xff0c;互为别名* 如果此处设置了需要什么参数而前端请求时没有提供则会报400&#xff08;请求参数不一致错误&#xff09;* required参数用于设置该参数是否为必须传递参数&#xff0c;默认为true必须传递* defa…...

深度学习 --- stanford cs231 编程作业(assignment1,Q2: SVM分类器)

stanford cs231 编程作业之SVM分类器 写在最前面&#xff1a; 深度学习&#xff0c;或者是广义上的任何学习&#xff0c;都是“行千里路”胜过“读万卷书”的学识。这两天光是学了斯坦福cs231n的一些基础理论&#xff0c;越往后学越觉得没什么。但听的云里雾里的地方也越来越多…...

【scikit-learn010】sklearn算法模型清单实战及经验总结(已更新)

1.一直以来想写下基于scikit-learn训练AI算法的系列文章,作为较火的机器学习框架,也是日常项目开发中常用的一款工具,最近刚好挤时间梳理、总结下这块儿的知识体系。 2.熟悉、梳理、总结下scikit-learn框架模型算法包相关技术点及经验。 3.欢迎批评指正,欢迎互三,跪谢一键…...

Rethinking overlooked aspects in vision-language models

探讨多模态视觉语言模型的一些有趣结论欢迎关注 CVHub!https://mp.weixin.qq.com/s/zouNu-g-33_7JoX3Uscxtw1.Introduction 多模态模型架构上的变化不大,数据的差距比较大,输入分辨率和输入llm的视觉token大小是比较关键的,适配器,VIT和语言模型则不是那么关键。InternVL-…...

【漯河市人才交流中心_登录安全分析报告-Ajax泄漏滑动距离导致安全隐患】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞…...

C语言—字符函数和字符串函数

1.字符分类函数 C语言中有一系列的函数是专门做字符分类的&#xff0c;也就是一个字符是属于什么类型的字符的。 这些函数的使用都需要包含一个头文件 ctype.h。 例&#xff1a;将一句话中的小写字母改成大写字母。 2.字符转换函数 头文件&#xff1a;ctype.h C语言提供了2…...

爬山算法的详细介绍

爬山算法&#xff08;Hill Climbing Algorithm&#xff09;是一种基于启发式的局部搜索算法&#xff0c;常用于解决优化问题。它的核心思想是从当前解的邻域中选择能够使目标函数值最大&#xff08;或最小&#xff09;的下一个解作为当前解&#xff0c;直到找到一个满足问题要求…...

硕士课程 可穿戴设备之作业一

作业一 第一个代码使用的方法是出自于[1]。 框架结构 如下图&#xff0c;不过根据对代码的解读&#xff0c;发现作者在代码中省去了对SSR部件的实现&#xff0c;下文再说。 Troika框架由三个关键部件组成&#xff1a;信号分解&#xff0c;SSR和光谱峰值跟踪。&#xff08;粗…...

测试记录3:WLS2运行Linux界面

1.WLS1转到WLS2 &#xff08;1&#xff09;根据自己的平台&#xff0c;下载WLS2安装包 x64: https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi arm64: https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_arm64.msi &#xff08;2&…...

好用软件推荐

软件功能相关介绍地址FastStone截图&#xff08;长截图、定时截图等&#xff09;CSDNhttps://www.faststone.org/FSCaptureDownload.htmQuicker快捷访问https://getquicker.net/https://getquicker.net/...

王学岗鸿蒙开发(北向)——————(二)TS基本语法详解

1&#xff0c;Ts(TypeScript)语法相当于JAVAScript类型&#xff0c;鸿蒙arkTs是基于TS语言的,当然artTs也融合了其它的语言。 2&#xff0c;本篇文章是基于n9版本。注意,有些语法是已经不能用的。 3&#xff0c; 4&#xff0c;变量:用来存储数据,数字字母组成&#xff0c;数字不…...

【网络协议 | HTTP】HTTP总结与全梳理(一) —— HTTP协议超详细教程

&#x1f525;博客简介&#xff1a;开了几个专栏&#xff0c;针对 Linux 和 rtos 系统&#xff0c;嵌入式开发和音视频开发&#xff0c;结合多年工作经验&#xff0c;跟大家分享交流嵌入式软硬件技术、音视频技术的干货。   ✍️系列专栏&#xff1a;C/C、Linux、rtos、嵌入式…...

java基础选择题--11

1. 以下保留字( )不能出现在说明虚函数原型的语句中。A.static B.operator C.void D.const 参考答案&#xff1a;A 2. 一个类中只能定义一个析构函数。( )A.对 B.错 参考答案&#xff1a;A 解释&#xff1a; 在C中&#xff0c;一个类只能有一个析构函数。析构函数在对象生…...

欲除烦恼须无我,各有前因莫羡人

欲除烦恼须无我&#xff0c;各有前因莫羡人...

Vue的APP实现下载文件功能,并将文件保存到手机中

Vue的APP实现下载文件功能&#xff0c;并将文件保存到手机中 文字说明后台核心代码前台核心代码运行截图项目链接 文字说明 本文介绍Vue实现的APP&#xff0c;将文件下载并保存到手机中&#xff0c;为系统提供导出功能&#xff1b;同时支持导入&#xff0c;即选择本地的文件后&…...

泛微开发修炼之旅--07通过后端代码实现创建并发送待办、源码及示例

文章链接&#xff1a;泛微开发修炼之旅--07通过后端代码实现创建并发送待办、源码及示例...

轻松搭建AI应用的三个大模型技术路线

时下聊起AI&#xff0c;想必最热的就是使用AI的应用&#xff08;chatGPT&#xff0c;文心一言等&#xff09;来提升自己工作的效率&#xff0c;比如破局俱乐部&#xff0c;洋哥带领星球2万多人开启大航海&#xff0c;教人使用这一波新起的应用进行赚钱与赋能。 在我的视角来看…...

Vue01-vue的简介

一、Vue是什么&#xff1f; 一套用于构建用户界面的渐进式javaScript框架。 构建用户界面&#xff1a; 渐进式&#xff1a; 目前Vue的地位&#xff1a;生态完善&#xff0c;国内前端工程师必备技能。 二、Vue的特点 一个XXX.vue就是一个组件&#xff0c;封装的概念&#xff0c…...

leetcode455.分发饼干、376. 摆动序列、53. 最大子序和

455.分发饼干 为了满足更多的小孩&#xff0c;就不要造成饼干尺寸的浪费 大尺寸的饼干既可以满足胃口大的孩子也可以满足胃口小的孩子&#xff0c;那么就应该优先满足胃口大的 这里的局部最优就是大饼干喂给胃口大的&#xff0c;充分利用饼干尺寸喂饱一个&#xff0c;全局最…...

JVM的内存结构

JVM 内存结构 方法区: 方法区主要用于存储虚拟机加载的类信息、常量、静态变量&#xff0c;以及编译器编译后的代码等数据。 程序计数器 由于在JVM中&#xff0c;多线程是通过线程轮流切换来获得CPU执行时间的&#xff0c;因此&#xff0c;在任一具体时刻&#xff0c;一个CP…...

轻量管理内核复杂级别的项目

在嵌入式开发中&#xff0c;管理大型项目&#xff08;例如Linux内核&#xff09;往往是一个复杂的过程。常规的版本控制系统如Git在处理小型项目时非常高效&#xff0c;但面对庞大的代码库时可能会显得笨重且占用大量存储空间。本文将介绍几种轻量级的方法来管理内核级别的项目…...

【wiki知识库】05.分类管理模块--后端SpringBoot模块

&#x1f4dd;个人主页&#xff1a;哈__ 期待您的关注 目录 一、&#x1f525;今日目标 二、☀SpringBoot代码修改 1.使用逆向工程生成Category表结构 2. 新增CategoryQueryParam 3.新增CategorySaveParam 4.新增CategotyQueryVo 三、&#x1f916;新增分类管理的相关接口…...

门户网站建设预算表/seo搜索引擎优化关键词

随时随地阅读更多技术实战干货&#xff0c;获取项目源码、学习资料&#xff0c;请关注源代码社区公众号(ydmsq666) 一、概述 类结构 java.lang.Objectjava.security.spec.EncodedKeySpecjava.security.spec.X509EncodedKeySpec声明&#xff1a; public class X509EncodedKeySp…...

地名网站建设方案/百度关键词优化软件排名

来源&#xff1a;中国Windows联盟winver---------检查Windows版本wmimgmt.msc----打开windows管理体系结构(WMI)wupdmgr--------windows更新程序wscript--------windows脚本宿主设置write----------写字板winmsd---------系统信息wiaacmgr-------扫描仪和照相机向导winchat----…...

北京网站建设的价格天/天津seo排名扣费

使用 vite 搭建一个 vue3 的一个typescript的项目。 配置路由的添加路由界面的时候&#xff0c;报错&#xff1a;找不到指定的文件&#xff0c;提示错误如下图&#xff1a; 但是&#xff0c;如果将换成 ../就正常了&#xff0c;如下: 解决方法&#xff1a; 安装一个path的…...

网站内容编辑怎么做/网络营销工具和方法

国际厂商IBM、BEA仍然以强大的综合实力占据了中间件行业的领导位置。另外从实践SOA角度而言&#xff0c;SAP、普元、金碟位于强调产品创新的创新者象限&#xff0c;成为中间件行业变革的生力军。最近&#xff0c;易观国际发布了《中国中间件厂商实力矩阵专题报告》&#xff0c;…...

大连培训通网站建设/怎么做网络营销平台

1.ASP.NET运行原理概述 如上图&#xff0c;当一个http请求发送过来并被IIS机收到之后,IIS首先通过你请求的页面类型为其加载相应的dll文件&#xff0c;然后在处理过程中将这条请求发送给能够处理这条请求的模块,而在ASP.NET中这个模块就叫做HttpHandler,为什么aspx这样的文件可…...

做的比较好的二手交易网站有哪些/网站建设公司排名

效果&#xff1a; 就是点击分享&#xff0c;从右边拉出一个div&#xff0c;再次点击回去。功能很简单。 步骤&#xff1a; 1.引入jquery。 <script src"jquery/jquery-3.1.0.min.js"></script> 2.创建按钮和div。 <button class"buts">分…...