超级无敌详细使用ubuntu搭建hadoop完全分布式集群

2023-10-28

一、软件准备

  1. 安装VMware
  2. 下载ubuntu镜像(阿里源ubuntu下载地址)选择自己适合的版本,以下我使用的是18.04-server版就是没有桌面的。安装桌面版如果自己电脑配置不行的话启动集群容易卡死。

(说明一下哈就是桌面版和服务器版没什么太大的区别,桌面版为个人电脑所配置,预装了图形界面和一些其他软件,比如LibreOffice,音乐播放器,游戏等等,而服务器版没有这些东西,服务器版启动之后只有一个黑屏+光标,所有的操作都是命令形式的)


  1. 下载Hadoop和jdk(链接:https://pan.baidu.com/s/1QL4flw5_XRhVrGouZyPhjg
    提取码:a0z6 )也可以去官网下载。
  2. 准备xshell和xftp后期要使用xftp网虚拟机上上传文件(链接:https://pan.baidu.com/s/1nkMCSxuVPFKO6wiLdAB7cA
    提取码:mbb6 )

二、安装过程

  1. 首先在VMware里创建一个名为master的虚拟机(在已经安装完VMware的前提下)
  • 打开VMware点击-----创建新的虚拟机弹出窗口选择典型安装即可----下一步:

  • 弹出以下窗口 选择 稍后安装操作系统----下一步:
    在这里插入图片描述

  • 选择需要安装的操作系统----下一步:
    在这里插入图片描述

  • 这里设置虚拟机的名字和要安装的位置----下一步:
    在这里插入图片描述

  • 设置磁盘容量----下一步:
    在这里插入图片描述

  • 这里先不要点击完成选择自定义硬件
    在这里插入图片描述

  • 这里指定自己ISO镜像的位置----关闭
    在这里插入图片描述

  • 点击完成
    在这里插入图片描述

  • 可以看到VMware下生成了一个名为master的虚拟机----点击开启此虚拟机。
    (现在虚拟机还不能使用,现在就相当于一个没有安装操作系统的空电脑,只有躯体没有灵魂)
    在这里插入图片描述

  • 点开之后会一阵加载文件,等一会会出现下面界面:
    在这里插入图片描述

  • 这里选择继续而不更新----摁回车
    在这里插入图片描述

  • 这里是设置键盘默认就可以了----摁回车
    在这里插入图片描述

  • 这里也是直接默认就可以了----摁回车
    在这里插入图片描述

  • 这里是设置代理服务器的,不用填写直接回车就可以了
    在这里插入图片描述

  • 设置下载源
    在这里插入图片描述
    在这里插入图片描述

  • 选择Done直接回车就可以了
    在这里插入图片描述

  • 这里也是默认直接回车
    在这里插入图片描述

  • 上一步回车之后会弹出一个对话框如下图:----选择Continue回车
    在这里插入图片描述

  • 设置用户名和主机名设置完之后选在Done进行下一步
    在这里插入图片描述

  • 选择安装OpenSSH 服务
    在这里插入图片描述

  • 直接选择Done进行下一步
    在这里插入图片描述

  • 安装页面
    在这里插入图片描述

  • 更新包和重启虚拟机,选择完之后还要等一会
    在这里插入图片描述

  • 经过漫长的等待出现下面界面直接按回车继续执行
    在这里插入图片描述

  • 出现下面界面摁回车就可以
    在这里插入图片描述

  • 执行上一步的话会出现下面界面使用用户密码登录
    在这里插入图片描述

  • 使用用户名登陆上去就说明这台虚拟机已经可以工作了
    在这里插入图片描述

三、环境基础配置

节点

IP地址

主机名

master

192.168.100.100

master

slave1

192.168.100.101

slave1

slave2

192.168.100.102

slave2

1.配置静态IP、hosts文件、克隆虚拟机、更改主机名

在配置静态IP之前要看一下VMware虚拟网卡的网段

在这里插入图片描述

  • 配置静态IP

    cd /etc/netplan
    ls

在这里插入图片描述

  • 查看完配置文件使用 vi 命令进行配置

    sudo vi 00-installer-config.yaml

在这里插入图片描述

  • vi 进入配置文件

vi 编辑器刚进入的时候默认是命令模式,要按一下 i 进入编辑模式。如果编辑完成想要退出,首先先按一下Esc到命令模式然后输如 :wq!
保存退出,如果不想保存退出就使用:q!命令。

在这里插入图片描述
在这里插入图片描述

  • 退出之后启动网卡

    sudo netplan apply
    ip a 查看IP的命令

在这里插入图片描述

  • 配置hosts文件

hosts文件是本地域名解析,一个本地的DNS。它将IP地址和主机名相互解析

也是使用vi 编辑器进行编辑
vi  /etc/hosts

在这里插入图片描述

  • 克隆虚拟机

先关闭master虚拟机然后点击虚拟机-----管理----克隆----下一步----下一步----选择创建完全克隆----下一步----更改虚拟机名称为slave1,位置自己选择即可。点击完成。即可看到VMware里多了一台名为slave1的虚拟机。slave2操作相同,就是虚拟机名称改为slave2即可。创建完如下图:

在这里插入图片描述

  • 配置slave1和slave2

注意此时slave1和slave2虚拟机是克隆的,所以说配置文件和master是完全相同的,登录的话也是master的用户和密码(用户:hadoop 密码:你自己设置的)登录上咱们要给他更改一下主机名和IP地址。打开slave1、slave2虚拟机进行以下操作:

对slave1虚拟机进行操作的命令,操作的时候会让你输入密码
就输入hadoop用户的密码

hostnamectl set-hostname slave1          这个命令是永久更改主机名
sudo login           执行完这个命令会让你重新登录以下直接hadoop用户登录

对slave2虚拟机进行相同操作

hostnamectl set-hostname slave2          注意这里是slave2
sudo login           

更改slave1的IP地址

vi /etc/netplan/00-installer-config.yaml
sudo netplan apply                          配置完启动一下网络服务
ip a                                        查看一下是否配置成功

在这里插入图片描述

  • 更改slave2的IP地址

操作跟slave1命令一样,把 0 改成 2 保存退出即可,也要使用sudo netplan apply
命令启动一下网络服务。使用ip a查看一下是否配置成功

在这里插入图片描述

2.配置ssh免密登录

ssh-keygen -t rsa    每台机器都要执行这个命令,一路回车就可以了
  • 执行完上面的命令,会发现用户目录下有一个.ssh的目录,使用下面的命令查看一下

    cd ~/.ssh/
    ls

在这里插入图片描述

现在在master节点touch一个名为authorized_keys的文件然后使用cat命令将master的公钥追加到这个文件里。命令如下:

touch authorized_keys
cat id_rsa.pub >> authorized_keys

在这里插入图片描述

然后将slave1的公钥使用scp命令传到master节点上

scp ~/.ssh/id_rsa.pub hadoop@msater:~/

在这里插入图片描述

  • 可以看到master节点用户命令下多了一个id_rsa_pub的文件
    在这里插入图片描述

  • 同样使用cat命令将slave1的公钥追加到authorized_keys文件里

    cat id_rsa_pub >> .ssh/authorized_keys
    cat .ssh/authorized_keys

在这里插入图片描述

使用相同的命令将slave2的公钥传到master节点里并写入authorized_keys文件里

scp /home/hadoop/.ssh/id_rsa.pub hadoop@master:~/ 在slave2里执行

(这里说明一下执行完上面这个命令会把之前咱们传的slave1的公钥文件覆盖掉,没什么影响。在master节点里执行下面的命令)

cat id_rsa_pub >> .ssh/authorized_keys
cat .ssh/authorized_keys

在这里插入图片描述

然后使用scp命令将master节点里的authorized_keys文件分别上传到slave1和slave2节点的.ssh/目录下

scp /home/hadoop/.ssh/authorized_keys hadoop@slave1:~/.ssh/
scp /home/hadoop/.ssh/authorized_keys hadoop@slave2:~/.ssh/
  • 验证ssh免密登录

    ssh slave1 远程登录slave1命令,如果想登录其他节点,将slave1改成其他主机的主机名即可
    exit 这个是退出命令

在这里插入图片描述

3.上传并解压JDK、Hadoop压缩包

  • 使用Xftp软件进行上传

注意:使用Xftp之前要确保宿主机(就是自己的电脑)和虚拟机相互通信。

在这里插入图片描述

  • 点击连接会出现下面界面

出现下面界面,咱们可以直接把左面电脑里的文件拖到右面的虚拟机里。当然虚拟机里的文件也可以直接拖到自己电脑里。

在这里插入图片描述

  • 将hadoop、jdk压缩文件拖到虚拟机里
    在这里插入图片描述

  • 也可以到master用户目录下查看
    在这里插入图片描述

  • 解压hadoop、jdk

    sudo tar -zxvf hadoop-2.7.7.tar.gz -C /usr/local/ -C参数是指定解压到哪个目录下
    sudo tar -zxvf jdk-8u251-linux-x64.tar.gz -C /usr/local/
    cd /usr/local/ 到这个目录下
    ls 查看一下

在这里插入图片描述

  • 给这两个权限,归hadoop用户所有

    sudo chown -R hadoop hadoop-2.7.7/
    sudo chown -R hadoop jdk1.8.0_251
    ll 查看一下

在这里插入图片描述

4.添加环境变量

vi .bashrc        在这个文件最后添加如下内容,三台机器都需要添加。
source .bashrc     添加完成之后执行这个条命令,让其生效。

在这里插入图片描述

  • 验证一下是否添加成功

    java -version

在这里插入图片描述

四、配置Hadoop文件

  • 首先进入存放Hadoop配置文件的目录

    cd /usr/local/hadoop-2.7.7/etc/hadoop/ 进入此目录
    ls 查看一下

在这里插入图片描述

1.配置核心组件core-site.xml

vi core-site.xml    打开文件,添加以下内容

<property>
	<name>fs.defaultFS</name>
	<value>hdfs://192.168.100.100:9000</value>
</property>
<property>
	<name>hadoop.tmp.dir</name>
	<value>/home/hadoop/hadoopdata</value>
</property>

在这里插入图片描述

2.配置hadoop-env.sh

vi hadoop-env.sh   添加JDK的安装目录

export JAVA_HOME=/usr/local/jdk1.8.0_251

在这里插入图片描述

3.配置hdfs-site.xml

vi hdfs-site.xml

<property>
	<name>dfs.replication</name>
	<value>3</value>
</property>

在这里插入图片描述

4.配置yarn-site.xml

vi yarn-site.xml
	
<property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
</property>
<property>
	<name>yarn.resourcemanager.address</name>
	<value>192.168.100.100:18040</value>
</property>								        
<property>
	<name>yarn.resourcemanager.scheduler.address</name>
	<value>192.168.100.100:18030</value>
</property>
<property>
	<name>yarn.resourcemanager.resource-tracker.address</name>
	<value>192.168.100.100:18025</value>
</property>
<property>
	<name>yarn.resourcemanager.admin.address</name>
	<value>192.168.100.100:18141</value>
</property>
<property>
	<name>yarn.resourcemanager.webapp.address</name>
	<value>192.168.100.100:18088</value>
</property>

在这里插入图片描述

5.配置mapred-site.xml

使用cp命令复制mapred-site.xml.template文件为mapred-site.xml

cp mapred-site.xml.template  mapred-site.xml     使用cp命令进行复制

vi mapred-site.xml   添加以下内容

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

在这里插入图片描述

6.配置yarn-env.sh

vi yarn-env.sh

export JAVA_HOME=/usr/local/jdk1.8.0_251

在这里插入图片描述

五、复制文件

1.使用scp命令将hadoop、jdk文件复制到slave1和slave2节点上。

在master节点执行下面命令

sudo scp -r /usr/local/hadoop-2.7.7 hadoop@slave1:~/
sudo scp -r /usr/local/hadoop-2.7.7 hadoop@slave2:~/
sudo scp -r /usr/local/jdk1.8.0_251 hadoop@slave1:~/
sudo scp -r /usr/local/jdk1.8.0_251 hadoop@slave2:~/
此时已经将这两个文件复制到slave1、slave2节点的用户目录下

2.移动文件

在slave1、slave2节点执行下面命令
sudo mv /home/hadoop/hadoop-2.7.7/ /usr/local/
sudo mv /home/hadoop/jdk1.8.0_251/ /usr/local/

source .bashrc    生效一下环境变量,每台节点都要执行。

在这里插入图片描述

六、启动集群

1.在master节点格式化namenode

hdfs namenode -format       进行格式化

2.start-all.sh启动集群

start-all.sh 

在这里插入图片描述

  • 查看slave1节点的进程
    在这里插入图片描述

  • 查看slave2节点的进程
    在这里插入图片描述

3.通过浏览器访问UI 集群信息图

192.168.100.100:50070

在这里插入图片描述

4.通过浏览器访问Yarn web 信息图

在这里插入图片描述

至此Hadoop完全分布式搭建完成

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

超级无敌详细使用ubuntu搭建hadoop完全分布式集群 的相关文章

随机推荐

  • win10系统定位服务器地址,win10系统定位服务器地址

    win10系统定位服务器地址 内容精选 换一换 将NFS文件系统挂载到Windows IIS服务器时 报错路径格式不支持 挂载失败 IIS Web服务器的物理路径错误 根据可能原因进行故障排查 如图1为文件系统的挂载地址 如图2需填写的物理
  • TV二次侧为什么必须接地?

    TV二次侧为什么必须接地 答 TV二次侧接地属保护接地 为防止一 二次侧绝缘损坏击穿 高电压串到二次侧来 对人身和设备造成危险 所以二次侧必须接地
  • xcode安装pod

    Mac终端 1 升级mac本地ruby环境 终端中输入 gem update system 如果出现权限问题 请在终端内输入sudo gem update system 2 更换镜像 移除现有镜像 gem sources remove ht
  • perl实现verilog ifdef所在域的判断

    功能描述 perl实现verilog ifdef所在域的判断 1 emacs verilog mode用于实例化很方便 但是常见项目 均存在大量ifdef的预编译命令 而emacs verilog mode不支持ifdef 2 手动实例化
  • mmdetect2d训练自己的数据集(一)—— labelme数据处理

    前言 近期在学习mmdetect 总体来说mmlab这个框架感觉上手难度还挺大的 自己也是结合b站各位up主 up主名称 我是土堆 OneShotLove 比飞鸟贵重的多 HKL 以及知乎mmlab官方边看边学 真的是保姆级教程 强烈推荐
  • C++学习(四七二)android保存文件

    1 保存到 data user 0 com flx testfilestorage files try mode参数注意下 这里使用的Context MODE PRIVATE FileOutputStream fileOutputStrea
  • 【单片机毕业设计】【mcuclub-jj-045】基于单片机的红外遥控器的设计

    最近设计了一个项目基于单片机的红外遥控器系统 与大家分享一下 一 基本介绍 项目名 红外遥控器 项目编号 mcuclub jj 045 单片机类型 STC89C52 STM32F103C8T6 具体功能 1 从机利用4 4键盘通过红外发射管
  • level7 项目实战:基于Linux的Flappy bird游戏开发

    目录 1 Flappy bird项目介绍 项目介绍 功能总结 项目框图 Ncurses库安装 Ncurses库函数介绍 2 信号机制详解 相关函数介绍 3 项目实现 1 Flappy bird项目介绍 项目介绍 目标 借助Ncurses库
  • Java--ArrayList遍历的三种方法

    Java遍历主要有以下几种 分别是利用for循环 或者for each 把链表变为数组进行遍历 利用迭代 IntIterator 遍历 下面我们分别进行学习 For循环 import java util ArrayList import j
  • ONVIF测试工具 ONVIF Device Test Tool的使用

    ONVIF测试工具 ONVIF Device Test Tool的使用 双击 打开软件 选择当前网络 点击 Discover Devices 进行搜索 可以看到搜索到一个设备
  • 使用OpenWRT配置SFTP远程文件传输,安全高效的文件传输方法

    文章目录 前言 1 openssh sftp server 安装 2 安装cpolar工具 3 配置SFTP远程访问 4 固定远程连接地址 前言 本次教程我们将在OpenWRT上安装SFTP服务 并结合cpolar内网穿透 创建安全隧道映射
  • ip代理

    为什么会出现IP被封 网站为了防止被爬取 会有反爬机制 对于同一个IP地址的大量同类型的访问 会封锁IP 过一段时间后 才能继续访问 如何应对IP被封的问题 有几种套路 修改请求头 模拟浏览器 而不是代码去直接访问 去访问 采用代理IP并轮
  • PC中自带计算器使用说明

    Backspace 删除当前显示数字的最后一位 CE 清除显示数字 C 清除当前的计算 MC 清除内存中的所有数字 MR 重调用存内存中的数字 该数字保留在内存中 MS 将显示数字保存在内存中 M 将显示的数字与内存中已有的任何数字相加 但
  • 记录一次线上OOM问题排查处理过程

    背景 项目为docker部署的springboot单体项目 非前后端分离 前端文件是集成在项目的类路径的resources路径下的 项目使用ruoyi vue版本做为开发原始代码 系统目前没什么用 主要是客户分公司在基础数据模块录入数据比较
  • 1001 害死人不偿命的(3n+1)猜想 PAT乙级真题 C++

    1001 害死人不偿命的 3n 1 猜想 卡拉兹 Callatz 猜想 对任何一个正整数 n 如果它是偶数 那么把它砍掉一半 如果它是奇数 那么把 3n 1 砍掉一半 这样一直反复砍下去 最后一定在某一步得到 n 1 卡拉兹在 1950 年
  • 简单实现动态代理(Proxy)

    前言 最近学习了Jdk的动态代理 然后自己也简单的手写了一个 思路 根据代理的接口 生成对应的Java代码文件 将生成的Java文件编译成class文件 利用URLClassLoader加载class到Jvm中 利用反射在new出这个对象
  • 小程序文字上下滚动轮播效果实现CSS

    wxml
  • CentOS7-查询可以远程登录的帐号信息

    查询可以远程登录的帐号信息 查询 etc shadow 文件 etc shadow 文件 用于存储 Linux 系统中用户的密码信息 又称为 影子文件 文件内容格式解析 用户名 加密密码 最后一次修改时间 最小修改时间间隔 密码有效期 密码
  • 谈谈初学者该怎么学电脑

    十五年前 一说电脑 就感觉是很高科技的东西 那时候一般只有计算机专业和相关行业的人才能够接触 随着信息和科技的发展 电脑已经渗入到各个行业和家庭 电脑不仅广泛用于各种工作 还普及到了家庭娱乐中 因此 掌握电脑不再仅仅是工作需要 而是一项基本
  • 超级无敌详细使用ubuntu搭建hadoop完全分布式集群

    一 软件准备 安装VMware 下载ubuntu镜像 阿里源ubuntu下载地址 选择自己适合的版本 以下我使用的是18 04 server版就是没有桌面的 安装桌面版如果自己电脑配置不行的话启动集群容易卡死 说明一下哈就是桌面版和服务器版