伪分布Hadoop的安装与部署

1.实训目标

(1)熟悉掌握使用在Linux下安装JDK。

(2)熟悉掌握使用在Linux下安装Hadoop。

(3)熟悉掌握使用配置SSH免密登录。

2.实训环境与软件

环境

版本

说明

Windows 10系统

64位

操作电脑配置

VMware

16

用于搭建所需虚拟机Linux系统

Linux系统

CentOS 7

已配置完成

hadoop

192.168.213.200

用于安装JDK与Hadoop伪分布式的搭建

软件

版本

说明

JDK

1.8

jdk-8u161-linux-x64.tar.gz

Hadoop

3.1.4

hadoop-3.1.4.tar.gz

3.实训说明

       在实际应用中,如果是做简单的测试数据不大,可以使用Hadoop伪分布式集群来运算。Hadoop伪分布式部署的步骤流程与分布式的相差不大,相对来说要更简单些。集群的配置需要具体问题具体分析,根据业务需求搭建合适的集群环境。因此,请基于Hadoop 3.1.4版本,安装并部署伪分布式Hadoop集群,巩固Hadoop集群的搭建操作,加深对Haddop的理解。

4.实训步骤

        4.1 FinalShell远程连接Linux系统

 (1)使用命令“ifconfig”查看虚拟机的IP地址。

 (2)打开Final shell连接Linux系统。

4.2 修改主机别名为hadoop

(1)使用hostnamectl命令设置主机别名,最后重启reboot。

hostnamectl set-hostname hadoop
reboot

(2)使用命令“host”查看修改后的主机名。

(3)进入hosts文件里面添加IP与主机别名的映射关系。

vi /etc/hosts
192.168.213.200 hadoop

4.3 设置SSH免密登录

(1)使用“ssh-keygen -t rsa”命令,接着按3次“Enter”键。ssh-keygen产生公钥与私钥(可以进入.ssh目录中查看,id_rsa:私钥,id_rsa.pub :公钥)。

(2)使用命令“ssh-copy-id”将公钥复制至master,输入ssh-copy-id hadoop后,输入yes和密码。 

 (3)验证免密登录是否成功,输入ssh hadoop命令。

4.安装JDK

(1)将JDK安装包jdk-8u161-linux-x64.tar.gz上传至虚拟机master的/opt目录下,进入/opt目录下,使用“tar -zxvf jdk-8u161-linux-x64.tar.gz -C /usr/local/”命令将JDK解压安装到/usr/local目录下,具体实现如下所示。

cd /opt/
tar -zxvf jdk-8u161-linux-x64.tar.gz -C /usr/local/

 (2)验证JDK是否配置成功,使用“java -version”命令查看Java版本。具体实现如代码所示。

4.5 安装Hadoop,配置jdk和hadoop的环境变量

(1)将Hadoop安装包hadoop-3.1.4.tar.gz上传至虚拟机master的/opt目录下,使用“tar -zxvf hadoop-3.1.4.tar.gz -C /usr/local”命令,将Hadoop安装包解压至master的/usr/local目录下。

cd /opt/
tar -zxvf hadoop-3.1.4.tar.gz -C /usr/local/

(2)配置jdk和hadoop的环境变量。使用命令“vi /etc/profile”在hadoop节点上修改/etc/profile文件,在文件末尾添加如下代码内容,文件修改完保存退出,然后使用“source /etc/profile”命令使配置生效。

代码4.4-1 设置Jdk和Hadoop环境变量

export JAVA_HOME=/usr/local/jdk1.8.0_161
export HADOOP_HOME=/usr/local/hadoop-3.1.4
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

(3)使用“source /etc/profile”命令使配置生效。

(4)使用jps和javac命令测试一下是否配置成功。

 4.6 配置Hadoop相关文件

       使用命令“cd /usr/local/hadoop-3.1.4/etc/hadoop/”进入/usr/local/hadoop-3.1.4/etc/hadoop目录。依次修改core-site.xmlhadoop-env.shhdfs-site.xmlmapred-site.xmlyarn-site.xml共5个配置文件的内容,具体操作步骤如下。

(1)使用命令“vi core-site.xml”打开文件。hadoop.tmp.dir配置了Hadoop的临时文件的目录。添加的内容如代码4.5-1所示。

 代码4.5-1 修改core-site.xml

<configuration><property><name>fs.defaultFS</name><value>hdfs://hadoop:8020</value></property><property><name>hadoop.tmp.dir</name><value>/usr/local/hadoop-3.1.4/tmp</value></property>
</configuration>

(2)使用命令“vi hadoop-env.sh”打开文件。hadoop-env.sh文件设置了Hadoop运行基本环境的配置,需要修改JDK所在目录。修改内容如代码4.5-2所示。

代码4.5-2 修改hadoop-env.sh

export JAVA_HOME=/usr/local/jdk1.8.0_161
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

(3)使用命令“vi hdfs-site.xml”打开文件。hdfs-site.xml设置了HDFS相关的配置,修改内容如代码4.5-3所示。 

代码4.5-3 修改hdfs-site.xml文件

<configuration>
<property><name>dfs.namenode.http-address</name><value>hadoop:9870</value></property><property><name>dfs.namenode.secondary.http-address</name><value>hadoop:9868</value>
</property>
</configuration>

(4)使用命令vi mapred-site.xml打开文件,mapred-site.xml文件添加的内容如代码4.54所示。

代码4.5-4  mapred-site.xml文件添加的内容

<configuration>
<property><name>mapreduce.framework.name</name><value>yarn</value>
</property>
</configuration>

(5)使用命令vi yarn-site.xml打开文件,yarn-site.xml文件修改的内容如代码4.5-5所示。

代码4.5-5  yarn-site.xml文件修改的内容

<configuration>
<property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.resourcemanager.hostname</name><value>hadoop</value>
</property>
</configuration>

4.7 启动Hadoop 

(1)在首次启动签需要使用命令“hdfs namenode -format”格式化NameNode。

(2)格式化完成后即可启动Hadoop集群,使用命令“start-all.sh”可启动Hadoop集群。

(3)集群启动之后,使用“jps”命令,出现如下图所示的6个进程信息,说明集群启动成功。

4.8 查看HDFS对应的webUI(必须要先关闭防火墙)

  首先查看防火墙的状态:firewall-cmd --state
  如果防火墙为开启状态,需要关闭防火墙:systemctl stop firewalld.service
  浏览器输入网址:http://192.168.25.200:9870

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

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

相关文章

前端vite+vue3——可视化页面性能耗时指标(fmp、fp)

文章目录 ⭐前言&#x1f496;vue3系列文章 ⭐可视化fmp、fp指标&#x1f496; MutationObserver 计算 dom的变化&#x1f496; 使用条形图展示 fmp、fp时间 ⭐项目代码⭐结束 ⭐前言 大家好&#xff0c;我是yma16&#xff0c;本文分享关于 前端vitevue3——可视化页面性能耗时…

图像处理与图像分析—图像的读入(C语言)

学习将会依据教材图像处理与图像分析基础&#xff08;C/C&#xff09;版内容展开 什么是数字图像处理 一副图像可以定义为一个二维函数 f(x&#xff0c;y) &#xff0c;其中 x 和 y 是空间&#xff08;平面&#xff09;坐标&#xff0c;任意一对空间坐标 (x,y) 处的幅度值 &am…

微信私信短剧机器人源码

本源码仅提供参考&#xff0c;有能力的继续开发 接口为api调用 云端同步 https://ys.110t.cn/api/ajax.php?actyingshilist 影视搜索 https://ys.110t.cn/api/ajax.php?actsearch&name剧名 每日更新 https://ys.110t.cn/api/ajax.php?actDaily 反馈接口 https://ys.11…

R语言复现:中国Charls数据库一篇现况调查论文的缺失数据填补方法

编者 在临床研究中&#xff0c;数据缺失是不可避免的&#xff0c;甚至没有缺失&#xff0c;数据的真实性都会受到质疑。 那我们该如何应对缺失的数据&#xff1f;放着不管&#xff1f;还是重新开始?不妨试着对缺失值进行填补&#xff0c;简单又高效。毕竟对于统计师来说&#…

NUC980开发板CAN开发笔记

一、内核开启CAN CAN 设置 NUC980 系列带有2个CAN(Controller Area Network), 可以分别独立设置。 请按以下的说明来使能CAN功能. 每个CAN可以单独的开关. CAN0有多组管脚可以选择, 需要一并设置。 使用者也可以设置CAN的唤醒功能。步骤如下&#xff1a; 进入 NUC980-linux-4.…

使用Tokeniser估算GPT和LLM服务的查询成本

将LLM集成到项目所花费的成本主要是我们通过API获取LLM返回结果的成本&#xff0c;而这些成本通常是根据处理的令牌数量计算的。我们如何预估我们的令牌数量呢&#xff1f;Tokeniser包可以有效地计算文本输入中的令牌来估算这些成本。本文将介绍如何使用Tokeniser有效地预测和管…

异步编程实战:使用C#实现FTP文件下载及超时控制

博客标题: 异步编程实战&#xff1a;使用C#实现FTP文件下载及超时控制 如果你的函数不是async&#xff0c;你仍然可以实现相同的超时功能&#xff0c;但你将不得不依赖更多的同步代码或使用.Result或.GetAwaiter().GetResult()来阻塞等待任务完成&#xff0c;这可能导致死锁的风…

verilog中的函数和for循环

在Verilog中&#xff0c;clogb2 的英文全称是 “ceiling&#xff08;天花板&#xff09; log base 2”&#xff0c;表示对输入参数取对数&#xff08;以2为底&#xff09;&#xff0c;并向上取整到最接近的整数值。这个函数通常用于计算内存地址宽度或状态数所需的位数12。 fun…

STM32---通用定时器(二)相关实验

写在前面&#xff1a;前面我们学习了基本定时器、通用定时器的相关理论部分&#xff0c;了解到通用定时器的结构框图&#xff0c;总共包含六大模块&#xff1a;时钟源、控制器、时基单元、输入捕获、公共部分以及输出捕获。对相关模块的使用也做详细的讲解。本节我们主要是对上…

Day33-计算机基础3

Day33-计算机基础3 1.根据TCP/IP进行Linux内核参数优化1.1 例1&#xff1a;调整访问服务端的【客户端】的动态端口范围 &#xff0c;LVS&#xff08;10-50万并发&#xff09;&#xff0c;NGINX负载&#xff0c;SQUID缓存服务,1.2 企业案例&#xff1a;DOS攻击的案例&#xff1a…

[备赛笔记]——5G大唐杯(5G考试等级考考试基础试题)

个人名片&#xff1a; &#x1f981;作者简介&#xff1a;学生 &#x1f42f;个人主页&#xff1a;妄北y &#x1f427;个人QQ&#xff1a;2061314755 &#x1f43b;个人邮箱&#xff1a;2061314755qq.com &#x1f989;个人WeChat&#xff1a;Vir2021GKBS &#x1f43c;本文由…

redis缓存满了的话会发生什么?

线上问题 未及时加监控&#xff0c;导致线上redis被逐出&#xff0c;业务有损 示例&#xff1a; 一个key临时存储在redis等缓存中&#xff0c;如果该key在一段时间内有很大作用 比如一次业务请求&#xff0c;上游服务写入一个value&#xff0c;时长1小时&#xff0c;下游服务…

Matlab|考虑源荷两侧不确定性的含风电电力系统低碳调度

目录 1 主要内容 目标函数&#xff1a; 约束条件&#xff1a; 程序亮点总结&#xff1a; 2 代码问题与程序测试 设备出力运行结果&#xff1a; 3 下载链接 1 主要内容 本程序是对《考虑源荷两侧不确定性的含风电电力系统低碳调度》的方法复现&#xff0c;主要实现了基…

【QT+QGIS跨平台编译】之七十六:【QGIS_Native+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

文章目录 一、QGIS_Native介绍二、QGIS下载三、文件分析四、pro文件五、编译实践一、QGIS_Native介绍 QGIS_Native模块是QGIS软件的核心部分,提供了许多基本功能和核心组件,主要用于处理与底层操作系统的关系。 二、QGIS下载 QGIS网址: QGIS Source Download 三、文件分析…

Django学习笔记

Django学习笔记 一、Django整体流程跑通 1.1安装 pip install django //安装 import django //在python环境中导入django django.get_version() //获取版本号&#xff0c;如果能获取到&#xff0c;说明安装成功Django目录结构 Python310-Scripts\django-admi…

前端框架的发展历程

文章目录 前言 一、静态页面时代 二、JavaScript的兴起 三、jQuery的出现 四、前端框架的崛起 1.AngularJS 2.React 3.Vue.js 五、面向组件化的发展趋势 总结 前言 前端框架的发展史就是一个不断进化的过程&#xff0c;它的发展和进化一定程度…

力扣刷题Days14第二题--80删除数组中重复元素||(js)

目录 1&#xff0c;题目-中等 2&#xff0c;代码 双指针 3&#xff0c;学习与总结 思路学习与整理 1&#xff0c;题目-中等 给你一个有序数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使得出现次数超过两次的元素只出现两次 &#xff0c;返回删除后数组…

区块链和人工智能的关系以及经典案例

目录 1.区块链与人工智能的关系 2.应用案例&#xff1a;基于区块链的医疗数据共享平台 2.1背景 2.2方案 2.3优势 2.4挑战 区块链技术和人工智能&#xff08;AI&#xff09;是两种不同的技术&#xff0c;但它们之间存在着互补关系。区块链技术提供了一种安全、透明、去中心…

Android Studio下载gradle超时问题解决

方法一 1. 配置根目录的setting.gradle.kts文件 pluginManagement {repositories {maven { urluri ("https://www.jitpack.io")}maven { urluri ("https://maven.aliyun.com/repository/releases")}maven { urluri ("https://maven.aliyun.com/repos…

Open-Sora:开源 Sora 复现方案,成本降低 46%

Colossal-AI 开源了完整的 Sora 复现架构方案 Open-Sora&#xff0c;声称可降低 46% 复现成本&#xff0c;并将模型训练输入序列长度扩充至 819K patches。 演示站点&#xff1a; https://ai.uaai.cn UAAI 官方论坛&#xff1a; www.jingyuai.com京娱AI Sora 算法复现方案 在 …