大数据学习02-Hadoop分布式集群部署

news2025/2/3 10:13:52

操作系统:centos7
软件环境:jdk8、hadoop-2.8.5

一、创建虚拟机

1.下载VMware,建议支持正版
在这里插入图片描述
2.安装到Widows目录下任意位置即可,安装目录自定义。打开VMware,界面如下:
在这里插入图片描述
3.创建虚拟机
在这里插入图片描述
创建虚拟机—>选择自定义
在这里插入图片描述
这一步按照默认的配置就好
在这里插入图片描述
选择系统,安装程序光盘映像文件iso,这里需要下载cenos镜像文件
在这里插入图片描述给虚拟机命名,选择虚拟机安装位置
在这里插入图片描述处理器配置
在这里插入图片描述
内存配置
在这里插入图片描述
配置虚拟机网络连接方式
在这里插入图片描述

选择I/O控制器
在这里插入图片描述
创建磁盘
在这里插入图片描述
在这里插入图片描述
设置磁盘大小
在这里插入图片描述
选择虚拟磁盘存放地址
在这里插入图片描述
检查虚拟机配置,如果没有什么问题,点击完成
在这里插入图片描述
启动虚拟机,鼠标点击虚拟机屏幕,使用键盘上下键移动光标位置,光标在Install CentOS 7处,按下enter键
在这里插入图片描述
等待系统进入CentOS安装界面,选择简体中文
在这里插入图片描述
设置时区,选择亚洲–上海
在这里插入图片描述软件选择,GNOME桌面
在这里插入图片描述
选择自动配置分区
在这里插入图片描述
点击开始安装
在这里插入图片描述
设置root密码
在这里插入图片描述
创建用户
在这里插入图片描述
等待…安装完成,重启虚拟机
在这里插入图片描述
初始设置,完成授权
在这里插入图片描述在这里插入图片描述
进入centos登录界面
在这里插入图片描述

二、配置虚拟机网络

编辑—>虚拟机网络编辑器–>NAT模式–>DHCP设置
在这里插入图片描述
查看网络信息
在这里插入图片描述
打开终端面板,进入root模式
在这里插入图片描述

vi /etc/sysconfig/network-scripts/ifcfg-ens33 

修改网络配置,配置如下:
在这里插入图片描述
使用wq命令保存,使用下面命令重启网络服务

service network restart

免密登录配置

修改主机名称

vi /etc/hostname

编辑映射文件hosts

vi /etc/hosts

添加如下配置

192.168.245.200 master 
192.168.245.201 slave1
192.168.245.202 slave2
# 生成公钥与私钥(三次回车)
ssh-keygen -t rsa		

将~/.ssh/id_rsa.pub 分发到节点服务器的~/.ssh目录下,并重命名为 authorized_keys

for i in {1..2};do scp -r ~/.ssh/authorized_keys root@slave${i}:~/.ssh/;done

这样便可以实现不同节点服务器免密登录
在这里插入图片描述
每台服务器都需要配置

三、安装jdk

上传jdk到linux系统,这里使用jdk1.8版本
在这里插入图片描述
将其解压到指定目录下

tar -zxvf jdk-8u301-linux-x64.tar.gz -C /home/local/

移动至java目录

mv jdk1.8.0_301 java

配置环境

vim /etc/profile

添加如下配置

#java
export JAVA_HOME=/home/local/java
export JRE_HOME=/home/local/java/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source /etc/profile

在终端输入java -version,出现下面信息,说明配置成功。
在这里插入图片描述

四、安装hadoop

上传hadoop安装包到linux系统,这里使用hadoop2.8.5版本
在这里插入图片描述
解压安装包

tar -zxvf hadoop-2.8.5.tar.gz -C /home/local/

移动至hadoop目录

 mv hadoop-2.8.5/ hadoop

配置hadoop环境

vi /etc/profile

添加如下配置

#hadoop
export HADOOP_HOME=/home/local/hadoop
export PATH=$PATH:${HADOOP_HOME}/bin

使用配置的环境变量立即生效

source /etc/profile

配置 hadoop-env.sh 文件,指定java安装目录

cd $HADOOP_HOME/etc/hadoop

修改hadoop-env.sh文件

vi /hadoop-env.sh

配置如下

export JAVA_HOME=/home/local/java

配置Hadoop主要文件

核心配置文件 —— core-site.xml

HDFS 配置文件 —— hdfs-site.xml

YARN 配置文件 —— yarn-site.xml

MapReduce 配置文件 —— mapred-site.xml

1.core-site.xml

<configuration>
<!-- 指定 NameNode 的地址 -->
   <property>
      <name>fs.defaultFS</name>
      <value>hdfs://master:9000</value>
   </property>
<!-- 指定 Hadoop 数据的存储目录 -->
   <property>
      <name>hadoop.tmp.dir</name>
      <value>/opt/hadoop/tmp</value>
   </property>
<!-- 配置 HDFS 网页登录使用的静态用户为 master -->
   <property>
      <name>hadoop.http.staticuser.user</name>
      <value>master</value>
   </property>
</configuration>

2.hdfs-site.xml

<configuration>
    <property>
       <name>dfs.replication</name>
       <value>3</value>
    </property>
    <property>
       <name>dfs.namenode.name.dir</name>
       <value>file:/opt/hadoop/dfs/name</value>
    </property>
    <property>
       <name>dfs.datanode.data.dir</name>
       <value>file:/opt/hadoop/dfs/data</value>
    </property>
    <property>
       <name>dfs.namenode.http-address</name>
       <value>master:9870</value>
    </property>
    <property>
       <name>dfs.namenode.secondary.http-address</name>
       <value>slave2:9871</value>
    </property>
</configuration>

3.yarn-site.xml

<configuration>
<!-- Site specific YARN configuration properties -->
   <!-- 指定 MR 走 shuffle -->
   <property>
       <name>yarn.nodemanager.aux-services</name>
       <value>mapreduce_shuffle</value>
   </property>

   <property>
       <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
       <value>org.apache.hadoop.mapred.ShuffleHandler</value>
   </property>
   
   <property>
       <name>yarn.resourcemanager.address</name>
       <value>master:8032</value>
   </property>
   <property>
       <name>yarn.resourcemanager.scheduler.address</name>
       <value>master:8030</value>
   </property>
   <property>
       <name>yarn.resourcemanager.resource-tracker.address</name>
       <value>master:8031</value>
   </property>
   <property>
       <name>yarn.resourcemanager.admin.address</name>
       <value>master:8033</value>
   </property>
   <!-- 指定 客户端web 的地址-->
   <property>
       <name>yarn.resourcemanager.webapp.address</name>
       <value>master:8088</value>
   </property>

   <!-- 环境变量的继承 -->
   <property>
        <name>yarn.nodemanager.env-whitelist</name>
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
   </property>

   <!-- 如果要程序的运行日志信息上传到HDFS系统上,可配置日志聚集(选择配置) -->
   <!-- 开启日志聚集功能 -->
   <property>
     <name>yarn.log-aggregation-enable</name>
     <value>true</value>
   </property>
   <!-- 设置日志聚集服务器地址 -->
   <property>
     <name>yarn.log.server.url</name>
     <value>http://master:19888/jobhistory/logs</value>
   </property>
  <!-- 设置日志保留时间为7天 -->
   <property>
     <name>yarn.log-aggregation.retain-seconds</name>
     <value>604800</value>
   </property>
</configuration>

4.mapred-site.xml

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>master:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>master:19888</value>
    </property>
</configuration>

五、启动hadoop
进入hadoop安装目录的sbin文件下,分别启动hdfs和yarn

./start-dfs.sh && ./start-yarn.sh

使用jps命令查看进程
在这里插入图片描述
六、访问Web UI界面
客户端Web页面
http://192.168.245.200:8088/cluster/nodes
在这里插入图片描述
hdfs页面
在这里插入图片描述

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

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

相关文章

kafka消息队列最常用的两种模式,以及应用场景

目录 一、发布-订阅模式 二、点对点模式 三、应用场景 一、发布-订阅模式 发布-订阅模式是最常见的消息传递模式&#xff0c;其中消息发布者将消息发送到一个或多个主题&#xff08;Topic&#xff09;&#xff0c;而订阅者可以选择订阅一个或多个主题来接收消息。每个订阅者…

在嵌入式系统开发培训中常用的数据库有哪些种?

数据库是一种储存和管理、组织数据的仓库&#xff0c;在嵌入式开发当中起到至关重要的作用。一个在嵌入式培训中&#xff0c;我们可学习使用的数据库有多种&#xff0c;每种数据库都会呈现出不同的一面&#xff0c;那么我们在嵌入式系统开发培训中可用到的数据库都有哪几种&…

JQuery(二):DOM操作、动画、遍历、事件绑定

1.DOM操作 1.1内容操作 html(): 获取/设置元素的标签体内容 <a><font>内容</font></a> --> <font>内容</font>text(): 获取/设置元素的标签体纯文本内容 <a><font>内容</font></a> --> 内容val()&am…

RK3588+FPGA视频实时处理与双屏显示、存储解决方案

主板平台的主要功能电路示意图 在ARM端: 脚踏开关是电平输入10 口&#xff0c;双路。 触摸面板与主板的连接方式为 UART 外加12V 电源。 键盘为自开发产品&#xff0c;通过USB透传 UART&#xff0c;并传递12V电源USB、千兆网络为主板上的接口&#xff0c;USB 为3.0版本host 接口…

Hadoop 之 单机部署和测试(一)

Hadoop单机部署和测试 一.单机部署1.安装 JDK&#xff08;JDK11&#xff09;2.安装 HADOOP3.测试 一.单机部署 系统版本&#xff1a;cat /etc/anolis-release1.安装 JDK&#xff08;JDK11&#xff09; #!/bin/bashTOP_PATH$(pwd) JAVA_PATH/usr/local/java FILEls $TOP_PATH/…

【Linux | Shell】结构化命令2 - test命令、方括号测试条件、case命令

目录 一、概述二、test 命令2.1 test 命令2.2 方括号测试条件2.3 test 命令和测试条件可以判断的 3 类条件2.3.1 数值比较2.3.2 字符串比较 三、复合条件测试四、if-then 的高级特性五、case 命令 一、概述 上篇文章介绍了 if 语句相关知识。但 if 语句只能执行命令&#xff0c…

兴达易控modbus转profinet网关与三菱变频器通讯

本案例分享兴达易控modbus转profinet网关&#xff08;MDPN100&#xff09;连接西门子1200plc&#xff0c;实现三菱变频器485通讯兼容转modbusTCP通信&#xff0c;在博图中配置。 拓展图 打开博图&#xff0c;并添加PLC 加载由兴达易控免费提供的modbus转profinet GSD文件 安装网…

基于MSP432P401R送药小车【2021年电赛F题】

文章目录 一、任务清单1. 硬件部分2. 软件部分 二、神经网络训练1. 创建数据集2. 数据采集3. 数字训练 三、OpenMV数字及其坐标识别四、巡线1. 直行2. 转向3. 停止 五、路口判断与原路径返回六、技术交流 由于前边已经用MSP430做过一遍该赛题了&#xff0c;这里就不再重复叙述赛…

Java培训:什么是Busy spin?为什么要使用Busy spin?

Busy spin(繁忙自旋)是一种线程等待的技术&#xff0c;它通过循环检查条件来等待某个事件或条件的发生&#xff0c;而不进行阻塞或休眠。 通常情况下&#xff0c;线程等待事件发生的方式是使用阻塞或休眠操作&#xff0c;这样线程会释放CPU资源&#xff0c;其他线程可以继续执行…

Qt6 Qt Quick UI原型学习QML第二篇

Qt6 Qt Quick UI原型学习QML第二篇 界面效果QML语法语法讲解核心要素项目元素矩形元素文本元素图像元素MouseArea元素 界面效果 QML语法 import QtQuick 2.12 import QtQuick.Window 2.12Window {id: rootvisible: truewidth: 640height: 480title: qsTr("QML学习第二篇&…

【题解】 模拟赛2 题解

T1 假设商品价格为x 618:int(x*0.66) 211:x-(x/100)*35 两者比较一下大小即可 #include<bits/stdc.h> using namespace std;int x,x1,x2;int main(){scanf("%d",&x);x1 x*0.66;x2 x-(x/100)*35;if (x1 x2) printf("both\n%d",x1);if (x1 &g…

浏览器打开PDF标题乱码

问题 使用 itext5 用pdf模板生成预览pdf乱码问题 解决办法 使用pdf编辑器打开之后&#xff0c;选择 文件>> 属性&#xff0c; 修改乱码的标题。

【业务功能篇45】SSM整合shiro项目:web.xml执行顺序

web.xml 的加载顺序是&#xff1a;ServletContext -> context-param -> listener -> filter -> servlet 学习shiro时&#xff0c;需要配置shiro &#xff0c;我们需要在filter过滤器之前&#xff0c;先初始化好shiro组件&#xff0c;不然请求认证无法走到shiro,根据…

plt.text()函数解析

plt.text(x, y, s, fontsize, verticalalignment,horizontalalignment,rotation , *kwargs) 参数&#xff1a; x,y:表示坐标值上的值s:表示说明文字fontsize:表示字体大小verticalalignment&#xff1a;垂直对齐方式 &#xff0c;参数&#xff1a;[ ‘center’ | ‘top’ | ‘…

【公益】Q学友联合东湖街道开展“星级大厨来做客”技能培训活动

“大家一定要用温水和面&#xff0c;和面时要注意方向和力度&#xff0c;往同一个方向揉面……”在东湖街道综合文体服务中心一楼的中式面点培训现场&#xff0c;飘荡着阵阵面香&#xff0c;充斥着欢声笑语。 为进一步丰富居民业余文化生活&#xff0c;提高灵活就业人员的职业技…

手把手教你搭建SpringCloud项目:什么是微服务?一看就会系列!

什么是微服务&#xff1f;一看就会系列&#xff01; 一、手把手教你搭建SpringCloud项目&#xff08;一&#xff09;图文详解&#xff0c;傻瓜式操作 二、手把手教你搭建SpringCloud项目&#xff08;二&#xff09;生产者与消费者 三、手把手教你搭建SpringCloud项目&#x…

mpVue 微信小程序基于vant-weapp 组件的二次封装TForm 表单组件(修改源码插槽使用)

一、前言 1、mpVue微信小程序不支持动态组件&#xff08;<component> &#xff09; 2、mpVue微信小程序不支持动态属性及事件穿透&#xff08;$attrs和$listeners&#xff09; 3、mpVue微信小程序不支持render函数 二、最终效果 三、配置参数&#xff08;Attributes&…

Qt6 Qt Quick UI原型学习QML第三篇

文章目录 效果QML代码ClickableImage.qml文件Image&#xff08;图片&#xff09;元素 解释 MyQML.qml文件 解释&#xff1a;Window元素、Item元素、Image元素、MouseArea元素、Column元素、Row元素、Grid元素、Flow元、Repeater元素 效果 QML代码 ClickableImage.qml文件 图像…

[JavaScript] 第三章 Chrome 浏览器中执行 JavaScript

系列文章目录 [JavaScript] 第一章 暂无 [JavaScript] 第一章 暂无 [JavaScript] 第三章 Chrome 浏览器中执行 JavaScript 文章目录 系列文章目录前言1、准备工作1.1、创建html工程1.2、创建html文件夹&#xff0c;存放html文件1.3、创建JavaScript演示html1.4、通过idea打开页…

Unity打包窗口化放大、缩小、拖拽功能、无边框设置 C#

Unity打包Windows窗口实现放大、缩小、拖拽、无边框 文章目录 Unity打包Windows窗口实现放大、缩小、拖拽、无边框前言一、引入 user32.dll二、使用步骤1.引入库2.功能封装3.效果图如下&#xff0c;绑定自定义按钮 总结 前言 Unity无边框设置、窗口化放大、缩小、拖拽 提示&am…