大数据平台/大数据技术与原理-实验报告--部署全分布模式Hadoop集群

news2024/11/25 11:55:13

实验名称

部署全分布模式Hadoop集群

实验性质

(必修、选修)

必修

实验类型(验证、设计、创新、综合)

综合

实验课时

2

实验日期

2023.10.16-2023.10.20

实验仪器设备以及实验软硬件要求

专业实验室(配有centos7.5系统的linux虚拟机三台

实验目的

1. 熟练掌握Linux基本命令。

2. 掌握静态IP地址的配置、主机名和域名映射的修改。

3. 掌握Linux环境下Java的安装、环境变量的配置、Java基本命令的使用。

4. 理解为何需要配置SSH免密登录,掌握Linux环境下SSH的安装、免密登录的配置。

5. 熟练掌握在Linux环境下如何部署全分布模式Hadoop集群。

实验内容(实验原理、运用的理论知识、算法、程序、步骤和方法)

一:实验原理

1. Linux基本命令

   - Linux是一个免费使用和自由传播的类Unix操作系统,支持多用户、多任务、多线程和多CPU。

   - Linux基本命令包括查看当前目录(pwd)、切换目录(cd)、罗列文件(ls)、创建目录(mkdir)、拷贝文件(cp)、移动或重命名文件(mv)、删除文件(rm)、查看进程(ps)、压缩与解压文件(tar)、查看文件内容(cat)、查看机器IP配置(ip address)等。

2. vim编辑器

   - vim是一个功能强大、高度可定制的文本编辑器,是vi的加强版,支持命令模式、输入模式和末行模式。

   - vi/vim的工作模式包括命令模式、输入模式和末行模式,用户可以在这些模式之间切换,执行相应的操作。

3. Java基本命令

   - Java是一种跨平台的编程语言,Hadoop使用Java语言编写。

   - Java基本命令包括查看Java版本(java -version)、查看当前所有Java进程(jps)、编译Java程序(javac)、运行Java程序(java)、打包Java程序为jar文件(jar)等。

4. SSH安全通信协议

   - SSH(Secure Shell)是一种安全通信协议,用于远程管理其他机器,提供加密的网络数据传输。

   - SSH使用非对称加密,包括服务端发送公钥、客户端利用公钥加密数据、服务端利用私钥解密验证等步骤。

   - Hadoop主节点到各个从节点的SSH免密登录配置是为了方便管理整个集群。

5. Hadoop

   - Hadoop是一个分布式存储和计算的软件框架,具有高可用、弹性可扩展的特点,适合处理大规模数据。

   - Hadoop包括分布式文件系统HDFS、统一资源管理和调度框架YARN、分布式计算框架MapReduce。

   - Hadoop的运行环境需要配置操作系统(Linux)、Java环境、SSH。

   - Hadoop运行模式包括单机模式、伪分布模式和全分布模式。

   - Hadoop的生态系统涵盖了许多子系统,形成了一个庞大的体系。

   - Hadoop集群采用主从架构,包括Master(NameNode、ResourceManager)和Slave(DataNode、NodeManager)。

   - Hadoop的主要配置文件包括hadoop-env.sh、yarn-env.sh、mapred-env.sh、core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml等。

二:实验步骤

这里直接从hadoop的安装和jdk安装,环境配置讲起:

1.Hadoop解压后的文件目录:

2.Jdk的解压文件目录:

3.修改的环境变量的文件:

此时在master节点上修改好hadoop的配置文件:

4.配置core-site.xml:

5.配置mapred-env.sh:

6.配置hdfs-site.xml:

7.配置mapred-site.xml:

8.配置yarn-site.xml:

9.配置文件slaves:

  1. 将master节点的hadoop同步至slave1和slave2节点上

  1. 启动hadoop

start-dfs.sh

start-yarn.sh

mr-jobhistory-daemon.sh start historyserver

启动结果如下图所示:

start-dfs.sh

start-yarn.sh

此时使用jps查看各个节点端口的启用情况:

主节点:

从节点:

mr-jobhistory-daemon.sh start historyserver

此时就可以进入hadoop的webui的界面了:

实验结果与分析

部署全分布模式Hadoop集群的实验结果与分析主要包括以下几个步骤:

1.网络和节点规划:首先,我们需要规划网络和节点。例如,我们可以为主节点和从节点分配不同的IP地址。

2.环境准备:这包括克隆虚拟机,网络配置,修改主机名,配置网络映射等。

3.设置SSH无密码登录节点:这是为了确保主节点可以无密码登录到所有从节点。

4.安装配置Hadoop集群:这包括配置Java、Hadoop的环境变量,配置分布式集群环境(6个配置文件),分发Hadoop集群安装目录及文件,启动和停止Hadoop集群等。

5.时间同步:安装NTP服务器,配置其他机器的时间同步。

这个过程可能会遇到一些问题,但通过不断的实践和调整,我们可以逐步优化集群的性能。

总的来说,部署全分布模式Hadoop集群是一个复杂的过程,需要对Hadoop和相关技术有深入的理解。但是,一旦集群部署成功,它将为处理大规模数据提供强大的计算能力。

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

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

相关文章

Prove that exponential function f(x)=e^x is not Lipschitz on R

https://math.stackexchange.com/questions/3980014/prove-that-ex-is-not-lipschitz-on-r https://math.ucr.edu/~res/math205A-2014/lipschitz2.pdf

AI算法中的模型量化岗是做什么的

今天介绍一个在 AI 算法领域比较常见而且很重要的岗位——模型量化岗。 按惯例,先从某聘上截图一个量化工程师的招聘信息。 只看与量化相关的词,基本涉及到了量化精度、模型结构、算法这些关键词,下面来介绍一下这个岗位。 1、先看下什么是模…

LeetCode:1457. 二叉树中的伪回文路径(DFS C++ Java)

目录 1457. 二叉树中的伪回文路径 题目描述: 原理思路: 1457. 二叉树中的伪回文路径 题目描述: 给你一棵二叉树,每个节点的值为 1 到 9 。我们称二叉树中的一条路径是 「伪回文」的,当它满足:路径经过的…

职场快速赢得信任

俗话说的好,有人的地方就有江湖。 国内不管是外企、私企、国企,职场环境都是变换莫测。 这里主要分享下怎么在职场中快速赢取信任。 1、找到让自己全面发展的方法 要知道,职场中话题是与他人交流的纽带,为了找到共同的话题&am…

SpringBoot校验List失效解决方法

文章目录 SpringBoot校验List失效解决方法附:校验基本数据类型和String类型的方法参数时也需要在类上加Validated SpringBoot校验List失效解决方法 失效场景示例代码: RestController RequestMapping("/v1/jx/flowSummary") Slf4j public cl…

Go 语言中 sync 包的近距离观察

让我们来看看负责提供同步原语的 Go 包:sync。 sync.Mutex sync.Mutex 可能是 sync 包中被广泛使用的原语。它允许对共享资源进行互斥操作(即不允许同时访问): mutex : &sync.Mutex{}mutex.Lock() // Update shared variab…

深入了解Java8新特性-日期时间API:LocalTime类

阅读建议 嗨,伙计!刷到这篇文章咱们就是有缘人,在阅读这篇文章前我有一些建议: 本篇文章大概12000多字,预计阅读时间长需要10分钟。本篇文章的实战性、理论性较强,是一篇质量分数较高的技术干货文章&…

人力资源管理后台 === 员工新增修改

目录 1.员工管理-导出excel 2.员工管理-excel组件封装 3.员工管理-下载导入模板 4.员工管理-员工导入-上传excel 5.员工管理-删除员工 6.员工详情和路由 7.员工详情-表单数据校验 8.员工详情-封装部门级联组件 9.员工详情-级联组件-双向绑定 10.员工详情-新增员工 11…

深度学习中的注意力机制:原理、应用与实践

深度学习中的注意力机制:原理、应用与实践 摘要: 本文将深入探讨深度学习中的注意力机制,包括其原理、应用领域和实践方法。我们将通过详细的解析和代码示例,帮助读者更好地理解和应用注意力机制,从而提升深度学习模…

Servlet知识汇总

小王学习录 Ⅰ. servlet程序导入依赖创建目录编写代码打包程序部署程序验证简化打包和部署Ⅱ. Servlet Api1. HttpServlet2. HttpServletRequest3. HttpServletResponseⅢ. Cookie 和session1. Cookie2. Session(会话)3. session 和 cookie的区别4. session 和 cookie的联系5. …

图像分割模型及架构选型介绍(MMSegmentation|sssegmentation等)

参考: https://zhuanlan.zhihu.com/p/618226513 0. 图像分割概述 图像分割通过给出图像中每个像素点的标签,将图像分割成若干带类别标签的区块,可以看作对每个像素进行分类。图像分割是图像处理的重要组成部分,也是难点之一。随…

Java 基于 SpringBoot+Vue 的地方民宿管理系统

文章目录 开发环境:后端:前端:数据库: 系统架构:管理员:用户用例: 主要功能:用户功能模块管理员功能模块商家用户功能模块前台首页功能模块 源码咨询 大家好,今天为大家带…

如何保证线程安全?

程序员的公众号:源1024,获取更多资料,无加密无套路! 最近整理了一波电子书籍资料,包含《Effective Java中文版 第2版》《深入JAVA虚拟机》,《重构改善既有代码设计》,《MySQL高性能-第3版》&…

Pytorch项目的文件结构一般都是怎么组织的?

如果是从一些比较典型的论文里弄下来的源码,你会发现它们的论文结构往往都非常复杂。不同的模型、不同的论文,可能代码结构组织的方式都不一样。但它们都不外乎就是经历这几个方面: 1、模型和结构模块定义; 2、数据集获取与处理…

【brpc学习实践九】mbvar及bvar可观测

概念、学习地址 mbvar中有两个类,分别是MVariable和MultiDimension,MVariable是多维度统计的基类,MultiDimension是派生模板类。也是主要用来多多线程计数用的。这里用到再详细去了解即可 https://github.com/luozesong/brpc/blob/master/do…

5.golang字符串的拆解和拼接

字符串是 Go 中的字节切片。可以通过将一组字符括在双引号中来创建字符串" "。Go 中的字符串是兼容Unicode编码的,并且是UTF-8编码的。 访问字符串的单个字节或字符 由于字符串是字节切片,因此可以访问字符串的每个字节。 func printStr(s …

知识的分层:know-what/how/why

知识(knowledge)表示知道某些信息。通常而言,知识是正确的,但不一定是完备的。知识本身有自己的适用范围,特别是工程技术类问题。 根据知识的类型,可分为三类: know-whatknow-howknow-why kno…

Redis 面试题——持久化

目录 1.概述1.1.Redis 的持久化功能是指什么?1.2.Redis 有哪些持久化机制? 2.RDB2.1.什么是 RDB 持久化?2.2.Redis 中使用什么命令来生成 RDB 快照文件?2.3.如何在 Redis 的配置文件中对 RDB 进行配置?2.4.✨RDB 持久化…

代码随想录算法训练营 ---第四十四天

今天开始《动态规划:完全背包》的学习! 前言: 完全背包和01背包的区别在于完全背包里的物品能无限次使用,01背包只能用一次。 第一题: 简介: 本题是纯完全背包的使用。可以看一看和01背包的区别。 代码…

手把手教你实现一个循环队列(C语言)

这是一道leetcode关于队列的经典题: 622. 设计循环队列https://leetcode.cn/problems/design-circular-queue/ 思路: 大家注意这个题目要求,这个队列是定长的,如果满了则不能再添加数据。那么我们设计一个队头front和队尾rear&…