hadoop全分布式搭建(三台虚拟机,一个主节点,两个从节点)

根据尚硅谷哔哩哔哩视频搭建:bilibili.com/video/BV1Qp4y1n7EN/

安装虚拟机教程可参考:VMware虚拟机 安装 Centos7(linux)(新手超详细教程)_vmware安装centos7教程-CSDN博客

集群配置如下: 

 

一、先配置一台虚拟机hadoop101

1‘安装完修改ip 

以下内容都在root用户下进行

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

注意: 网络配置不使用虚拟机设置修改就要与安装时一致,ip可以修改

vim /etc/sysconfig/network-scripts/ifcfg-ens33
内容如下:
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="922b4573-63d9-44ae-ac4a-411515a8f4e4"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.100.10GATEWAY=与配置的时网卡中的一致
DNS1=与配置的时网卡中的一致

注意:本教程安装,将hadoop的相关配置全部配置完毕后再克隆虚拟机,没有使用视频中的分发脚本。

2.修改主机名

vim /etc/hostname

内容如下:

hadoop101

3.测试网络是否通畅

​ping www.baidu.com

4.创建目录

cd /optmkdir softwaremkdir module

5.卸载系统自带的jdk

查找是否有jdk:

rpm -qa | grep -i java

 删除jdk:

rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps

检查是否删除干净:

rpm -qa | grep -i java

6.安装jdk

将jdk的包拖入虚拟机

出现的信息即为压缩包所在地址,如果没有出现可能在桌面/home目录下,或者上传不成功。上传不成功再次上传即可。

解压到module目录下和视频中一样:

tar -zxvf /tmp/VMwareDnD/w7eciW/jdk-8u281-linux-x64.tar.gz -C /opt/module

删除压缩包:

rm -rf /tmp/VMwareDnD/w7eciW/jdk-8u281-linux-x64.tar.gz

进入/opt/module/jdk1.8.0_281

cd /opt/module/jdk1.8.0_281/
ll 

进入/etc/profile.d/,配置环境变量

cd /etc/profile.d/
vim my_env.sh

内容如下:

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_281
export PATH=$PATH:$JAVA_HOME/bin

加载环境变量

source /etc/profile

查看java信息

java

 7.安装Hadoop

将hadoop的包拖入虚拟机

解压到module目录下: 

tar -zxvf /tmp/VMwareDnD/w7eciW/hadoop-3.2.4.tar.gz /opt/module/

进入/opt/module/hadoop-3.2.4/目录,配置环境变量

cd /opt/module/hadoop-3.2.4/sudo vim /etc/profile.d/my_env.sh

加入以下内容:

#HADOOP_HOMEexport HADOOP_HOME=/opt/module/hadoop-3.2.4export PATH=$PATH:$HADOOP_HOME/binexport PATH=$PATH:$HADOOP_HOME/sbin

加载环境变量

source /etc/profile

查看hadoop信息

hadoop

 8.提前设置hadoop之间ip映射

vim /etc/hosts
192.168.100.10 hadoop101
192.168.100.11 hadoop102
192.168.100.12 hadoop103

9.Hadoop配置文件修改

 首先进入$HADOOP_HOME/etc/hadoop

cd $HADOOP_HOME/etc/hadoop

根据集群规划,配置文件:

core-site.xml:

vim core-site.xml

加入以下内容:

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

注意:不同的hadoop版本目录不同需要修改

 hdfs-site.xml:

vim hdfs-site.xml

加入内容如下:

<configuration><!-- nn(NameNode) web 端访问地址--><property><name>dfs.namenode.http-address</name><value>hadoop101:9870</value></property><!-- 2nn(SecondaryNameNode) web 端访问地址--><property><name>dfs.namenode.secondary.http-address</name><value>hadoop103:9868</value></property></configuration>

yarn-site.xml:

vim yarn-site.xml

加入内容如下:

<configuration><!-- 指定 MR 走 shuffle --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!-- 指定 ResourceManager 的地址--><property><name>yarn.resourcemanager.hostname</name><value>hadoop102</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></configuration>

mapred-site.xml:

vim mapred-site.xml

加入以下内容:

<configuration><!-- 指定 MapReduce 程序运行在 Yarn 上 --><property><name>mapreduce.framework.name</name><value>yarn</value></property></configuration>

10.群起集群

配置workers

vim /opt/module/hadoop-3.2.4/etc/hadoop/workers

内容如下:

hadoop101
hadoop102
Hadoop103

注:该文件中添加内容结尾不允许有空格,文件中不允许有空行,删除local等信息

二、克隆两台虚拟机 

 1.分别修改三台虚拟机的ip和主机名

修改ip:只用改IPADDR与下面一致

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

修改主机名:

vim /etc/hostname

重启虚拟机它才会更新

reboot

重启后,输入如下内容查看ens33下的inet是否与修改的ip一致

ifconfig

查看网络是否连接

ping www.baidu.com

查看hostname

hostname

2.设置免密登录

在hadoop101中:

获取公钥

ssh-keygen -t rsa

按三次空格

分发公钥

ssh-copy-id hadoop103ssh-copy-id hadoop104ssh-copy-id hadoop102

第一次访问要输入yes,输入每个虚拟机的root密码

在hadoop102和hadoop103中重复以上步骤

 三、启动集群

在hadoop101(主节点)上格式化

cd /opt/module/hadoop-3.2.4hdfs namenode -format

查看目录下是否有data和logs文件夹

ll

配置hadoop环境变量,定义hadoop组件以root用户运行

cd $HADOOP_HOME/etc/hadoop
vim hadoop-env.sh

在第一行加入一下内容:

export HDFS_NAMENODE_USER=rootexport HDFS_DATANODE_USER=rootexport HDFS_SECONDARYNAMENODE_USER=root

在hadoop103中

配置hadoop环境变量,定义hadoop组件以root用户运行

cd $HADOOP_HOME/etc/hadoopvim hadoop-env.sh

在第一行加入一下内容:

export YARN_RESOURCEMANAGER_USER=rootexport YARN_NODEMANAGER_USER=root

启动集群

在hadoop101上执行:

cd $HADOOP_HOME/sbin/start-dfs.sh

在hadoop102上执行:

cd $HADOOP_HOME/sbin/start-yarn.sh

关闭防火墙

在hadoop101,102,103上执行:

systemctl stop firewalld.service

在windowns系统的浏览器中输入hadoop101的IP:9870,可以看到文件管理

在windowns系统的浏览器中输入hadoop102的IP:8088,可以看到资源管理

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

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

相关文章

【计算机网络 - 基础问题】每日 3 题(三十八)

✍个人博客&#xff1a;https://blog.csdn.net/Newin2020?typeblog &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞…

【华为HCIP实战课程七】OSPF邻居关系排错MTU问题,网络工程师

一、MTU MUT默认1500,最大传输单元,一致性检测 [R3-GigabitEthernet0/0/1]mtu 1503//更改R3的MTU为1503 查看R3和SW1之间的OSPF邻居关系正常: 默认华为设备没有开启MTU一致性检测! [R3-GigabitEthernet0/0/1]ospf mtu-enable //手动开启MTU检测 [SW1-Vlanif30]ospf mtu…

PCL点云处理之求法向量

求法向量干什么&#xff1f;将点渲染成面 1、一个点垂直于一个曲线的切线叫法线 2、在点云中取一块区域&#xff0c;用最小二乘将区域中的点云拟合成一个面&#xff08;贴合在曲面上的一个切面&#xff09;在相近的区域计算出n个这样的面&#xff0c;用这个面求出法向量&#…

第十五届蓝桥杯C++B组省赛

文章目录 1.握手问题解题思路1&#xff08;组合数学&#xff09;解题思路2&#xff08;暴力枚举&#xff09; 2.小球反弹做题思路 3.好数算法思路&#xff08;暴力解法&#xff09;---不会超时 4.R格式算法思路 5.宝石组合算法思路---唯一分解定理 6.数字接龙算法思路----DFS 7…

分布式数据库的进度管理:TiDB 备份恢复工具 PiTR 的原理与实践

导读 对于一款企业级数据库产品而言&#xff0c;数据的安全性和可恢复性是至关重要的。PiTR&#xff08;Point in Time Restore&#xff09;作为 TiDB 备份工具的核心功能之一&#xff0c;提供了一种精细的数据恢复能力&#xff0c;允许用户将数据库集群恢复到过去的任意时间点…

C语言 | 第十六章 | 共用体 家庭收支软件-1

P 151 结构体定义三种形式 2023/3/15 一、创建结构体和结构体变量 方式1-先定义结构体&#xff0c;然后再创建结构体变量。 struct Stu{ char *name; //姓名 int num; //学号 int age; //年龄 char group; //所在学习小组 float score; //成绩 }; struct Stu stu1, stu2; //…

基于SpringBoot+Vue+Uniapp的植物园管理小程序系统(2024最新,源码+文档+远程部署+讲解视频等)

3. 论文参考 4. 项目运行截图 5. 技术框架 5.1 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念&#xff0c;提供了一套默认的配置&#xff0c;让开发者可以更专注于业务逻辑而不是配置文件。Spring …

Spring Boot在知识管理中的应用

1系统概述 1.1 研究背景 如今互联网高速发展&#xff0c;网络遍布全球&#xff0c;通过互联网发布的消息能快而方便的传播到世界每个角落&#xff0c;并且互联网上能传播的信息也很广&#xff0c;比如文字、图片、声音、视频等。从而&#xff0c;这种种好处使得互联网成了信息传…

数据检测和响应:DDR 用于数据安全

数据检测和响应 (DDR) 用于主动数据安全态势管理 企业必须保护其数据免受网络攻击&#xff0c;主要有三个原因&#xff1a; 1. 公司有法律义务保证客户信息的安全&#xff1b; 2. 不这样做会损害公司的声誉&#xff1b; 3. 补救数据泄露的影响可能代价高昂&#xff0c;而且…

数据结构前置知识(上)

1. 初识集合框架 1.1 什么是集合框架 在了解集合框架之前,我们先来认识一下数据结构,所谓数据结构就是描述和组织数据的一个东西. 那什么是集合框架呢?在java里面集合框架(Java Collection Framework),又被称为容器container,说白了就是很多个接口,抽象类,实现类组成的一个包,…

架构设计笔记-12-信息系统架构设计理论与实践

目录 知识要点 案例分析 1.Java企业级应用系统 2.c/s架构&#xff0c;b/s架构 知识要点 软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式。架构风格定义了一类架构所共有的特征&#xff0c;主要包括架构定义、架构词汇表和架构约束。 数据挖掘是从数据库的大…

OceanBase 4.x 部署实践:如何从单机扩展至分布式部署

OceanBase 4.x 版本支持2种部署模式&#xff1a;单机部署与分布式部署&#xff0c;同时支持从单机平滑扩展至分布式架构。这样&#xff0c;可以有效解决小型业务向大型业务转型时面临的扩展难题&#xff0c;降低了机器资源的成本。 以下将详述如何通过命令行&#xff0c;实现集…

解决IPv6网络引起的网页与程序卡顿问题-本地DNS解析方案

一、问题环境 连接IPv6WiFi网络时&#xff0c;易出现网页打不开&#xff0c;程序开启无法加载画面。系统环境为Win10。 二、解决思路 在用户端无法触及路由器、网关等管理资源时&#xff0c;只能从本地环境中更改配置。多适用于公共WiFi&#xff0c;私人WiFi可直接从路由器DNS、…

手撕数据结构 —— 队列(C语言讲解)

目录 1.什么是队列 2.如何实现队列 3.队列的实现 Queue.h中接口总览 具体实现 结构的定义 初始化 销毁 入队列 出队列 取队头元素 取队尾元素 判断是否为空 获取队列的大小 4.完整代码附录 Queue.h Queue.c 1.什么是队列 队列是一种特殊的线性表&#xff0…

【uni-app】HBuilderX安装uni-ui组件

目录 1、官网找到入口 2、登录帐号 3、打开HuilderX 4、选择要应用的项目 5、查看是否安装完成 6、按需安装 7、安装完毕要重启 8、应用 前言&#xff1a;uniapp项目使用uni-ui组件方式很多&#xff0c;有npm安装等&#xff0c;或直接创建uni-ui项目&#xff0c;使用un…

【Oracle数据库进阶】001.SQL基础查询_查询语句

课 程 推 荐我 的 个 人 主 页&#xff1a;&#x1f449;&#x1f449; 失心疯的个人主页 &#x1f448;&#x1f448;入 门 教 程 推 荐 &#xff1a;&#x1f449;&#x1f449; Python零基础入门教程合集 &#x1f448;&#x1f448;虚 拟 环 境 搭 建 &#xff1a;&#x1…

Aria2Cloudreve任意文件写入到RCE

什么是Aria2 Aria2 是一个轻量级的命令行下载工具&#xff0c;支持多种下载协议&#xff0c;如 HTTP、FTP、SFTP、BitTorrent 和 Metalink。它以其强大的多源下载能力而著称&#xff0c;可以同时从多个服务器或对等节点下载文件&#xff0c;加快下载速度。Aria2 占用资源少&am…

【C++】拆分详解 - vector

文章目录 一、vector的介绍二、vector的使用1. 构造2. 迭代器3. vector 空间增长问题4. 增删查改5. vector 迭代器失效问题5.1 底层空间改变&#xff08;扩容、缩容&#xff09;5.2 指定位置元素的删除操作5.3 Linux与VS平台差异 三、vector 模拟实现0. 整体框架1. 构造 / 析构…

图解 微信开发者工具 小程序源码 调试、断点标记方法 , 微信小程序调试器,真机调试断点调试方法,小程序网络API请求调试方法 总结

在我们使用微信开发者工具进行微信小程序开发的时候&#xff0c;在这个微信开发者工具的代码编辑框里面我们是无法像使用vscode, idea等IDE工具时那样直接对代码打断点进行调试&#xff0c; 原因是小程序实际上他就是一个web浏览器应用的包装, 在其内部使用的还是类似chrome的…

塔吊识别数据集 yolo格式 共5076张图片 已划分好训练验证 txt格式 yolo可直接使用

塔吊识别数据集 yolo格式 共5076张图片 已划分好训练验证 txt格式 yolo可直接使用。 类别&#xff1a;塔吊(Tower-crane) 一种 训练数据已划分&#xff0c;配置文件稍做路径改动即可训练。 训练集&#xff1a; 4724 &#xff08;正面3224 负面1500&#xff09; 验证集&#xf…