如何构建虚拟机Hadoop集群,搭建3台ubuntu虚拟机集群

如何构建虚拟机Hadoop集群,搭建3台ubuntu虚拟机集群

克隆集群机器

通过虚拟机搭建Hadoop集群,发现使用的VMware workstation 15 player版本没有克隆功能,于是找到了手动克隆方法:
参考:https://blog.csdn.net/weixin_44763047/article/details/111772941

搭建集群

一台Ubuntu主机系统作Master(yjh-ubuntu),一台Ubuntu主机系统命名为slave01,一台Ubuntu主机系统命名为slave02。三台主机机器处于同一局域网下。这里使用三台主机搭建分布式集群环境,更多台机器同样可以使用如下配置。
输入命令,分别更改主机名称

sudo vim /etc/hostname    

1) 网络配置

在主机上添加网卡,一张设置为NAT模式,一张设置为主机模式
在这里插入图片描述
主机分配的IP地址如果不固定,需要改成静态(一台有问题,三台都要改)。
输入 ifconfig 指令(以master主机为例)。
在这里插入图片描述
其IP地址为:192.168.72.130
输入命令修改节点IP映射

sudo vim /etc/hosts    

192.168.72.130 yjh-ubuntu
192.168.72.131 slave01
192.168.72.132 slave02

在这里插入图片描述

在其余两个主机上重复修改后重启生效.
三台电脑主机的用户名均为hadoop.三台机器可以ping双方的ip来测试三台电脑的连通性。
在master主机上的中运行ping 192.168.72.132,测试能连接到slave02节点:
在这里插入图片描述
2) 配置ssh免密码连入
因为Ubuntu中默认没有安装SSH服务,所以我们先要执行三步使其生效(三台都要):

sudo apt-get install openssh-server  #安装服务,一路回车                     
sudo /etc/init.d/ssh restart  #启动服务                                      
sudo ufw disable   #关闭防火墙      

执行以下命令看是否成功运行,如果成功的话,出现两个进程

ps -e | grep ssh 

在这里插入图片描述

在master节点生成SSH公钥,公钥储存在 /home/hadoop/.ssh

cd ~/.ssh               # 如果没有该目录,先执行一次ssh localhost         
rm ./id_rsa*            # 删除之前生成的公匙(如果有)                  
ssh-keygen -t rsa       # 一直按回车就可以       

在这里插入图片描述

让master 节点可以无密码 SSH 本机,在 master 节点上执行

cat ./id_rsa.pub >> ./authorized_keys

完成后可执行 ssh master验证一下(需要输入 yes,成功后执行 exit 返回原来的终端)

ssh yjh-ubuntu      

在这里插入图片描述

接着在 master 节点将上公匙传输到 slave01节点,过程中需要输入 slave01 节点的密码,传输100%以后就是传过去了:

scp ~/.ssh/id_rsa.pub hadoop@slave01:/home/hadoop/  

接着在 slave01节点上,把公钥加入授权

mkdir ~/.ssh        # 如果不存在该文件夹需先创建,若已存在则忽略        
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys                                   
rm ~/id_rsa.pub    # 用完就可以删掉了

在这里插入图片描述

对 slave02 重复上面俩步,这样 master 节点就可以无密码登陆2个 slave 节点了

ssh slave01    #可以用来检验是否能成功登陆,exit退出   

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3) 配置分布式集群环境
需要修改 /usr/local/hadoop/hadoop-2.10.1/etc/hadoop 中的5个配置文件。
slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml
1、slaves
此文件记录的是将要作为 Datanode 节点的名字。将 slave01,slave02 主机名字加入进去,如果想让 yjh-ubuntu 节点作为 Namenode 的同时也作为 Datanode,可以保留 localhost。(我这里保留)
在这里插入图片描述

2、core-site.xml
改为如下配置:
在这里插入图片描述

3、hdfs-site.xml
这文件记录备份相关。dfs.replication 一般设为 3,我们有2个 slave 节点,因此可以将 dfs.replication 的值设为 2
改为如下配置:
在这里插入图片描述
4、mapred-site.xml
可能默认文件名为 mapred-site.xml.template ,此时需要重命名

mv mapred-site.xml.template mapred-site.xml  

改为如下
在这里插入图片描述
在这里插入图片描述

5、yarn-site.xml 改为如下配置:
在这里插入图片描述
在这里插入图片描述

配置好以后,将master 节点上的 /usr/local/hadoop/hadoop-2.10.1/etc/hadoop 文件夹复制到剩余节点上。
在 master 节点执行:

cd /usr/local                                                            
sudo rm -r ./hadoop/tmp     # 删除 Hadoop 临时文件                       
cd hadoop/hadoop-2.10.1                                                 
sudo rm -r ./logs   # 删除日志文件                                        
#去到/usr/local
sudo tar -zcf ~/hadoop.yjh-ubuntu.tar.gz ./hadoop   # 先压缩再复制             
cd ~     #跳转到有压缩包的路径下                                      
scp ./hadoop.yjh-ubuntu.tar.gz slave01:/home/hadoop                              
#发送到slave01节点,其他salve节点也要执行        

在剩余 salve 节点上执行(以slave01为例):

在sudo rm -r /usr/local/hadoop    # 删掉旧的(如果存在)                     
sudo tar -zxf ~/hadoop.yjh-ubuntu.tar.gz -C /usr/local                               
sudo chown -R hadoop /usr/local/hadoop

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

4) 启动 Hadoop
首次启动 Hadoop 需要将 master 节点格式化:

在hdfs namenode -format       # 首次运行需要执行初始化,之后不需要

启动

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

通过命令 jps 可以查看各个节点的启动进程

jps

master 有 NameNode、ResourceManager、SecondrryNameNode、JobHistoryServe
以上进程缺少任意一个都表示有错。
在这里插入图片描述
Slave02节点
在这里插入图片描述
在 master 节点查看 DataNode 是否正常启动。以我为例,Live datanodes 为 2,与 slave 数量一致,集群启动成功。

hdfs dfsadmin -report 

可以通过 Web 页面看到查看 DataNode 和 NameNode 的状态:http://yjh-ubuntu:50070/

在这里插入图片描述

可选:
关闭Hadoop

cd /usr/local/hadoop                                                     
stop-all.sh  
  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值