Hadoop3完全分布式搭建
一、第一台的操作搭建
修改主机名
使用hostnamectl set-hostname 修改当前主机名
关闭防火墙和SELlinux
1,使用
systemctl stop firewalld
systemctl disable firewalld
关闭防火墙
2,使用
vim /etc/selinux/config
修改为 SELINUX=disabled
使用NAT模式配置静态IP
1,修改网络配置
vim /etc/sysconfig/network-scripts/ifcfg-ens33
修改如下三项内容:
BOOTPROTO=static
ONBOOT=yes
IPADDR=自己想要设置的IP。这个ip参考vmware的虚拟网络编辑器的vmnet8的IP地址进行设置。
2,重启网络。
二、克隆虚拟机
克隆虚拟机
1,克隆
2,
3,
修改克隆后的虚拟机的静态IP
修改IP为192.168.248.102. 同理第三台虚拟机同样的修改。
可以修改一下hadoop02,hadoop03的主机名
使用hostnamectl set-hostname 修改当前主机名
三、主机映射
为后面的hadoop的核心配置文件做准备的。
vim /etc/hosts
因为配置三个集群节点。所以如下配置。
在另外两台节点,也修改上面的文件vim /etc/hosts
四、设置免密登录
管理集群不可能每个都要输入账号密码进行登录,那可太费劲了。
所以需要借助公钥、私钥免密登录
1,在第一台节点上,使用 ssh-keygen -t rsa 生成公钥私钥
2,使用ssh-copy-id 目标节点。拷贝到这三台节点上
(1)先拷贝给自己。 先拷贝到hadoop01, 然后会要求输入当前节点的登录密码。
(2)拷贝到hadoop02
(3)拷贝到hadoop03
3,在hadoop02, hadoop03 两个节点上,重复上面的1和2步骤
五、集群时间同步
一种是从节点同步主节点的时间。
一种是所有节点同步网络时间。
这里让所有节点同步网络时间
1,在3台节点上都执行如下命令
crontab -e
2,然后输入如下内容:
* * * * * /usr/sbin/ntpdate -u ntp.aliyun.com >/var/null 2>&1
六、在第一台虚拟机上安装配置jdk和hadoop
参考:https://blog.csdn.net/qq_45860901/article/details/135676494?spm=1001.2014.3001.5502
七、配置hadoop配置文件
1,切换到hadoop的home 目录下。
2,切到etc目录下, 里面只有一个hadoop文件夹
3,进入到这个hadoop文件夹,就有我们的核心配置文件了。
4,修改配置core-site.xml 文件
注意端口:在hadoop1.x 使用9000端口
hadoop2.x使用8020
hadoop3.x使用9820
<configuration><property><name>fs.defaultFS</name><value>hdfs://192.168.248.101:9820</value></property><!--hdfs基础数据路径,放在hadoop文件夹下的tmp文件夹,这个文件不需要提前创建,让hadoop自己创建--></configuration>
5,修改hdfs-site.xml
对外http服务的地址
<configuration><property><name>dfs.replication</name><value>2</value></property><property><name>dfs.namenode.secondary.http-address</name><value>192.168.248.102:9868</value></property><property><name>dfs.namenode.http-address</name><value>192.168.248.101:9870</value></property><!--namenode守护进程运行数据路径--><property><name>dfs.namenode.name.dir</name><value>/usr/local/app/hadoop/hadoop-3.3.5/tmp/name</value></property><!--datanode守护进程运行数据路径--><property><name>dfs.datanode.data.dir</name><value>/usr/local/app/hadoop/hadoop-3.3.5/tmp/data</value></property></configuration>
6,修改hadoop-env.sh 文件
配置hadoop允许的配置
export JAVA_HOME=/usr/local/app/java/jdk8
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
7,配置workers 集群文件。 这个是指定datanode 在哪些节点上,因为要在三台节点上都要配置Datanode,所以都要写。 里面会有一个localhost ,要去掉。
hadoop01
hadoop02
hadoop03
拷贝
为了避免再去多个主机上进行上面的配置操作,使用scp 命令拷贝分发。
1,拷贝hadoop和Jdk文件分发给其他节点.
(1)下面命令是递归的将hadoop-3.3.5文件夹,拷贝到hadoop02的当前目录下,当前目录就是在hadoop01同级的目录下。
scp -r hadoop-3.3.5/ hadoop02:$PWD
(2)hadoop03也执行上面操作。
2, 拷贝 /etc/profile 给其他节点
(1)将 profile 文件,拷贝到 hadoop02的 /etc目录下。
scp /etc/profile hadoop02:/etc/
(2)hadoop03也执行上面操作。
格式化集群
在 hadoop01节点上执行下面的命令:hdfs namenode -format
得到如下结果:
启动集群
执行:start-dfs.sh
使用JPS命令查看所有运行的java程序:
访问hadoop的web界面
http://192.168.248.101:9870
成功进入:
界面介绍
1,Datanode相关界面负载信息
2,这个查看 HDFS的相关信息
如果重启后没有Datanode节点
先停止集群:stop-all.sh
如果按照上面配置代码,则把/usr/local/app/hadoop/hadoop-3.3.5/tmp 文件夹彻底清空删除。
然后再重新格式化:hdfs namenode -format
然后再启动。
相关文章:

Hadoop3完全分布式搭建
一、第一台的操作搭建 修改主机名 使用hostnamectl set-hostname 修改当前主机名 关闭防火墙和SELlinux 1,使用 systemctl stop firewalld systemctl disable firewalld 关闭防火墙 2,使用 vim /etc/selinux/config 修改为 SELINUXdisabled 使用N…...

中断——外部中断EXIT
前期疑问:中断可以分成外部中断和内部中断吗 文章目录 前言一、中断知识二、中断编程三、EXIT外部中断/事件控制器 3.1 中断事件线3.2 EXTI初始化结构体详解 四、软件设计 4.1 编程要点 五、代码回顾实现六、补充中断知识总结 前言 野火中断章节有这样一句话 【F…...

Kafka-服务端-副本机制
Kafka从0.8版本开始引入副本(Replica)的机制,其目的是为了增加Kafka集群的高可用性。 Kafka实现副本机制之后,每个分区可以有多个副本,并且会从其副本集合(Assigned Replica,AR)中选出一个副本作为Leader副本,所有的读写请求都由…...

银行数据仓库体系实践(4)--数据抽取和加载
1、ETL和ELT ETL是Extract、Transfrom、Load即抽取、转换、加载三个英文单词首字母的集合: E:抽取,从源系统(Souce)获取数据; T:转换,将源系统获取的数据进行处理加工,比如数据格式转化、数据精…...

云计算入门——Linux 命令行入门
云计算入门——Linux 命令行入门 前些天发现了一个人工智能学习网站,通俗易懂,风趣幽默,最重要的屌图甚多,忍不住分享一下给大家。点击跳转到网站。 介绍 如今,我们许多人都熟悉计算机(台式机和笔记本电…...
自然语言处理(NLP)的发展
自然语言处理的发展 随着深度学习和大数据技术的进步,自然语言处理取得了显著的进步。人们正在研究如何使计算机更好地理解和生成人类语言,以及如何应用NLP技术改善搜索引擎、语音助手、机器翻译等领域。 方向一:技术进步 自然语言处理&…...

让uniapp小程序支持多色图标icon:iconfont-tools-cli
前景: uniapp开发小程序项目时,对于iconfont多色图标无法直接支持;若将多色icon下载引入项目则必须关注包体,若将图标放在oss或者哪里管理,加载又是一个问题,因此大多采用iconfont-tools工具,但…...
丹麦公司注册优势 丹麦公司注册条件 丹麦公司注册注意事项
丹麦公司注册优势 1、开-放的商业环境,拥有公平透明的商业法律和制度。 2、简化的注册流程,无需繁琐的审批程序和复杂的材料准备。 3、全球认可的声誉,有助于提升贵公司的国际形象。 4、该国的政-府在坚持适度紧缩的财政政策,…...

C++PythonC# 三语言OpenCV从零开发(4):视频流读取
文章目录 相关链接视频流读取CCSharpPython 总结 相关链接 C&Python&Csharp in OpenCV 专栏 【2022B站最好的OpenCV课程推荐】OpenCV从入门到实战 全套课程(附带课程课件资料课件笔记) OpenCV 教程中文文档|OpenCV中文 OpenCV教程中文文档|W3Csc…...

vue element MessageBox.prompt this.$prompt组件禁止显示右上角关闭按钮,取消按钮,及点击遮罩层关闭
vue element MessageBox.prompt this.$prompt组件禁止或取消显示右上角关闭按钮,取消按钮,及点击遮罩层关闭 实现效果: 实现代码 MessageBox.prompt(请先完成手机号绑定, 系统提示, {confirmButtonText: 提 交,showClose: false,closeOnClic…...
Oracle 日常健康脚本
文章目录 摘要常用脚本 摘要 保持 Oracle 数据库的良好健康状况对于系统的可靠性和性能至关重要。本文将介绍一些常用的 Oracle 日常健康脚本,帮助您监控数据库并及时识别潜在的问题,以保证数据库的稳定运行。 常用脚本 1.查询数据库实例和实例级别的…...
leetcode670最大交换
给定一个非负整数,你至多可以交换一次数字中的任意两位。返回你能得到的最大值。 示例 1 : 输入: 2736 输出: 7236 解释: 交换数字2和数字7。 示例 2 : 输入: 9973 输出: 9973 解释: 不需要交换。 注意: 给定数字的范围是 [0, 108] int maximumSwap(int num) {…...
XML 注入漏洞原理以及修复方法
漏洞名称:XML注入 漏洞描述:可扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具 有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XM…...

x-cmd pkg | dasel - JSON、YAML、TOML、XML、CSV 数据的查询和修改工具
目录 简介首次用户快速实验指南基本功能性能特点竞品进一步探索 简介 dasel,是数据(data)和 选择器(selector)的简写,该工具使用选择器查询和修改数据结构。 支持 JSON,YAML,TOML&…...
Oracle 19c RAC集群管理 ---------关键参数以及常用命令
Oracle 19c RAC集群管理 ---------关键参数 Oracle 19C RAC 参数最佳实践 --开启强制归档 ALTER DATABASE FORCE LOGGING; --设置 30分钟 强制归档 ALTER SYSTEM SET ARCHIVE_LAG_TARGET1800 SCOPEBOTH SID*; --设置期望undo保持时间3h ALTER SYSTEM SET UNDO_RETENTION21600…...

时限挑战——深度解析Pytest插件 pytest-timeout
在软件开发中,测试用例的执行时间通常是一个关键考虑因素。Pytest插件 pytest-timeout 提供了一个强大的插件,允许你设置测试用例的超时时间。本文将深入介绍 pytest-timeout 插件的基本用法和实际案例,助你精确掌控测试用例的执行时限。 什么…...
Java入门篇:打造你的Java开发环境——从零开始配置IDEA与Eclipse
引言 “工欲善其事,必先利其器” 作为每一位Java初学者的必经之路,搭建合适的开发环境是至关重要的第一步。本篇将详细指导你如何安装并配置两大主流Java开发工具——IntelliJ IDEA和Eclipse,助你在编程之旅上迈出坚实的第一步。 一、Java开发环境准备 1. 下载并安装Java D…...

文本批量处理大师:简化文本处理,释放无限生产力!
在数字化时代,我们每天都要处理大量的文本数据,无论是办公文档、网页内容还是社交媒体帖子。然而,面对海量的信息,传统的一键式操作已经无法满足我们的需求。我们需要一个更高效、更智能的工具来提升我们的工作效率。今天…...
Go 方法
第 1 章 方法 Go 语言也支持面向对象的思想;所谓面向对象编程:1对象就是简单的一个值或者变量,并且拥有其方法2方法是某种特定类型的函数3 面向对象编程就是使用方法来描述每个数据结构的属性和操作; 使用者不需要了解对象本身的…...

深度学习与大数据在自然语言处理中的应用与进展
引言 在当今社会,深度学习和大数据技术的快速发展为自然语言处理(NLP)领域带来了显著的进步。这种技术能够使计算机更好地理解和生成人类语言,从而推动了搜索引擎、语音助手、机器翻译等领域的创新和改进。 NLP的发展与技术进步…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...

智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...

现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...

让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
uniapp中使用aixos 报错
问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...

mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...