VMware + Ubantu18.04 搭建Hadoop集群环境

前言

本次教程是基于学校的大数据实验而做的,博主在搭建的同时,记录了自己的命令运行结果截图,在图书馆搭建环境+写博客,也花了将近3个小时。长时间眼睛对着电脑会很伤眼睛,所以童鞋们需要注意保护好眼睛,做做眼保健操。希望学到的童鞋可以点个赞!
在这里插入图片描述


VMware克隆虚拟机(准备工作,克隆3台虚拟机,一台master,两台node)

  1. 先在虚拟机中关闭系统

  2. 右键虚拟机,点击管理,选择克隆
    在这里插入图片描述

  3. 点击下一步,选择完整克隆,选择路径即可
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述


1.创建Hadoop用户(在master,node1,node2执行)

顺序执行以下命令即可

  1. 创建hadoop用户
sudo useradd -m hadoop -s /bin/bash
  1. 设置用户密码(输入两次)
sudo passwd hadoop
  1. 添加权限
sudo adduser hadoop sudo
  1. 切换到hadoop用户(这里要输入刚刚设置的hadoop密码)
su hadoop

运行截图展示(以master虚拟机为例)
在这里插入图片描述


2.更新apt下载源(在master,node1,node2执行)

sudo apt-get update

截图展示(以master为例)
在这里插入图片描述

3. 安装SSH、配置SSH免密登录 (在master,node1,node2执行)

  1. 安装SSH
sudo apt-get install openssh-server
  1. 配置SSH免密登录
ssh localhost
exit   
cd ~/.ssh/  
ssh-keygen -t rsa    #一直按回车
cat ./id_rsa.pub >> ./authorized_keys
  1. 验证免密
ssh localhost
exit   
cd ~/.ssh/  
ssh-keygen -t rsa    #一直按回车
cat ./id_rsa.pub >> ./authorized_keys

截图展示(以master为例)
在这里插入图片描述


4.安装Java环境 (在master,node1,node2执行)

  1. 下载 JDK 环境包
sudo apt-get install default-jre default-jdk
  1. 配置环境变量文件
vim ~/.bashrc
  1. 在文件首行加入
export JAVA_HOME=/usr/lib/jvm/default-java
  1. 让环境变量生效
source ~/.bashrc
  1. 验证
java -version

截图展示(以master为例)
在这里插入图片描述

修改主机名(在master,node1,node2执行)

  1. 将文件中原有的主机名删除,master中写入master,node1中写入node1,node2…(同理)
sudo vim /etc/hostname
  1. 重启三个服务器
reboot

重启成功后,再次连接会话,发现主机名改变了

截图展示(以node1为例)
在这里插入图片描述


修改IP映射(在master,node1,node2执行)

查看各个虚拟机的ip地址

ifconfig -a

如果有报错,则下载 net-tools ,然后再运行即可看到

sudo apt install net-tools

如下图,红色方框内的就是 本台虚拟机的 ip 地址
在这里插入图片描述

  1. 3台虚拟机中都需要在 hosts 文件中加入对方的ip地址
sudo vim /etc/hosts
  1. 以master为例截图展示
    在这里插入图片描述

SSH免密登录其他节点(在master上执行)

  1. 在Master上执行
cd ~/.ssh 
rm ./id_rsa*             #  删除之前生成的公匙(如果有)
ssh-keygen -t rsa        # 一直按回车就可以
cat ./id_rsa.pub >> ./authorized_keys
scp ~/.ssh/id_rsa.pub hadoop@node1:/home/hadoop/
scp ~/.ssh/id_rsa.pub hadoop@node2:/home/hadoop/

在这里插入图片描述

  1. 在node1,node2都执行
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
rm ~/id_rsa.pub    # 用完就删掉

在这里插入图片描述

  1. 验证免密登录
ssh node1
exit
ssh node2
exit

以master为例截图展示
在这里插入图片描述


安装hadoop3.2.1(在master中执行)

有些镜像的下载网址失效了,这里贴出官网的下载地址。

下载网址:hadoop3.2.1下载网址

下载好,之后通过VMware-Tools上传到master的/home/hadoop中

在这里插入图片描述
解压

cd /home/hadoop
sudo tar -zxf hadoop-3.2.1.tar.gz -C /usr/local #解压
cd /usr/local/
sudo mv ./hadoop-3.2.1/ ./hadoop            # 将文件夹名改为hadoop
sudo chown -R hadoop ./hadoop       # 修改文件权限

验证

cd /usr/local/hadoop
./bin/hadoop version

在这里插入图片描述


配置hadoop环境(这一步需要很仔细)

配置环境变量

vim ~/.bashrc

在首行中写入

export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

使得配置生效

source ~/.bashrc

创建文件目录(为后面的xml做准备)

cd /usr/local/hadoop
mkdir dfs
cd dfs
mkdir name data tmp
cd /usr/local/hadoop
mkdir tmp

配置hadoop的java环境变量

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

两个的首行都写入

export JAVA_HOME=/usr/lib/jvm/default-java

(master中)配置nodes

cd /usr/local/hadoop/etc/hadoop

删除掉原有的localhost,因为我们有2个node,就把这2个的名字写入

vim workers
node1
node2

配置 core-site.xml

vim core-site.xml

因为我们只有一个namenode,所以用fs.default.name,不采用fs.defalutFs

其次确保/usr/local/hadoop/tmp这个目录存在

<configuration>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://Master:9000</value>
    </property>
 
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/tmp</value>
    </property>
</configuration>

配置 hdfs-site.xml

vim hdfs-site.xml

dfs.namenode.secondary.http-address确保端口不要和core-site.xml中端口一致导致占用

确保/usr/local/hadoop/dfs/name :/usr/local/hadoop/dfs/data 存在

因为我们只有2个node,所以dfs.replication设置为2

<configuration>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>Master:9001</value>
    </property>
 
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/dfs/name</value>
    </property>
 
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/dfs/data</value>
    </property>
 
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
</configuration>

配置mapred-site.xml

vim mapred-site.xml
<configuration>
    <property> 
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

配置 yarn-site.xml

vim yarn-site.xml
<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>Master</value>
    </property>
 
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value> 
    </property>
 
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
</configuration>

将hadoop压缩

cd /usr/local
tar -zcf ~/hadoop.master.tar.gz ./hadoop #压缩
cd ~

复制到node1中

scp ./hadoop.master.tar.gz node1:/home/hadoop

复制到node2中

scp ./hadoop.master.tar.gz node2:/home/hadoop

在node1、node2上执行
解压

sudo rm -r /usr/local/hadoop    # 删掉旧的(如果存在)
sudo tar -zxf ~/hadoop.master.tar.gz -C /usr/local #解压
sudo chown -R hadoop /usr/local/hadoop #修改权限

首次启动需要先在 Master 节点执行 NameNode 的格式化,之后不需要

hdfs namenode -format    

(注意:如果需要重新格式化 NameNode ,才需要先将原来 NameNode 和 DataNode 下的文件全部删除!!!!!!!!!)

#看上面的文字,不要直接复制了
rm -rf $HADOOP_HOME/dfs/data/*
rm -rf $HADOOP_HOME/dfs/name/*

启动 (在master上执行)

start-all.sh
mr-jobhistory-daemon.sh start historyserver

master中,出现Warning不影响

jps

运行截图展示
在这里插入图片描述


关闭hadoop集群(在master上执行)

stop-all.sh
mr-jobhistory-daemon.sh stop historyserver

运行截图展示
在这里插入图片描述


总结

搭建环境是一件比较耗时的操作,自己亲手搭一遍,可能其中会遇到很多问题,比如说Linux的命令不熟悉,各种报错,运行结果不对等,但是这些一般都可以在网上搜索到对应的解决方法。学习新技术就是要勇于试错,然后归纳总结,这样子会形成自己的一套解决问题的逻辑框架思维,也可以增强知识框架的形成,加油!(看到这的童鞋给博主点个赞呗!👍👍😄)
在这里插入图片描述


坚持分享,坚持原创,喜欢博主的靓仔靓女们可以看看博主的首页博客!
您的点赞与收藏是我分享博客的最大赞赏!
博主博客地址: https://blog.csdn.net/weixin_43967679

  • 45
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 29
    评论
安装VMwareUbuntu 18.04的步骤如下: 1. 首先,确保你已经下载并安装了VMware Workstation或VMware Player。你可以从VMware官方网站下载适合你操作系统的版本。 2. 下载Ubuntu 18.04的ISO文件。同样,你可以从Ubuntu官方网站下载。 3. 打开VMware软件,点击"创建新的虚拟机"。 4. 在虚拟机创建向导中,选择"典型(推荐)"选项,并点击"下一步"。 5. 在"选择虚拟机硬件兼容性"界面,选择与你的VMware软件版本相匹配的硬件兼容性,并点击"下一步"。 6. 在"安装操作系统"界面,选择"稍后安装操作系统"选项,并点击"下一步"。 7. 在"选择操作系统"界面,选择"Linux"作为操作系统,并选择"Ubuntu 64位"作为版本。然后点击"下一步"。 8. 为虚拟机指定一个名称和保存位置,并点击"下一步"。 9. 在"处理器配置"界面,保持默认设置,并点击"下一步"。 10. 在"内存配置"界面,根据你的计算机性能和需要,设置虚拟机中分配给Ubuntu的内存大小。然后点击"下一步"。 11. 在"网络配置"界面,选择合适的网络连接方式,并点击"下一步"。 12. 在"磁盘配置"界面,选择"创建一个新虚拟磁盘"选项,并点击"下一步"。 13. 在"磁盘类型"界面,选择"SCSI"作为磁盘类型,并点击"下一步"。 14. 在"磁盘容量"界面,根据你的需求,设置虚拟磁盘的大小。然后点击"下一步"。 15. 在"磁盘文件"界面,选择保存虚拟磁盘的位置和名称,并点击"下一步"。 16. 在"创建虚拟机"界面,确认设置并点击"完成"。 17. 现在你已经创建了一个空的虚拟机。选择该虚拟机,并点击"开始安装"。 18. 选择已下载的Ubuntu 18.04 ISO文件,并点击"开始安装"。 19. 在Ubuntu安装过程中,按照提示进行设置,如选择语言、键盘布局、时区等。 20. 在磁盘分区界面,你可以选择自动分区或手动分区。如果你是新手,建议选择自动分区。 21. 完成分区后,按照提示完成Ubuntu的安装过程。 22. 安装完成后,重启虚拟机,并登录到Ubuntu 18.04系统中。 现在你已经成功在VMware中安装了Ubuntu 18.04操作系统。
评论 29
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jiachengren

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值