自学大数据第四天~hadoop集群的搭建(一)

在这里插入图片描述

Hadoop集群安装配置

当hadoop采用分布式模式部署和运行时,存储采用分布式文件系统HDFS,此时HDFS名称节点和数据节点位于不同的机器上;
数据就可以分布到多个节点,不同的数据节点上的数据计算可以并行执行了,这时候MR才能发挥其本该有的作用;

没那么多机器怎么办~~~~多几个虚拟机不就行了

克隆虚拟机

电脑存储不够的可以使用链接克隆的方式
在这里插入图片描述

修改虚拟机的网络配置~

以其中一个slave节点为例

  • 启动虚拟机
    在这里插入图片描述
  • 关闭网卡服务,然后修改节点的ip

由于本节点启动时默认没有启动网卡,所以就不关闭了,
在这里插入图片描述

  • 修改节点ip为静态IP
 vi /etc/sysconfig/network-scripts/ifcfg-ens160 

修改成如下地址:
在这里插入图片描述

  • 设置网卡自动启动后启动网卡
[root@node1 hadoop]#  vi /etc/sysconfig/network-scripts/ifcfg-ens160 
[root@node1 hadoop]# systemctl enable NetworkManager
Created symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service → /usr/lib/systemd/system/NetworkManager.service.
Created symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service → /usr/lib/systemd/system/NetworkManager-dispatcher.service.
Created symlink /etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service → /usr/lib/systemd/system/NetworkManager-wait-online.service.
[root@node1 hadoop]# systemctl start  NetworkManager
[root@node1 hadoop]# 

  • ping一下其他节点
    在这里插入图片描述可以正常ping通,我们的机器就准备好了

为了便于区分节点,我们还需要修改各个节点的主机名

修改之后的具体配置如下

节点节点名ip
mastermaster192.168.8.135
slave1slave1192.168.8.136
slave2slave2192.168.8.137
slave3slave3192.168.8.138

然后在虚拟机各个节点中添加映射关系

在这里插入图片描述

记得修改之后重启虚拟机

之后登录虚拟机就很容易辨认出当前是处于Master节点上进行操作,不会和Slave节点产生混淆。
在这里插入图片描述重启之后测试一下配置是否成功

  • 在master节点上ping一下slave*节点
#ping 3次就停止
ping slave1 -c 3 

在这里插入图片描述其他的节点自己测试一下就可以,这里不再展示

如果ping不通:
1,可能你没有重启机器
2,配置的文件内容检查一下

接下来就是跟分布式操作一样~

SSH无密码登陆节点

cd ~/.ssh

ssh-keygen -t rsa

重新生成公钥
在这里插入图片描述删除原来的authorized_keys文件,然后将公钥保存到 新建的authorized_keys文件中

cat ./id_rsa.pub >> ./authorized_keys

在这里插入图片描述
接下来验证一下

ssh master

仍然需要密码;
在这里插入图片描述不要慌,这里是因为权限的问题,
首先,授予 .ssh文件夹 700权限

[hadoop@master .ssh]$ chmod 700 ../.ssh 

授予authorized_keys600权限

[hadoop@master .ssh]$ chmod 600 authorized_keys 
[hadoop@master .ssh]$ ssh master
Activate the web console with: systemctl enable --now cockpit.socket

然后再次登录~成功不需要密码登录了
在这里插入图片描述
接下来将master节点公钥传输到slave*节点上
以slave1为例

[hadoop@master .ssh]$ scp id_rsa.pub hadoop@slave1:~/.ssh/
The authenticity of host 'slave1 (192.168.8.136)' can't be established.
ECDSA key fingerprint is SHA256:OvrL3M2MTclz6YoLzMEf7HZBZceFwTMe2s8YSsdPExo.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'slave1,192.168.8.136' (ECDSA) to the list of known hosts.
hadoop@slave1's password: 
id_rsa.pub                                                               100%  567   108.9KB/s   00:00    
[hadoop@master .ssh]$ 

下面进入salve1节点
将公钥内容保存到authorized_keys

然后授权 .ssh文件夹 700 authorized_keys文件 600

[hadoop@slave1 ~]$ cd ~/.ssh
[hadoop@slave1 .ssh]$ ls
id_rsa.pub  known_hosts
[hadoop@slave1 .ssh]$ cat id_rsa.pub >> authorized_keys 
[hadoop@slave1 .ssh]$ chmod 700  ../.ssh
[hadoop@slave1 .ssh]$ chmod 600 authorized_keys

然后在master节点上登录salve1节点,
可以看到不需要密码登录
在这里插入图片描述接下来如法炮制其他节点课,可以直接将slave1的公钥和authorized_keys文件传到其他节点上;
在这里插入图片描述
发现这种方法并不可行,只能从master节点操作,
因为这里有一步忽略了 sha256
在这里插入图片描述下面从master节点操作:

在这里插入图片描述同理slave3也是这么操作~略

配置path变量

这个就像配置javahome那样,可以使得hadoop命令可以在任何位置运行

有很多种方式配置path变量
选一种即可:
进入etc/profile.d,新建一个hadoop文件

在这里插入图片描述保存后退出

注意:如哦保存时提示没有权限,则切换root用户

source hadoop.sh

验证hadoop环境变量配置是否成功

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

CodeMartain

祝:生活蒸蒸日上!

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

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

打赏作者

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

抵扣说明:

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

余额充值