Hadoop集群安装部署_分布式集群安装_01

爱被打了一巴掌 2022-10-12 01:48 331阅读 0赞

文章目录

              1. 分布式集群规划
              1. 数据清理
              1. 基础环境准备
              1. 配置ip映射
              1. 时间同步
              1. SSH免密码登录完善
              1. 免密登录验证
1. 分布式集群规划

伪分布集群搞定了以后我们来看一下真正的分布式集群是什么样的

看一下这张图,图里面表示是三个节点,左边这一个是主节点,右边的两个是从节点,hadoop集群是支持主从架构的。

不同节点上面启动的进程默认是不一样的。
在这里插入图片描述
下面我们就根据图中的规划实现一个一主两从的hadoop集群

环境准备:三个节点






















主机名 ip
bigdata01 192.168.92.100
bigdata02 192.168.92.101
bigdata03 192.168.92.102

注意:每个节点的基础环境都要先配置好,先把ip、hostname、firewalld、ssh免密码登录、JDK这些基础环境配置好

目前的节点数量是不够的,按照第一周学习的内容,通过克隆的方式创建多个节点,具体克隆的步骤在这就不再赘述了。

2. 数据清理

声明:如果是新机器可以不清理,bigdata01这台机器刚才演示过伪分布式,因此,需要做数据清理。

先把bigdata01中之前按照的hadoop删掉,删除解压的目录,修改环境变量即可。

注意:我们需要把bigdata01节点中/data目录下的hadoop_repo目录和/data/soft下的hadoop-3.2.0目录删掉,恢复此节点的环境,这里面记录的有之前伪分布集群的一些信息。

  1. [root@bigdata01 ~]# rm -rf /data/soft/hadoop-3.2.0
  2. [root@bigdata01 ~]# rm -rf /data/hadoop_repo

假设我们现在已经具备三台linux机器了,里面都是全新的环境。

3. 基础环境准备

下面开始操作。

注意:针对这三台机器的ip、hostname、firewalld、JDK这些基础环境的配置步骤在这里就不再记录了,具体步骤参考伪分布式中的步骤。

这些基础环境配置好以后还没完,还有一些配置需要完善。

4. 配置ip映射

配置/etc/hosts
因为需要在主节点远程连接两个从节点,所以需要让主节点能够识别从节点的主机名,使用主机名远程访问,默认情况下只能使用ip远程访问,想要使用主机名远程访问的话需要在节点的/etc/hosts文件中配置对应机器的ip和主机名信息。

所以在这里我们就需要在bigdata01的/etc/hosts文件中配置下面信息,最好把当前节点信息也配置到里面,这样这个文件中的内容就通用了,可以直接拷贝到另外两个从节点

  1. [root@bigdata01 ~]# vi /etc/hosts
  2. 192.168.92.100 bigdata01
  3. 192.168.92.101 bigdata02
  4. 192.168.92.102 bigdata03

修改bigdata02的/etc/hosts文件

  1. [root@bigdata02 ~]# vi /etc/hosts
  2. 192.168.92.100 bigdata01
  3. 192.168.92.101 bigdata02
  4. 192.168.92.102 bigdata03

修改bigdata03的/etc/hosts文件

  1. [root@bigdata03 ~]# vi /etc/hosts
  2. 192.168.92.100 bigdata01
  3. 192.168.92.101 bigdata02
  4. 192.168.92.102 bigdata03
5. 时间同步

集群节点之间时间同步
集群只要涉及到多个节点的就需要对这些节点做时间同步,如果节点之间时间不同步相差太多,会应该集群的稳定性,甚至导致集群出问题。

首先在bigdata01节点上操作

使用ntpdate -u ntp.sjtu.edu.cn实现时间同步,但是执行的时候提示找不到ntpdata命令

  1. [root@bigdata01 ~]# ntpdate -u ntp.sjtu.edu.cn
  2. -bash: ntpdate: command not found

默认是没有ntpdate命令的,需要使用yum在线安装,执行命令

  1. yum install -y ntpdate

然后手动执行ntpdate -u ntp.sjtu.edu.cn 确认是否可以正常执行

  1. [root@bigdata01 ~]# ntpdate -u ntp.sjtu.edu.cn

建议把这个同步时间的操作添加到linux的crontab定时器中,每分钟执行一次

  1. [root@bigdata01 ~]# vi /etc/crontab
  2. * * * * * root /usr/sbin/ntpdate -u ntp.sjtu.edu.cn

然后在bigdata02和bigdata03节点上配置时间同步

在bigdata02节点上操作

  1. [root@bigdata02 ~]# yum install -y ntpdate
  2. [root@bigdata02 ~]# vi /etc/crontab
  3. * * * * * root /usr/sbin/ntpdate -u ntp.sjtu.edu.cn

在bigdata03节点上操作

  1. [root@bigdata03 ~]# yum install -y ntpdate
  2. [root@bigdata03 ~]# vi /etc/crontab
  3. * * * * * root /usr/sbin/ntpdate -u ntp.sjtu.edu.cn
6. SSH免密码登录完善

注意:针对免密码登录,目前只实现了自己免密码登录自己,最终需要实现主机点可以免密码登录到所有节点,所以还需要完善免密码登录操作。

首先在bigdata01机器上执行下面命令,将公钥信息拷贝到两个从节点

  1. [root@bigdata01 ~]# scp ~/.ssh/authorized_keys bigdata02:~/
  2. The authenticity of host 'bigdata02 (192.168.92.101)' can't be established. ECDSA key fingerprint is SHA256:OkPdWB6Qbl6dbKtaCWEsnueYoZ1E6jTMswu1gB5e8Wg. ECDSA key fingerprint is MD5:fa:46:3c:5c:86:b3:6e:36:86:2c:94:8c:5d:a8:83:fc. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'bigdata02,192.168.92.101' (ECDSA) to the list of known hosts. root@bigdata02's password:
  3. authorized_keys 100% 396 197.0KB/s 00:00
  4. You have mail in /var/spool/mail/root
  5. [root@bigdata01 ~]# scp ~/.ssh/authorized_keys bigdata03:~/
  6. The authenticity of host 'bigdata03 (192.168.92.102)' can't be established. ECDSA key fingerprint is SHA256:OkPdWB6Qbl6dbKtaCWEsnueYoZ1E6jTMswu1gB5e8Wg. ECDSA key fingerprint is MD5:fa:46:3c:5c:86:b3:6e:36:86:2c:94:8c:5d:a8:83:fc. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'bigdata03,192.168.92.102' (ECDSA) to the list of known hosts. root@bigdata03's password:
  7. authorized_keys 100% 396 305.2KB/s 00:00
  8. [root@bigdata01 ~]#

然后在bigdata02和bigdata03上执行
bigdata02:

  1. [root@bigdata02 ~]# cat ~/authorized_keys >> ~/.ssh/authorized_keys

bigdata03:

  1. [root@bigdata03 ~]# cat ~/authorized_keys >> ~/.ssh/authorized_keys
7. 免密登录验证

验证一下效果,在bigdata01节点上使用ssh远程连接两个从节点,如果不需要输入密码就表示是成功的,此时主机点可以免密码登录到所有节点。

  1. [root@bigdata01 ~]# ssh bigdata02
  2. Last login: Sat Jul 3 18:53:32 2021 from 192.168.92.1
  3. [root@bigdata02 ~]# exit
  4. logout
  5. Connection to bigdata02 closed.
  6. [root@bigdata01 ~]# ssh bigdata03
  7. Last login: Sat Jul 3 18:53:34 2021 from 192.168.92.1
  8. [root@bigdata03 ~]# exit
  9. logout
  10. Connection to bigdata03 closed.
  11. [root@bigdata01 ~]#

有没有必要实现从节点之间互相免密码登录呢?

这个就没有必要了,因为在启动集群的时候只有主节点需要远程连接其它节点。

OK,那到这为止,集群中三个节点的基础环境就都配置完毕了,接下来就需要在这三个节点中安装Hadoop了。

发表评论

表情:
评论列表 (有 0 条评论,331人围观)

还没有评论,来说两句吧...

相关阅读

    相关 hadoop 安装

    单机hadoop 集群部署,在单机版基础上进行的,我们需要配置4个机器master,node1,node2,node3 [hadoop单机部署 教程 步骤][hado

    相关 hadoop分布式安装

    搭建分布式集群的前提安装步骤需要每一台机器都要执行(jdk安装,ip配置,主机名设置,hosts文件配置,关闭防火墙,免密登录) 免密登录注意,至少确保主节点可以免密登录到

    相关 hadoop完全分布式安装

    因为机器学习,接触到了数据挖掘;因为数据挖掘,接触到了大数据;因为大数据,接触到了hadoop。之前有过hadoop的简单了解,但都是基于别人提供的hadoop来学习和使用,虽