文章目录

  • 1. 采用软件较新版本
  • 2. 准备三台虚拟机
  • 3. 搭建Hadoop集群
    • 3.1 在主节点上配置Hadoop
    • 3.1.1 编辑映射文件
      • 3.1.2 配置免密登录
      • 3.1.3 配置JDK
      • 3.1.4 配置Hadoop
    • 3.2 从主节点分发到从节点
    • 3.3 格式化名称节点
    • 3.4 启动Hadoop集群
    • 3.5 使用Hadoop WebUI
    • 3.6 运行MR应用:词频统计
    • 3.7 关闭Hadoop集群
  • 4. 搭建Hive集群
  • 5. 搭建Spark集群
  • 6. 搭建HBase集群
  • 7. 搭建Flink集群
  • 8. 安装配置Flume
  • 9. 安装配置Kafka

1. 采用软件较新版本

  • 通过搭建集群,测试其兼容性
    在这里插入图片描述

2. 准备三台虚拟机

  • 主机名与IP地址
主机名IP 地址
master192.168.1.101
slave1192.168.1.102
slave2192.168.1.103
  • 三台虚拟机已经关闭与禁用防火墙,关闭selinux安全机制
  • FinalShell远程连接三台虚拟机
    在这里插入图片描述

3. 搭建Hadoop集群

3.1 在主节点上配置Hadoop

3.1.1 编辑映射文件

  • 执行命令:vim /etc/hosts
    在这里插入图片描述
  • 注意:IP地址与主机名之间只有一个半角空格

3.1.2 配置免密登录

  1. 生成RSA密钥对

    • 执行命令:ssh-keygen
      在这里插入图片描述
    • 执行命令后,连续敲3次回车,生成节点的公钥和私钥,生成的密钥文件id_rsa会自动放在/root/.ssh目录下。
    • 查看生成的密钥对
      • 私钥:id_rsa
      • 公钥:id_rsa.pub
    • 执行命令:ll /root/.ssh
      在这里插入图片描述
  2. 分发公钥

    • 发送给master虚拟机
      • 执行命令:ssh-copy-id root@master
        在这里插入图片描述
    • 发送给slave1虚拟机
      • 执行命令:ssh-copy-id root@slave1
        在这里插入图片描述
    • 发送给slave2虚拟机
      • 执行命令:ssh-copy-id root@slave2
        在这里插入图片描述
  3. 验证免密登录

    • 免密登录master虚拟机

      • 执行命令:ssh master
        在这里插入图片描述
    • 免密登录slave1虚拟机

      • 执行命令:ssh slave1
        在这里插入图片描述
    • 免密登录slave2虚拟机

      • 执行命令:ssh slave2
        在这里插入图片描述
  4. 查看密钥对目录

    • 执行命令:ll /root/.ssh
      在这里插入图片描述

    • 执行命令:cat /root/.ssh/authorized_keys,查看授权密钥
      在这里插入图片描述

    • 执行命令:cat /root/.ssh/known_hosts,查看已知主机
      在这里插入图片描述

3.1.3 配置JDK

  1. 上传安装包

    • 进入/opt目录

      • 执行命令:cd /opt
        在这里插入图片描述
    • 上传jdk安装包

      • 上传jdk安装包到/opt目录
        在这里插入图片描述
    • 查看jdk安装包

      • 执行命令:ll jdk-11.0.28_linux-x64_bin.tar.gz
        在这里插入图片描述
  2. 解压缩安装包

    • 解压缩

      • 执行命令:tar -zxvf jdk-11.0.28_linux-x64_bin.tar.gz -C /usr/local
        在这里插入图片描述
    • 查看解压目录

      • 执行命令:ll /usr/local/jdk-11.0.28
        在这里插入图片描述
  3. 配置环境变量

    • 执行命令:vim /etc/profile
      在这里插入图片描述

      export JAVA_HOME=/usr/local/jdk1.8.0_231
      export PATH=$JAVA_HOME/bin:$PATH
      export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
      

      说明:设置CLASSPATH时,注意等号后有一个“.”,表示之前定义的类路径

    • 存盘退出,执行命令:source /etc/profile,让配置生效
      在这里插入图片描述

  4. 查看JDK版本

    • 执行命令:java -version
      在这里插入图片描述

3.1.4 配置Hadoop

  1. 上传安装包

    • 上传安装包

      • 上传hadoop安装包:上传安装包到/opt目录
        在这里插入图片描述
    • 查看上传的hadoop安装包

      • 执行命令:ll hadoop-3.4.1.tar.gz
        在这里插入图片描述
  2. 解压缩安装包

    • 执行解压命令
      • 执行命令:tar -zxvf hadoop-3.4.1.tar.gz -C /usr/local
        在这里插入图片描述
    • 查看解压后的目录
      • 执行命令:ll /usr/local/hadoop-3.4.1
        在这里插入图片描述
    • 重要目录
      • bin:包含一些操作Hadoop集群的可执行文件
      • etc/hadoop:包含Hadoop的各种配置文件
      • sbin:主要存放管理Hadoop集群的系统级脚本
  3. 配置环境变量

    • 配置
      • 执行命令:vim /etc/profile
        在这里插入图片描述
        export HADOOP_HOME=/usr/local/hadoop-3.4.1
        export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
        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
        
    • 生效
      • 执行命令:source /etc/profile,让配置生效
        在这里插入图片描述
    • 查看版本
      • 执行命令:hadoop version
        在这里插入图片描述
  4. 编辑Hadoop环境配置文件

    • 进入配置目录
      • 执行命令:cd $HADOOP_HOME/etc/hadoop
        在这里插入图片描述
    • 编辑配置文件
      • 执行命令:vim hadoop-env.sh
        在这里插入图片描述

        export JAVA_HOME=/usr/local/jdk-11.0.28
        export HADOOP_HOME=/usr/local/hadoop-3.4.1
        export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
        
    • 让配置生效
      • 执行命令:source hadoop-env.sh
        在这里插入图片描述
  5. 编辑Hadoop核心配置文件

    • 执行命令:vim core-site.xml
      在这里插入图片描述

      <configuration><!--指定HDFS的老大--><property><name>fs.defaultFS</name><value>hdfs://master:9000</value></property><!--指定Hadoop运行时文件临时存放目录--><property><name>hadoop.tmp.dir</name><value>/usr/local/hadoop-3.4.1/tmp</value></property>
      </configuration>
      
  6. 编辑HDFS配置文件

    • 执行命令:vim hdfs-site.xml
      在这里插入图片描述

      <configuration><!--设置名称节点目录--><property><name>dfs.namenode.dir</name><value>/usr/local/hadoop-3.4.1/tmp/namenode</value></property><!--设置数据节点目录--><property><name>dfs.datanode.dir</name><value>/usr/local/hadoop-3.4.1/tmp/datanode</value></property><!--设置辅助名称节点--><property><name>dfs.namenode.secondary.http-address</name><value>master:50090</value></property><!--设置HDFS的Web访问端口-->  <property><name>dfs.namenode.http-address</name><value>0.0.0.0:9870</value></property><!--设置副本数量,默认是3--><property><name>dfs.replication</name><value>3</value></property><!--设置HDFS访问权限检查,false表示关闭--><property><name>dfs.permissions.enabled</name><value>false</value></property>
      </configuration>
      
  7. 编辑MapReduce配置文件

    • 执行命令:vim mapred-site.xml
      在这里插入图片描述

      <configuration><!-- 配置MR资源调度管理器YARN --><property><name>mapreduce.framework.name</name><value>yarn</value></property><!-- 设置MapReduce Application Master的环境变量 --><property><name>yarn.app.mapreduce.am.env</name><value>HADOOP_MAPRED_HOME=/usr/local/hadoop-3.4.1</value></property><!-- 设置Map任务的环境变量 --><property><name>mapreduce.map.env</name><value>HADOOP_MAPRED_HOME=/usr/local/hadoop-3.4.1</value></property><!-- 设置Reduce任务的环境变量 --><property><name>mapreduce.reduce.env</name><value>HADOOP_MAPRED_HOME=/usr/local/hadoop-3.4.1</value></property>
      </configuration>
      
  8. 编辑YARN配置文件

    • 执行命令:vim yarn-site.xml
      在这里插入图片描述

      <configuration><!--配置资源管理器的主机名--><property><name>yarn.resourcemanager.hostname</name><value>master</value></property><!--配置节点管理器的附加服务--><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!--关闭虚拟内存检测--><property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value></property>
      </configuration>
      
  9. 编辑数据节点文件

    • 执行命令:vim workers
      在这里插入图片描述
    • 三台虚拟机上都有数据节点(DataNode)

3.2 从主节点分发到从节点

  1. 从master节点分发到slave1节点
    • 分发JDK

      • 执行命令:scp -r $JAVA_HOME root@slave1:$JAVA_HOME
        在这里插入图片描述
      • 在slave1节点上查看拷贝的JDK目录
        在这里插入图片描述
    • 分发Hadoop

      • 执行命令:scp -r $HADOOP_HOME root@slave1:$HADOOP_HOME
        在这里插入图片描述

      • 在slave1节点上查看拷贝的hadoop目录
        在这里插入图片描述

    • 分发环境配置文件

      • 执行命令:scp /etc/profile root@slave1:/etc/profile
        在这里插入图片描述
    • 刷新环境配置文件

      • 在slave1节点上执行命令:source /etc/profile
        在这里插入图片描述
    • 查看jdk和hadoop版本

      • 在slave1节点上执行命令:java -version
        在这里插入图片描述

      • 在slave1节点上执行命令:hadoop version
        在这里插入图片描述

    • 分发映射文件

      • 执行命令:scp /etc/hosts root@slave1:/etc/hosts
        在这里插入图片描述
  2. 从master节点分发到slave2节点
    • 分发JDK

      • 执行命令:scp -r $JAVA_HOME root@slave2:$JAVA_HOME
        在这里插入图片描述
      • 在slave2节点上查看拷贝的JDK目录
        在这里插入图片描述
    • 分发Hadoop

      • 执行命令:scp -r $HADOOP_HOME root@slave2:$HADOOP_HOME
        在这里插入图片描述

      • 在slave2节点上查看拷贝的hadoop目录
        在这里插入图片描述

    • 分发环境配置文件

      • 执行命令:scp /etc/profile root@slave2:/etc/profile
        在这里插入图片描述
    • 刷新环境配置文件

      • 在slave2节点上执行命令:source /etc/profile
        在这里插入图片描述
    • 查看jdk和hadoop版本

      • 在slave2节点上执行命令:java -version
        在这里插入图片描述

      • 在slave2节点上执行命令:hadoop version
        在这里插入图片描述

    • 分发映射文件

      • 执行命令:scp /etc/hosts root@slave2:/etc/hosts
        在这里插入图片描述

3.3 格式化名称节点

  • 执行命令:hdfs namenode -format
    在这里插入图片描述
    在这里插入图片描述
  • 格式化成功信息:2025-09-05 04:56:23,324 INFO common.Storage: Storage directory /usr/local/hadoop-3.4.1/tmp/dfs/name has been successfully formatted.

3.4 启动Hadoop集群

  1. 启动服务

    • 执行命令:start-all.sh
      在这里插入图片描述
  2. 查看进程

    • 执行命令:jps
      在这里插入图片描述
  3. 简单说明

    • start-dfs.sh
      • NameNode
      • SecondaryNameNode
      • DataNode
    • start-yarn.sh
      • ResourceManager
      • NodeManager

3.5 使用Hadoop WebUI

  1. 查看HDFS集群状态

    • 端口号说明

      • hadoop2.x的端口号是50070,hadoop3.x的端口号是9870
    • 用主机名访问

      • 访问http://master:9870 在这里插入图片描述
      • 主节点状态:active
    • 用IP地址访问

      • 使用master主机的IP地址来访问,查看本机映射文件
        在这里插入图片描述

      • 访问http://192.168.219.83:9870
        在这里插入图片描述

    • 查看数据节点

      • 单击绿色导航栏上的【Datanodes】选项卡
        在这里插入图片描述
  2. 查看YARN集群状态

    • 在浏览器里查看http://master:8088
      在这里插入图片描述
    • 目前没有运行过的MR应用,因此表格里没有任何数据

3.6 运行MR应用:词频统计

  1. 在master虚拟机上准备数据文件

    • 执行命令:vim test.txt
      在这里插入图片描述
  2. 文件上传到HDFS指定目录

    • 创建HDFS目录

      • 执行命令:hdfs dfs -mkdir -p /wordcount/input
        在这里插入图片描述
    • 上传文件到HDFS

      • 执行命令:hdfs dfs -put test.txt /wordcount/input
        在这里插入图片描述
    • 查看上传的文件

      • 执行命令:hdfs dfs -ls /wordcount/input,查看文件信息
        在这里插入图片描述

      • 利用Hadoop WebUI查看
        在这里插入图片描述

      • 执行命令:hdfs dfs -cat /wordcount/input/test.txt,查看文件内容
        在这里插入图片描述

  3. 运行词频统计程序的jar包

    • 查看Hadoop自带示例jar包

      • 执行命令:cd $HADOOP_HOME/share/hadoop/mapreduce,切换到MR示例目录
        在这里插入图片描述
      • 执行命令:ls,列表显示目录信息
        在这里插入图片描述
      • 示例程序jar包:hadoop-mapreduce-examples-3.4.1.jar
    • 运行示例jar包里的词频统计

      • 执行命令:hadoop jar ./hadoop-mapreduce-examples-3.4.1.jar wordcount /wordcount/input/test.txt /wordcount/output
        在这里插入图片描述
        在这里插入图片描述
      • 查看作业号:2025-09-05 05:21:34,131 INFO mapreduce.Job: Running job: job_1757073655981_0001
    • 查看词频统计结果

      • 执行命令:hdfs dfs -ls /wordcount/output,查看结果文件
        在这里插入图片描述

      • 一个是成功标识文件:_SUCCESS,一个结果文件:part-r-00000

      • 利用HDFS的WebUI查看结果文件
        在这里插入图片描述

      • 执行命令:hdfs dfs -cat /wordcount/output/*,查看结果内容
        在这里插入图片描述

  4. 在YARN集群UI界面查看程序运行状态

    • 在浏览器里查看http://master:8088,最终状态是SUCCEEDED
      在这里插入图片描述

3.7 关闭Hadoop集群

  • 关闭Hadoop集群
    • 执行命令:stop-all.sh
      在这里插入图片描述

    • 注意:也可以分开执行

      • stop-dfs.sh:关闭HDFS服务
      • stop-yarn.sh:关闭YARN服务

4. 搭建Hive集群

5. 搭建Spark集群

6. 搭建HBase集群

7. 搭建Flink集群

8. 安装配置Flume

9. 安装配置Kafka

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

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

相关文章

小迪自用web笔记29

PHP刷新是点击刷新之后原来的图片替换掉&#xff0c;换成新的图片。把inhoneJPG给替换掉如果这个图片是由用户可自定义输入的话&#xff0c;可xss漏洞应用。因为这段代码本质逻辑是点击刷新之后。就执行update方法中的代码&#xff0c;而这个方法中存储的是。截取IMG&#xff0…

WPS--专业pj版

下载 下载链接 解压后 安装 默认安装 激活 输入解压后文件中的激活码

Android Framework智能座舱面试题

目录 1.谈一谈你对binder机制的理解?它为什么是Android中最重要的IPC通信方式?与其他IPC(Socket、共享内存)通信方式相比有哪些优势? 2.如果你需要新提供的车载硬件(比如:一个座椅震动马达)提供系统级别支持应该怎么做? 3.你了解Android与QNX共存方案的实现方式吗?他们…

[CISCN2019 华北赛区 Day1 Web1]Dropbox

TRY 首先上传和删除文件抓包&#xff0c;可以发现upload.php和delete.php&#xff0c;只允许上传gif png jpg后缀的文件。但是上传的文件并没有办法访问&#xff0c;不过可以下载&#xff0c;抓包发现下载的时候请求体是文件名&#xff0c;尝试能不能通过路径穿越获取源码&…

网站管理后台

这里套用的模板为 枫雨在线 在宝塔面板左侧选择菜单栏文件 在根目录下找到www文件夹&#xff0c;点击进入wwwroot文件夹&#xff0c;随后能看到域名文件夹&#xff0c;里面有一下初始内容&#xff0c;可以全部删掉&#xff0c;留下 .user.ini 文件 点击上传&#xff0c;将…

一款免费易用且打造的全功能媒体播放器

zyfun[zyplayer]是一款免费易用且打造的全功能媒体播放器, 致力于提供流畅、高效的跨平台娱乐体验。 注意&#xff1a;播放源请自行查询&#xff0c;或者联系博主。 下载&#xff1a;软件下载 在线体验可暂时使用:https://tv.snowytime.cn 密码为123456 &#x1f389; 功能亮点…

【AI产品思路】AI 原型设计工具横评:产品经理视角下的 v0、Bolt 与 Lovable

本文原创作者&#xff1a;姚瑞南 AI-agent 大模型运营专家/音乐人/野生穿搭model&#xff0c;先后任职于美团、猎聘等中大厂AI训练专家和智能运营专家岗&#xff1b;多年人工智能行业智能产品运营及大模型落地经验&#xff0c;拥有AI外呼方向国家专利与PMP项目管理证书。&#…

计算机视觉(九):图像轮廓

在计算机视觉&#xff08;Computer Vision, CV&#xff09;中&#xff0c;图像轮廓&#xff08;Image Contour&#xff09;是图像中物体边界的重要表现形式。它不仅能描述物体的形状特征&#xff0c;还能为目标识别、目标检测、图像分割、场景理解、三维重建等任务提供重要依据…

ThinkPHP 6框架常见错误:htmlentities()函数参数类型问题解决

在ThinkPHP 6框架中&#xff0c;htmlentities() 函数是一个常用的PHP函数&#xff0c;用于将字符转换为HTML实体。这个函数通常在输出内容到浏览器时使用&#xff0c;以防止跨站脚本&#xff08;XSS&#xff09;攻击。然而&#xff0c;在使用过程中可能会遇到参数类型问题。错误…

网络通信 IO 模型学习总结基础强化

网络通信概念网络通信因为要处理复杂的物理信号&#xff0c;错误处理等&#xff0c;所以采用了分层设计。为什么要采用分层设计&#xff1f;1. 每层可以独立开发&#xff0c;测试和替换&#xff1b;2. 发生问题也可以快速定位到具体层次&#xff1b;3. 协议标准化&#xff0c;不…

【ComfyUI】深度 ControlNet 深度信息引导生成

今天给大家演示一个结合 ControlNet 深度信息的 ComfyUI 建筑可视化工作流。整个流程通过引入建筑专用的权重模型和深度控制网络&#xff0c;使得生成的建筑图像不仅具备高质量和超写实的细节&#xff0c;还能精确遵循输入图片的结构特征。在这个案例中&#xff0c;模型加载、文…

Python数据可视化科技图表绘制系列教程(六)

目录 散点图1 散点图2 添加线性回归线的散点图 自定义点形状的散点图 不同样式的散点图 抖动散点图 边际图 边缘为直方图的边际图 边缘为箱线图的边际图 曼哈顿图 【声明】&#xff1a;未经版权人书面许可&#xff0c;任何单位或个人不得以任何形式复制、发行、出租、…

spring AI 的简单使用

1. 引入 Spring 官⽅推出的⾸个稳定版⼈⼯智能(AI)集成框架. 旨在帮助 Java/Spring 开发者更便捷地在企业级应⽤中集成 AI 能⼒ (如⼤语⾔模型、机器学习、向量数据库、图像⽣成等)。 它主要提供了以下功能&#xff1a; • ⽀持主要的AI模型提供商, ⽐如 Anthropic、OpenAI、M…

图像去雾:从暗通道先验到可学习融合——一份可跑的 PyTorch 教程

一、为什么“去雾”依然是好课题&#xff1f; 真实需求大&#xff1a;手机拍照、自动驾驶、遥感、监控都要在恶劣天气下成像。 数据集相对干净&#xff1a;与通用目标检测相比&#xff0c;去雾只有“有雾/无雾”一对图像&#xff0c;标注成本低。 传统与深度并存&#xff1a;…

Ubuntu 22.04.1上安装MySQL 8.0及设置root密码

安装MySQL 8.0 在 Ubuntu 22.04.1 系统需要遵循几个明确的步骤&#xff0c;并在安装过程中配置root密码&#xff0c;以下是详细的过程和相关的注意事项。步骤 1: 更新系统 使用终端更新系统软件包列表以确保所有的包是最新的。sudo apt update sudo apt upgrade步骤 2: 安装MyS…

用 content-visibility 即刻提速:那个被你忽略的 CSS 性能杠杆

我有一支技术全面、经验丰富的小型团队&#xff0c;专注高效交付中等规模外包项目&#xff0c;有需要外包项目的可以联系我&#x1f50d; 引言长页面、信息密集、滚动迟滞&#xff1f;**content-visibility** 这项相对较新的 CSS 属性&#xff0c;允许浏览器跳过视口外元素的渲…

字符串(2)

4.字符串的常见函数代码#include <stdio.h> #include <string.h> int main() {char* str1 "abc";char str2[100] "abc";char str3[5] { q,w,e,r ,\0 };printf("---------------------strlen&#xff08;长度&#xff09;-------------…

案例分享|企微智能会话风控系统:为尚丰盈铝业筑牢沟通安全防线

企微智能会话安全风险分析系统是一款基于企业微信原生集成的高性能处理平台&#xff0c;其核心在于通过智能监测和AI风险识别技术&#xff0c;对员工与内外部客户的聊天内容进行多模态分析&#xff08;涵盖文本、图片、语音、视频、文件等多种形式&#xff09;&#xff0c;利用…

Paimon——官网阅读:配置

配置(Maintenance) 系统表 表特定系统表 表特定系统表包含关于每个表的元数据和信息&#xff0c;例如创建的快照以及正在使用的选项。用户可以通过批量查询来访问系统表。 目前&#xff0c;Flink、Spark、Trino 和 StarRocks 支持查询系统表。 在某些情况下&#xff0c;表…

阿里云对象存储OSS的使用

文章目录注册阿里OSS注册并登录阿里云账号开通对象存储OSS创建Bucket修改权限创建AccessKey全局存储到你的计算机(可以跳过)查看官方文档(可以跳过)SSM使用引入依赖在spring-mvc.xml中加入配置创建上传工具类AliOssUtil响应工具类ResultJSON编写controller编写前端代码使用Elme…