Mac m1 max+VMware+CentOS8学习Hadoop——(二)Hadoop集群搭建

以此记录自己使用Mac学习hadoop的心酸过程。网上有很多零零散散的教程,遇到的问题各不相同,希望我也能为大家提供一点帮助。

一、准备模版虚拟机

1.配置静态IP地址

vi /etc/sysconfig/network-scripts/ifcfg-ens160

进入后配置如下:

ONBOOT=yes
BOOTPROTO=static
IPADDR=172.16.6.134
GATEWAY=172.16.6.2
NETMASK=255.255.0.0
DNS1=114.114.114.114

配置结果如图:
在这里插入图片描述
需要注意的是:
(1)IP地址可以使用ifconfig进行查看;
(2)每个人的ens不一定相同,譬如我的是ens-160,使用ifconfig同样可以看到;
(3)GATEWAY的前三位网址配置必须与自己的IP地址相同,最后一位为0-10即可。

2.更改主机hostname以及hosts

更改主机hostname

vim /etc/hostname

修改你自己的主机名,这里以CentOS8为例。
在这里插入图片描述
更改后配置hosts

vim /etc/hosts

进入hosts配置,结果如下(根据自己的IP地址配置):
在这里插入图片描述
注意:在配置hosts时,你可以多配置几个集群,每一个IP地址和hostname相对应即可。起别名全凭个人喜好~

将主机的hostname和hosts配置好之后,重启虚拟机即可:

reboot

二、完整拷贝模版虚拟机及配置

1.完整拷贝模版虚拟机

在虚拟机资源库里,找到自己配置的模版虚拟机,进行完整克隆。建议:这里命名和自己在hosts里面的命名相对应,以免弄混:
在这里插入图片描述

2.克隆虚拟机配置

在克隆完成后,分别对克隆的虚拟机修改静态IP地址、hastname以及hosts配置文件,操作同准备模拟虚拟机相同。
值得注意的是:
(1)克隆机的静态IP地址需要和模版机hosts中的IP相对应,其他的网关地址、子网掩码以及DNS等与模版机配置保持一致;
(2)克隆机的hostname修改也需要和模版机hosts中配置保持一致。即,对应IP对应hostname。
(3)每一个克隆机均需要进行配置。

3.测试网络

在克隆虚拟机IP等配置完成后,分别进行重启

reboot

重启后输入

ping www.baidu.com

外网能ping通,则表示成功。
然后,在Filezilla配置相应的站点,对每个克隆虚拟机进行连接,能够成功连接表示成功。
在这里插入图片描述
注意:主机地址一定要与在hosts以及ens中的配置相对应。

三、拷贝资源、分发脚本配置和SSH免密登录

1.拷贝资源

从安装jdk,hadoop的主机上拷贝资源到各个克隆机:

scp -r /opt/module  ptong@CentOS802:/opt/module

2.配置分发脚本

在主机打开创建的非root文件夹

cd /home/ptong

建立文件夹

mkdir bin

打开

cd bin/

执行

vim xsync

在该文件中编写如下代码

#!/bin/bash

#1. 判断参数个数
if [ $# -lt 1 ]
then
    echo Not Enough Arguement!
    exit;
fi

#2. 遍历集群所有机器
#这里是自己建立的集群hostname,记得更改
for host in CentOS802 CentOS803 CentOS804
do
    echo ====================  $host  ====================
    #3. 遍历所有目录,挨个发送

    for file in $@
    do
        #4. 判断文件是否存在
        if [ -e $file ]
            then
                #5. 获取父目录
                pdir=$(cd -P $(dirname $file); pwd)

                #6. 获取当前文件的名称
                fname=$(basename $file)
                ssh $host "mkdir -p $pdir"
                rsync -av $pdir/$fname $host:$pdir
            else
                echo $file does not exists!
        fi
    done
done

修改脚本 xsync 具有执行权限

chmod +x xsync

测试脚本

xsync /home/ptong/bin

将脚本复制到/bin中,以便全局调用

sudo cp xsync /bin/

同步环境变量配置(root所有者)

sudo ./bin/xsync /etc/profile

环境变量分发后,各个克隆虚拟机需要source一下才能生效:

source /etc/profile

3.SSH免密登录

在/home/ptong/.ssh目录下,生成钥匙

ssh-keygen -t rsa

敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免密登录的目标机器上

ssh-copy-id CentOS802
ssh-copy-id CentOS803
ssh-copy-id CentOS804

注意:还需要在CentOS802上通过ptong账号,同样的配置一下无密登录到 CentOS8、CentOS803、CentOS804服务器上,其余虚拟机同样配置一下。
至此,基本的集群搭建就算完成了。后面的路还很长,启动集群可是大麻烦。博客写的不是很详尽,如果大家在搭建过程中遇到了问题,多百度谷歌吧。同时,也欢迎留言~

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值