Hadoop----高可用搭建

目录标题

    • **什么是高可用?**
    • **⭐搭建的步骤**
    • 一.`jdk`**安装配置**
      • - **要点**:
    • 二.`zookeeper`**集群配置**
      • - **要点**
    • 三.`Hadoop`高可用的搭建
      • - **要点**
        • ①环境变量的配置
        • ②配置文件的修改
      • ③内容分发
      • ④集群任务的初次启动

什么是高可用?

通过冗余设计 + 自动恢复机制,显著降低因单点故障导致的服务中断概率(如NameNode停机从小时级恢复缩短至分钟级),使系统具备“高持续服务能力”

⭐搭建的步骤

①安装好jdk并配置好环境变量

②安装好zookeeper并完成zookeeper的集群设置,且成功启动
(成功启动的意思为,可以显示出哪台机子为leader,哪台机子为follower

③安装好Hadoop,配置好环境变量,完成Hadoop的高可用配置

一.jdk安装配置

- 要点:

解压命令
tar -rf … …
配置环境变量并启用

配置内容为
在这里插入图片描述
启用为
source /etc/profile

二.zookeeper集群配置

且看前文《zookeeper----初步了解与安装》

- 要点

①关闭集群虚拟机的防火墙
myid的配置与zoo.cfg内的编号要完全对应
zoo.cfg内的编号配置的符号
防火墙的关闭

三.Hadoop高可用的搭建

- 要点

①环境变量的配置

在这里插入图片描述
(配置好后,记得source

②配置文件的修改
  • 文件的位置
    Hadoop中的 etc/hadoop/

⭐四个文件+workers+hadoop-env.sh

在这里插入图片描述
⭐workers为虚拟机名字根据自身名字加入
在这里插入图片描述
文件一

  • core-site.xml
    在这里插入图片描述

文件二

  • hdfs-site.xml
    在这里插入图片描述

文件三

  • mapred-site.xml
    在这里插入图片描述

文件四

  • yarn-site.xml
    在这里插入图片描述

③内容分发

在这里插入图片描述
将一台机子配置好的hadoop分发给集群其他虚拟机
scp -r 文件 虚拟机名:位置

以及环境变量分发

(先确保集群内每台机子的jdk都拥有,且设置好了环境变量)

④集群任务的初次启动

在这里插入图片描述
⭐注:除了zookeeper打开关闭命令,在zookeeper中执行,其他都在hadoop内执行

  1. 启动初期,先将虚拟机的zookeeper集群打开
    bin/zkServer.sh start

  2. 将集群每一台的journalnode初始化开启
    bin/hdfs --daemon start journalnode

  3. 只在任意一台机子进行namenode初始化且开启(查看是否初始化正确)

初始化命令
bin/hdfs namenode - format

开启命令
bin/hdfs --daemon start namenode

  1. namenode信息同步给另外两台机
    命令如上图(两种方式)

  2. 将所有启动的进程关闭以及zookeeper集群

  3. 重启zookeeper集群

  4. 在任意一台虚拟机初始化zkfc
    bin/hdfs zkfc -formatZK

  5. 启动hdfs以及yarn进程
    (最好在初始化namenode的虚拟机上执行)
    命令如上图

⭐注意
要想关闭某个进程或zookeeper集群

start换成stop即可

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

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

相关文章

【Rust 精进之路之第15篇-枚举 Enum】定义、变体与数据关联:表达多种可能性

系列: Rust 精进之路:构建可靠、高效软件的底层逻辑 作者: 码觉客 发布日期: 2025年4月20日 引言:当值拥有“选项”——超越结构体的表达力 在上一篇【结构体 Struct】中,我们学习了如何使用结构体将多个相关的数据字段组合成一个有意义的整体。结构体非常适合表示那些…

模拟实现strncat、qsort、atoi

目录 前言 一、模拟实现strncat 参数 代码演示: 二、模拟实现qsort 参数 代码演示: 前言 本文主要是对strncat,qsort,atoi的模拟实现 一、模拟实现strncat C 库函数 char *strncat(char *dest, const char *src, size_t n…

Ubuntu 系统中修改 MySQL 的 sql_mode

在 Ubuntu 系统中修改 MySQL 的 sql_mode 需要编辑 MySQL 的配置文件并重启服务。以下是详细步骤: 步骤 1:定位 MySQL 配置文件 MySQL 配置文件通常位于以下路径之一(具体取决于安装方式): /etc/mysql/my.cnf /etc/m…

进阶算法 第一课:贪心

本文遵循 CC BY-NC-ND 4.0 协议,作者: U•ェ•*U \texttt{U•ェ•*U} U•ェ•*U,转载请获得作者授权。 欢迎大家来到进阶算法第一课:贪心;我会分为以下几点为大家讲解贪心: 什么是贪心。贪心的性质与分类。…

AI领域:MCP 与 A2A 协议的关系

一、为何会出现MCP和A2A 协议是非常重要的东西,只有大家都遵循统一的协议,整体生态才好发展,正如有了HTML,互联网才快速发展,有了OpenAPI, API才会快速发展。 Agent目前是发展最快的领域,从最初…

深度学习训练中的显存溢出问题分析与优化:以UNet图像去噪为例

最近在训练一个基于 Tiny-UNet 的图像去噪模型时,我遇到了经典但棘手的错误: RuntimeError: CUDA out of memory。本文记录了我如何从复现、分析,到逐步优化并成功解决该问题的全过程,希望对深度学习开发者有所借鉴。 训练数据&am…

FramePack V2版 - 支持首尾帧生成,支持LoRA,支持批量,支持50系显卡,一个强大的AI视频生成软件 本地一键整合包下载

FramePack 是斯坦福大学主导开发的视频生成框架,是一种用于视频生成的下一帧(下一帧部分)预测神经网络结构,可以逐步生成视频。FramePack 主要开发者之一,就是业内大名鼎鼎的张吕敏大佬,AI领域的“赛博佛祖…

STM32 HAL 通用定时器延时函数

使用通用定时器TIM3,实现ms、us延时。 delay.c #include "delay.h" #include "stm32f1xx_hal.h"TIM_HandleTypeDef htim3;/*** brief 初始化定时器3用于延时* param 无* retval 无*/ void Delay_Init(void) {TIM_ClockConfigTypeDef sClock…

软件功能测试和非功能测试有什么区别和联系?

软件测试是保障软件质量的核心环节,而软件功能测试和非功能测试作为测试领域的两大重要组成部分,承担着不同但又相互关联的职责。 软件功能测试指的是通过验证软件系统的各项功能是否按照需求规格说明书来正确实现,确保软件的功能和业务流程…

使用Java调用TensorFlow与PyTorch模型:DJL框架的应用探索

在现代机器学习的应用场景中,Python早已成为广泛使用的语言,尤其是在深度学习框架TensorFlow和PyTorch的开发和应用中。尽管Java在许多企业级应用中占据一席之地,但因为缺乏直接使用深度学习框架的能力,往往使得Java开发者对机器学…

Docker安装beef-xss

新版的kali系统中安装了beef-xss会因为环境问题而无法启动,可以使用Docker来安装beef-xss,节省很多时间。 安装步骤 1.启动kali虚拟机,打开终端,切换到root用户,然后执行下面的命令下载beef的docker镜像 wget https:…

metasploit(2)生成dll木马

声明!本文章所有的工具分享仅仅只是供大家学习交流为主,切勿用于非法用途,如有任何触犯法律的行为,均与本人及团队无关!!! 一、dll文件基本概念 DLL 是一种包含可由多个程序同时使用的代码和数…

5V 1A充电标准的由来与技术演进——从USB诞生到智能手机时代的电力革命

点击下面图片带您领略全新的嵌入式学习路线 🔥爆款热榜 88万阅读 1.6万收藏 一、起源:USB标准与早期电力传输需求 1. USB的诞生背景 1996年,由英特尔、微软、IBM等公司组成的USB-IF(USB Implementers Forum)发布了…

使用Python设置excel单元格的字体(font值)

一、前言 通过使用Python的openpyxl库,来操作excel单元格,设置单元格的字体,也就是font值。 把学习的过程分享给大家。大佬勿喷! 二、程序展示 1、新建excel import openpyxl from openpyxl.styles import Font wb openpyxl.…

【设计模式】深入解析代理模式(委托模式):代理模式思想、静态模式和动态模式定义与区别、静态代理模式代码实现

代理模式 代理模式,也叫委托模式。 Spring AOP 是基于动态代理来实现 AOP 的 定义 为其他对象提供一种代理 以控制对这个对象的访问。它的作用就是通过提供一个代理类,让我们在调用目标方法的时候,不再是直接对目标方法进行调用,而…

利用java语言,怎样开发和利用各种开源库和内部/自定义框架,实现“提取-转换-加载”(ETL)流程的自动化

一、ETL 架构设计的核心要素​ 在企业级数据处理场景中,ETL(Extract-Transform-Load)流程自动化是数据仓库、数据湖建设的核心环节。基于 Java 生态的技术栈,我们可以构建分层解耦的 ETL 架构,主要包含以下四层结构&am…

2023蓝帽杯初赛内存取证-8

也是用到pslist模块,加上grep过滤”chrome“即可: vol.py --plugin/opt/volatility/plugins -f memdump.mem --profile Win7SP1x64 pslist | grep "chrome" 第一个是PID,第二个是PPID,第三个是线程数,第四个…

【C语言】动态内存的常见错误

前言&#xff1a; 在上章节中讲解了动态内存的概念和管理的核心函数。 在本章节继续为大家介绍动态内存的常见错误&#xff0c;让大家更好的理解运用。 补充&#xff1a;使用内存函数需要头文件<stdlib.h> 对NULL指针的解引用操作 当使用malloc、calloc或realloc等函…

uniapp-x 二维码生成

支持X&#xff0c;二维码生成&#xff0c;支持微信小程序&#xff0c;android&#xff0c;ios&#xff0c;网页 - DCloud 插件市场 免费的单纯用爱发电的

Linux内核之文件驱动随笔

前言 近期需要实现linux系统文件防护功能&#xff0c;故此调研了些许知识&#xff0c;如何实现文件防护功能从而实现针对文件目录防护功能。当被保护的目录&#xff0c;禁止增删改操作。通过内核层面实现相关功能&#xff0c;另外在通过跟应用层面交互从而实现具体的业务功能。…