当前位置: 首页 > news >正文

实验3 Hadoop集群运行环境搭建和使用

实验3 Hadoop集群运行环境搭建和使用

  • 一、实验介绍

本节实验旨在引导学生通过实际操作搭建一个基本的Hadoop集群,并进行基本的使用验证。实验包括在集群节点上添加域名映射以实现节点间的相互识别,配置免密SSH登录以便无密码访问各节点,安装和配置JDK以满足Hadoop的运行需求。此外,本实验还涉及创建命令和文件同步脚本来维持集群的一致性,安装和配置Hadoop分布式文件系统(HDFS),以及对主节点的格式化和整个Hadoop集群的启动。最后,学生将通过查看进程和验证HDFS环境来检查集群的运行状况。本实验在于让学生深入理解Hadoop集群的运行机制和配置过程,从而掌握大数据技术的核心概念和实践技能。学生将学习如何在分布式计算环境中配置和管理关键组件,这对于处理和分析健康医疗等领域的大规模数据集至关重要。通过这一实践,学生不仅能够熟悉Hadoop集群的搭建流程,还能够增强对分布式数据存储和处理的综合理解,为未来在大数据领域的工作或研究打下坚实的基础。

二、实验目的

1.了解Hadoop及其在健康医疗大数据应用中的作用。

2.熟悉理集群环境格式化和启动的步骤,以及如何验证HDFS环境是否正常工作。

3.掌握Hadoop集群的基本搭建流程,包括域名映射、SSH免密登录、JDK安装和配置等。

三、实验准备

1.所需安装包:jdk-8u231-linux-x64.tar.gz、hadoop-3.2.1.tar.gz、xshell、xftp;

2.获取3台虚拟机master、salve1、slave2的IP地址;

3.试验操作以单人进行。

四、实验步骤

在正式配置Hadoop分布式集群环境之前,利用ifconfig或者hostname -i命令查看三台虚拟机对应的IP地址,后续实验为了方便均利用xshell进行连接三台机器。在本实验中三台虚拟机的IP地址为如下表所示。

虚拟机名称

IP地址

账号

密码

master

192.168.107.128

root

hadoop

slave1

192.168.107.129

root

hadoop

slave2

192.168.107.130

root

hadoop

利用xhell进行连接虚拟机。打开xshell->新建,在名称中输入master,在主机中输入你自己的虚拟机IP。

然后单击用户身份验证,在用户名处输入账号:root,在密码处输入密码:hadoop。然后点击确定->连接即可,用同样的方式连接为slave1、slave2创建连接。

1.添加域名映射 

修改hosts文件,添加所有主机IP地址和主机名对应关系。

# vi /etc/hosts

输入下述内容(根据自己的IP进行修改

192.168.107.128 master

192.168.107.129 slave1

192.168.107.130 slave2

修改完成后,按下ESC键输入:wq保存退出。可用cat命令查看修改后的hosts文件内容。

# cat /etc/hosts

按照同样的方式将上传内容配置到slave1、slave2中的/etc/hosts文件。

2.配置免密登录

使用命令生成服务器密钥。(输完命令按四次回车,三台机器均需要操作

# ssh-keygen

进入/root/.ssh/目录,可查看生成的密钥。

# cd /root/.ssh/
# ll

使用ssh-copy-id命令拷贝公钥到目标主机。(所有节点都需进行下列操作,在提示处输入yes

# ssh-copy-id master
# ssh-copy-id slave1
# ssh-copy-id slave2

三台节点处理完成后,利用ssh登录目标主机,可发现三台节点间可以任意切换,不再需要输入密码。登录后可利用exit退回上一级节点。

例如在master节点中利用ssh slave1切换到slave1。可以看见前面由master变成了slave1。

3.安装和配置JDK

利用xftp将jdk-8u231-linux-x64.tar.gz、hadoop-3.2.1.tar.gz上传到master节点的/usr/local/install_pack/目录下。

进入安装包目录(提前将安装包上传到install_pack目录下)

#cd /usr/local/install_pack/

解压JDK安装包到/usr/local/software目录下,输入下列命令

# tar -zxvf jdk-8u231-linux-x64.tar.gz -C /usr/local/software/ 

查看

# ls -lrt /usr/local/software

相关文章:

实验3 Hadoop集群运行环境搭建和使用

实验3 Hadoop集群运行环境搭建和使用 一、实验介绍 本节实验旨在引导学生通过实际操作搭建一个基本的Hadoop集群,并进行基本的使用验证。实验包括在集群节点上添加域名映射以实现节点间的相互识别,配置免密SSH登录以便无密码访问各节点,安装和配置JDK以满足Hadoop的运行需求…...

前端文件上传全过程

特别说明:ui框架使用的是蚂蚁的antd 这里主要是学习前端上传接口的传递参数包括前端上传之前对于代码的整理 一、第一步将前端页面画出来 源代码: /** 费用管理 - IT费用管理 - 费用数据上传 */ import { useState } from "react"; import {…...

MySQL中的函数简单总结,以及TCL语句的简单讲解

文章目录 一、函数1、ifnull2、if3、case4、exists 存在5、字符串函数(重点)6、数学函数7、日期函数 二、TCL语句1、创建用户2、赋予权限3、修改mysql允许远程登录 一、函数 1、ifnull 当前⾯的值是null的时候,使⽤后⾯的默认值 ifnull(字段…...

GPS在Linux下的使用(war driving的前置学习)

1.ls /dev/tty* 列出所有与 tty 相关的设备文件。这些设备文件通常对应终端设备 ttyUSB0是GPS端口 2.cat /dev/ttyUSB0 用于读取并显示连接到 /dev/ttyUSB0 串口设备发送的原始数据 这种是GPS定位不全的,要拿到更开阔的地方 这种是GPS定位全的 因为会持续输出…...

开发经验总结: 读写分离简单实现

背景 使用mysql的代理中间件,某些接口如果主从同步延迟大,容易出现逻辑问题。所以程序中没有直接使用这个中间件。 依赖程序逻辑,如果有一些接口可以走读库,需要一个可以显示指定读库的方式来连接读库,降低主库的压力…...

MySQL(面试题 - 同类型归纳面试题)

目录 一、MySQL 数据类型 1. 数据库存储日期格式时,如何考虑时区转换问题? 2. Blob和text有什么区别? 3. mysql里记录货币用什么字段类型比较好? 4. MySQL如何获取当前日期? 5. 你们数据库是否支持emoji表情存储&…...

【C++ Primer Plus习题】17.7

问题: 解答: #include <iostream> #include <vector> #include <string> #include <fstream> #include <algorithm>using namespace std;const int LIMIT 50;void ShowStr(const string& str); void GetStrs(ifstream& fin, vector<…...

vue3(整合版)

创建第一个vue项目 1.安装node.js cmd输入node查看是否安装成功 2.vscode开启一个终端&#xff0c;配置淘宝镜像 # 修改为淘宝镜像源 npm config set registry https://registry.npmmirror.com 输入如下命令创建第一个Vue项目 3.下载依赖&#xff0c;启动项目 访问5173端口 …...

复制他人 CSDN 文章到自己的博客

文章目录 0.前言步骤 0.前言 在复制别人文章发布时&#xff0c;记得表明转载哦 步骤 在需要复制的csdn 文章页面&#xff0c;打开浏览器开发者工具&#xff08;F12&#xff09;Ctrl F 查找"article_content"标签头 右键“Copy”->“Copy element”新建一个 tx…...

【算法——二分查找】

理论基础&#xff1a; 程序员面试经典题&#xff0c;二分搜索一个区间&#xff0c;区间查找 (LeetCode 34)_哔哩哔哩_bilibili 手把手带你撕出正确的二分法 | 二分查找法 | 二分搜索法 | LeetCode&#xff1a;704. 二分查找_哔哩哔哩_bilibili 这个是红蓝法&#xff0c;很牛…...

Cisco Packet Tracer的安装加汉化

这个工具学计算机网络的同学会用到 1.下载安装 网盘链接&#xff1a;https://pan.baidu.com/s/1CmnxAD9MkCtE7pc8Tjw0IA 提取码&#xff1a;frkb 点击第一个进行安装&#xff0c;按步骤来即可。 2.汉化 &#xff08;1&#xff09;复制chinese.ptl文件 &#xff08;2&…...

MMain函数定义为WinMain函数看port1632.h和pwin32.h文件

编译win2k3的源代码的时候有时候看到MMain函数 ..//public/sdk/inc/port1632.h #if defined(WIN16) /* ---------------- Maps to windows 3.0 and 3.1 16-bit APIs ----------------*/ #include "ptypes16.h" #include "pwin16.h" #include "plan16.…...

单词搜索问题(涉及递归等)

目录 一题目&#xff1a; 二思路解释&#xff1a; 三解答代码&#xff1a; 一题目&#xff1a; newcode题目链接&#xff1a; 单词搜索_牛客题霸_牛客网 二思路解释&#xff1a; 思路&#xff1a;个人理解是找到word中的第一个元素&#xff0c;然后去递归的上下左右查找&am…...

Redis的一些通用指令

首先我们需要先连接客户端服务器&#xff0c;此时我们需要通过redis-cli和redis服务器进行交互&#xff0c;输入ping来确保通路的流畅 &#xff08;一&#xff09;get和set redis中最核心的两个命令就是get和set&#xff0c;get就是根据key来取出对应value&#xff0c;set就是把…...

C++中vector类的使用

目录 1.vector类常用接口说明 1.1默认成员函数 1.1.1构造函数(constructor) 1.1.2 赋值运算符重载(operator()) 2. vector对象的访问及遍历操作(Iterators and Element access) 3.vector类对象的容量操作(Capacity) 4. vector类对象的修改及相关操作(Modifiers and Stri…...

cmaklist流程控制——调试及发布

cmaklist流程控制 目前只会配置-编译调试-打包发布&#xff0c;并且不会workflow控制 后续学习配置-编译调试-测试-打包发布&#xff0c;workflow控制&#xff0c;理解整个流程&#xff0c;目前对流程控制理解也不够。 1.CMake Presets 先于Cmakelist文件&#xff0c;指导项…...

制作一个能对话能跳舞的otto机器人

OTTO机器人是一个开源外壳&#xff0c;硬件和软件的桌面机器人项目&#xff0c;非常适合新手研究和拓展。记住&#xff0c;他是一个能移动有表情能声音的机器人。 b站有很多演示和组装的视频&#xff0c;我就不多说了&#xff0c;照着做就好&#xff0c;因为硬件我也是刚入门&…...

git配置SSH

1 打开cmd窗口 2 在窗口中输入如下命令&#xff1a; 配置用户名&#xff1a; git config --global user.name “gyk” 配置邮箱&#xff1a; git config --global user.email “247929163qq.com” 继续在Git命令窗口中输入如下命令&#xff0c;即可生成SSH公钥和私钥 ss…...

mozilla/pdf.js view.html加载指定页码

mozilla/pdf.js view.html加载指定页码 在Mozilla’s PDF.js中&#xff0c;如果你想要在viewer.html加载时直接跳转到指定的页码&#xff0c;你可以通过修改URL来实现。 PDF.js使用查询参数来处理URL&#xff0c;其中page参数用于指定页码。你可以通过修改URL的查询字符串来设…...

Qt之QFuture理解

结构 #mermaid-svg-J9J683RG8QjtEqoM {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-J9J683RG8QjtEqoM .error-icon{fill:#552222;}#mermaid-svg-J9J683RG8QjtEqoM .error-text{fill:#552222;stroke:#552222;}#merm…...

IE11富文本兼容——政务系统前端的深渊

IE11富文本兼容——政务系统前端的深渊 背景&#xff1a;为什么还有 IE11 系统要求支持 IE11。 为什么不是 Chrome&#xff1f; 办公电脑全是 Windows 7 IE11单位统一采购&#xff0c;不能随便装浏览器部分内部网站只支持 IE&#xff08;ActiveX&#xff09; 现状&#x…...

I2C地址冲突全解析:从原理到实战的嵌入式系统设计指南

1. I2C地址&#xff1a;嵌入式系统设计的“门牌号”与“交通规则”如果你玩过单片机或者树莓派&#xff0c;肯定对I2C不陌生。两根线&#xff0c;SDA和SCL&#xff0c;就能挂上一堆传感器、显示屏、扩展芯片&#xff0c;听起来简直是嵌入式开发的“万金油”。但真正上手后&…...

30亿条出行记录解密:如何用纽约出租车数据洞察城市脉搏 [特殊字符][特殊字符]

30亿条出行记录解密&#xff1a;如何用纽约出租车数据洞察城市脉搏 &#x1f696;&#x1f4ca; 【免费下载链接】nyc-taxi-data Import public NYC taxi and for-hire vehicle (Uber, Lyft) trip data into a PostgreSQL or ClickHouse database 项目地址: https://gitcode.…...

Linux磁盘空间告警与清理实战

Linux磁盘空间告警与清理实战磁盘空间不足是 Linux 运维中最常见也最容易引发连锁故障的问题之一。很多服务平时运行正常&#xff0c;但一旦分区写满&#xff0c;轻则日志无法落盘&#xff0c;重则数据库异常、服务启动失败甚至系统不可用。中级技术人员不能只会“删文件腾空间…...

AI对话记忆管理实战:memory-organizer库解决长上下文难题

1. 项目概述&#xff1a;一个为AI记忆体“瘦身”与“归档”的利器最近在折腾一些本地大语言模型&#xff08;LLM&#xff09;的应用&#xff0c;比如搭建个人知识库助手或者长期对话机器人&#xff0c;一个绕不开的痛点就是“记忆”的管理。模型本身没有持久记忆&#xff0c;每…...

046、PCIE桥设备与交换:当拓扑开始复杂起来

046、PCIE桥设备与交换&#xff1a;当拓扑开始复杂起来 最近在调一块自定义的PCIE扩展板&#xff0c;系统里突然出现了几个“神秘”的端点设备。在lspci列表里&#xff0c;它们出现在一个我从未配置过的总线号上&#xff0c;而且设备ID全对不上。折腾了两天才发现&#xff0c;原…...

Verilog时钟分频实战:从偶数、奇数到小数分频的设计与实现

1. 项目概述&#xff1a;从零开始掌握Verilog时钟分频 在数字电路和FPGA设计中&#xff0c;时钟信号是驱动整个系统同步运行的“心跳”。然而&#xff0c;一个系统往往需要多种不同频率的时钟来驱动不同的模块&#xff0c;比如高速的处理器核心和低速的外设接口。直接使用多个外…...

Svelte动态光标实现:状态驱动与Spring动画的交互设计

1. 项目概述&#xff1a;一个会“思考”的鼠标指针如果你在开发一个需要高度沉浸感和交互反馈的Web应用&#xff0c;比如一个设计工具、一个游戏界面&#xff0c;或者一个希望用户能“感受”到页面元素质感的网站&#xff0c;那么一个静态的、系统默认的鼠标指针就显得有些格格…...

基于RP2350与CircuitPython的音乐可视化器DIY:从FFT到复古美学

1. 项目概述&#xff1a;从复古情怀到现代DIY如果你和我一样&#xff0c;对上世纪七八十年代那些充满未来感的电子设备抱有某种执念&#xff0c;那么Atari Video Music这个名字一定不会陌生。这台诞生于1977年的设备&#xff0c;堪称音乐可视化器的鼻祖&#xff0c;它通过简单的…...

推理服务为什么一做对话状态复用就开始省 Token 却更容易答偏:从 Decoder State Reuse 到 Constraint Replay 的工程实战

一、状态复用一上线&#xff0c;省下 Token 却先丢了约束 很多团队把多轮对话做成“首轮完整 prefill&#xff0c;后续直接复用 decoder state”。&#x1f4c9; 账面收益很好&#xff1a;TTFT 下降&#xff0c;输入 token 费用也明显收缩。但线上很快出现另一类故障&#xff1…...