大数据实验2.Hadoop 集群搭建(单机/伪分布式/分布式)

news2024/11/15 12:36:15

实验 Hadoop安装和使用

一、实验目的

  1. 实现hadoop的环境搭建和安装
  2. Hadoop的简单使用;

二、实验平台

  1. 操作系统:Linux(建议Ubuntu16.04或者18.04);
  2. Hadoop版本:3.1.3;
  3. JDK版本:1.8。

安装参考教程:https://dblab.xmu.edu.cn/blog/2441/

三、实验步骤

(一)新建一个用户,用户名自定义,并给新建的用户添加管理员权限,后面的操作均在新建用户下操作

(二)安装准备
(1)SSH服务端安装和免密登录设置

1.1安装SSH服务端

1.2免密登录设置

(2)安装Java环境,在安装目录下,并验证安装是否成功;

(3)切换到任意的非jdk安装目录,使用刚刚的命令,验证java是否可用;

(4)根据jdk安装目录设置JAVA_HOME和PATH环境变量,设置后使其立即生效,然后通过echo命令查看JAVA_HOME和PATH变量的设置是否成功;

(5)切换到任意非jdk安装目录,执行”java –version”命令,对比(2)中的命令,对结果进行对比分析,并解释设置环境变量的意义;

(6)对比分析:

    对比: 比较在设置环境变量前后,java -version命令的执行结果。

    分析: 如果在设置环境变量之前命令失败,而在设置之后成功,这证明了环境变量设置的必要性和有效性。环境变量的设置简化了Java应用程序的运行和开发,因为它们允许Java命令在任何工作目录下被识别和执行。

(7)设置环境变量的意义:

1)、简化命令行操作:通过设置环境变量,用户可以在任何目录下直接运行Java命令,而不需要每次都输入完整的路径。这大大简化了命令行操作,提高了效率。

2)、系统级别的配置:环境变量可以被系统级别的应用程序和服务所使用。例如,某些应用程序可能需要知道Java的安装位置,通过读取JAVA_HOME环境变量,它们可以找到并使用正确的Java版本。

3)、跨平台兼容性:环境变量提供了一种跨平台的配置方式。不同的操作系统可能有不同的路径和配置方式,但通过统一的环境变量,可以在不同的平台上实现相同的配置效果。

4)、版本管理:在多版本Java共存的环境中,通过设置JAVA_HOME环境变量,可以指定特定版本的Java用于编译和运行应用程序。这在需要同时支持多个Java版本的情况下非常有用。

5)、自动化脚本和工具:许多自动化脚本和开发工具依赖于环境变量来确定如何执行任务。例如,构建工具(如Maven或Gradle)会使用JAVA_HOME来确定使用哪个Java版本来编译代码。

6)、安全性:通过控制环境变量,系统管理员可以限制用户对特定资源的访问,或者确保应用程序使用正确的库和资源。

7)、易于维护和更新:如果需要更新Java版本或更改配置,只需更新环境变量的值,而不需要修改每个脚本或应用程序的配置。这样可以减少维护工作量,并确保所有依赖于这些变量的工具和应用程序都能正确地使用新的配置。

总之,设置环境变量是一种有效的配置管理方式,它使得系统配置更加灵活、可维护,并且能够提高开发和运维的效率。

(三)单机安装hadoop
(1)安装hadoop

(2)通过查看安装的hadoop版本信息,验证是否安装成功

(三)伪分布式安装hadoop和配置
(1)配置相关的文件;

(2)初始化分布式文件系统;

(3)使用start-dfs.sh,查看启动的java进程,验证启动是否成功;

(4)终止hadoop运行,使用start-all.sh启动,查看启动的java进程,并和(3)中的结果进行比较分析;

1)、比较分析:

A、使用start-dfs.sh时,只有与HDFS相关的守护进程(NameNode和DataNode)会启动。

 B、使用start-all.sh时,除了HDFS的守护进程,还会启动YARN的ResourceManager和NodeManager,以及MapReduce的JobTracker和TaskTracker(在Hadoop 1.x中)或ResourceManager(在Hadoop 2.x中)。

(5)在Web端查看Hadoop运行情况以及文件系统中的文件目录;

(6)在hadoop存储系统中创建 /temp/dirName,文件夹名字自定义并查看创建是否成功
(7)切换到hadoop中的测试样例文件所在路径,并任选一个样例进行测试;
(8)终止Hadoop的运行,并验证进程结束;

四、总结(问题与收获)

1、遇到的问题:

    SSH服务端安装和免密登录设置:在配置SSH服务端时,我遇到了权限问题,导致无法成功生成SSH密钥。通过查阅文档和咨询同学,我了解到需要使用sudo命令来获取必要的权限。

    Java环境变量配置:在设置JAVA_HOME和PATH环境变量时,我最初没有将它们添加到系统的环境变量中,导致在非JDK安装目录下无法识别Java命令。通过编辑.bashrc文件并重新加载配置,我成功解决了这个问题。

    Hadoop伪分布式配置:在配置Hadoop的伪分布式环境时,我遇到了NameNode和DataNode无法同时启动的问题。经过检查配置文件和日志,我发现是hdfs-site.xml中的配置有误,修正后问题得以解决。

2、收获:

    Linux系统管理技能:通过本次实验,我加深了对Linux系统管理的理解,包括用户管理、服务安装和权限配置等。

    Java环境配置经验:我学会了如何在Linux环境下安装和配置Java环境,以及如何通过环境变量来管理Java版本。

    Hadoop安装与配置:我掌握了Hadoop的单机和伪分布式安装方法,了解了Hadoop各组件的作用和配置要点。

    问题解决能力:在遇到问题时,我学会了如何通过查阅文档、搜索解决方案和与同伴讨论来独立解决问题。

    大数据处理理解:通过本次实验,我对Hadoop和大数据处理有了更深入的认识,为后续的学习和研究打下了基础。

总的来说,通过本次实验,我不仅学习到了Hadoop的安装和使用,还提升了自己的问题解决能力和技术理解。我相信这些技能和经验将对我的未来学习和工作大有裨益。

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

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

相关文章

C#解决方案的各种操作

C#开发编程软件下载安装 C#开发编程软件下载安装_c#下载安装-CSDN博客文章浏览阅读208次。。。。_c#下载安装https://rxxw-control.blog.csdn.net/article/details/140879228 C#和S7-1200PLC S7.NET通信 C#和S7-1200PLC S7.NET通信_c# s1200 s7协议设置-CSDN博客文章浏览阅读…

Linux开发工具(git、gdb/cgdb)--详解

目录 一、Linux 开发工具分布式版本控制软件 git1、背景2、使用 git(1)预备工作——安装 git:(2)克隆远程仓库到本地(3)把需要提交的代码拷贝到本地仓库(4)提交本地仓库文…

JavaScript ---案例(统计字符出现次数)

统计字符出现次数 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-w…

在Linux中运行flask项目

准备 这里我准备了一个GitHub上某个大佬写的留言板的Flask项目&#xff0c;就用这个来给大家做示范了。 查看留言板的目录结构 查看主程序所用的库函数 只有一个第三方库 Flask 安装pip sudo apt install python3-pip -y测试 pip 安装成功 修改pip镜像源 修改pip的默认下载…

篮球运动场景物体检测系统源码分享

篮球运动场景物体检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Comp…

Three.js 3D人物漫游项目(中)

本文目录 前言最终效果展示1、人物添加阴影1.1 添加地板1.1.1 效果 1.2 模型castShadow1.2.1 效果 1.3 轨道控制器1.3.1 效果 2、创建建筑物2.1 代码2.2 效果 前言 在数字技术的浪潮中&#xff0c;三维图形渲染技术以其独特的魅力&#xff0c;正逐步渗透到我们生活的方方面面&a…

Blender软件三大渲染器Eevee、Cycles、Workbench对比解析

Blender 是一款强大的开源3D制作平台&#xff0c;提供了从建模、雕刻、动画到渲染、后期制作的一整套工具&#xff0c;广泛应用于电影、游戏、建筑、艺术等领域。 渲染101云渲染云渲6666 相比于其他平台&#xff0c;如 Autodesk Maya、3ds Max 或 Cinema 4D&#xff0c;Blende…

Gnu Radio抓取WiFi信号,流程图中模块功能

模块流程如图所示&#xff1a; GNURadio中抓取WiFi信号的流程图中各个模块的功能&#xff1a; UHD: USRP Source&#xff1a; 使用此模块配置USRP硬件进行信号采集。设置频率、增益、采样率等参数。Complex to Mag^2&#xff1a; 将复数IQ数据转换为幅度的平方。Delay&#xf…

descrTable常用方法

descrTable 为 R 包 compareGroups 的重要函数&#xff0c;有关该函数以及 compareGroups 包的详细内容见&#xff1a;R包compareGroups详细用法 加载包和数据 library(compareGroups)# 加载 REGICOR 数据&#xff08;横断面&#xff0c;从不同年份纳入&#xff0c;每个变量有…

深入理解前端拖拽:从基础实现到事件冒泡与委托的应用【面试真题】

在前端开发中&#xff0c;拖拽功能是一项常见的交互需求。通过监听鼠标或触摸事件&#xff0c;用户可以拖动元素并将其放置到指定位置。理解拖拽的底层实现、如何判断拖拽的是子元素还是父元素&#xff0c;以及事件冒泡和事件委托的原理&#xff0c;可以帮助我们更好地实现复杂…

stm32 FLASH闪存(读写内部FLASH读取芯片ID)

理论 1.FLASH简介 STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分&#xff0c;通过闪存存储器接口&#xff08;外设&#xff09;(FLASH管理员)可以对程序存储器和选项字节进行擦除和编程 读写FLASH的用途&#xff1a; 利用程序存储器的剩余空间来保存掉电不…

C++—vector的常见接口与用法(正式进入STL)

目录 0.提醒 1.介绍 2.构造 1.正常构造 2.默认值构造 3.调用默认构造函数构造 3.遍历 1.迭代器 2.范围for 3.下标访问 4.容量 1.capacity&#xff1a;返回当前容器的容量 2.reserve&#xff1a;如果传的k比当前容量大&#xff0c;则扩容到比k大或者等于k的数&…

为人机交互保持预见性丨基于G32A1445的T-BOX应用方案

T-BOX是一种集成了通信、计算和控制功能的车载信息处理终端&#xff0c;通过车辆与云端、移动网络等进行数据交互&#xff0c;用于车、人、外部环境的互联互通&#xff0c;支持车辆定位、车载通信、远程控制、故障诊断、数据传输、紧急呼叫等功能&#xff0c;帮助车辆实现更加智…

2023北华大学程序设计新生赛部分题解

时光如流水般逝去&#xff0c;我已在校园中奋战大二&#xff01;(≧▽≦) 今天&#xff0c;静静回顾去年的新生赛&#xff0c;心中涌起无尽感慨&#xff0c;仿佛那段青春岁月如烟花般绚烂。✧&#xff61;(≧▽≦)&#xff61;✧ 青春就像一场燃烧的盛宴&#xff0c;激情澎湃&…

什么情况下会导致索引失效?

什么情况下会导致索引失效&#xff1f; 1. 组合索引非最左前缀2. LIKE查询%开头3. 字符串未加引号4. 不等比较5. 索引列运算6. OR连接查询 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 1. 组合索引非最左前缀 描述&#xff1a;在组合索引…

基于springboot的驾校管理系统的设计与实现 (含源码+sql+视频导入教程)

&#x1f449;文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1 、功能描述 基于springboot的驾校管理系统4拥有三种角色&#xff0c;分别为管理员、教练、学员。 管理员&#xff1a;学员/教练管理、报名管理、车辆管理、教练分配管理、课程安排管理、考勤打卡管理…

【HTTP】构造HTTP请求和状态码

状态码 用于响应中&#xff0c;表示响应的结果如何 正确&#xff1f;错误&#xff1f;什么原因&#xff1f; HTTP 中的状态码都是标准约定好的 200 OK 成功了&#xff0c;一切顺利 在抓包到的响应中 404 Not Found 访问的资源&#xff08;URL 中的路径&#xff09;没找…

想要让ai做ppt?试试这四个!

今天咱们来聊点新鲜的&#xff0c;就是那些能让我们从繁琐的PPT制作中解脱出来的智能工具。你是否还在为制作PPT熬夜到天亮&#xff1f;别担心&#xff0c;我这就带你看看目前市面上最火的几款智能PPT生成工具&#xff0c;它们的表现如何呢&#xff1f;让我们一探究竟&#xff…

BUUCTF逆向wp [WUSTCTF2020]Cr0ssfun

第一步 查壳&#xff0c;本题是64位&#xff0c;无壳。 第二步 查看主函数&#xff0c;点开看主函数&#xff0c;没什么东西。 左边表里面看到好几个i开头的函数&#xff08;红色方框里面&#xff09;&#xff0c;点开看后每个函数的最后末尾&#xff08;图中红色椭圆圈那里&a…

MyBatis-config.xml核心配置

MyBatis-config.xml 包含了会深深影响MyBatis行为的设置和属性信息&#xff0c;配置文档的顶层结构如下 environments&#xff08;环境配置&#xff09; environments用于配置数据库的URL信息&#xff0c;MyBatis-config可以动态配置多个数据源&#xff0c;用于连生产、预发、…