Hadoop安装准备

时间: 2023-07-09 admin 互联网

Hadoop安装准备

Hadoop安装准备

文章目录

  • (一)Hadoop集群拓扑
    • 1、集群拓扑
    • 2、角色分配
  • (二)虚拟机安装
  • (三)虚拟机克隆
    • 1、克隆类型
      • (1)完整克隆
      • (2)链接克隆
    • 2、克隆步骤
      • (1)克隆出master虚拟机
      • (2)克隆出slave1虚拟机
      • (3)克隆出slave2虚拟机
  • (四)虚拟机配置
    • 1、配置master虚拟机
      • (1)设置主机名
      • (2)设置静态IP地址
      • (3)配置主机名与IP地址映射
    • 2、配置slave1虚拟机
      • (1)设置主机名
      • (2)设置静态IP地址
      • (3)配置主机名与IP地址映射
    • 3、配置slave2虚拟机
      • (1)设置主机名
      • (2)设置静态IP地址
      • (3)配置主机名与IP地址映射
  • (五)关闭SeLinux安全机制
    • 1、在master虚拟机上关闭SeLinux安全机制
    • 2、在slave1虚拟机上关闭SeLinux安全机制
    • 3、在slave2虚拟机上关闭SeLinux安全机制
  • (六)SSH服务配置
    • 1、为何要配置SSH服务
    • 2、SSH远程登录功能配置
      • (1)查看系统是否开启了SSH服务
      • (2)利用FinalShell工具创建SSH连接
    • 3、SSH免密登录功能配置
      • (1)master虚拟机免密登录master虚拟机
      • (2)master虚拟机免密登录slave1虚拟机
      • (3)master虚拟机免密登录slave2虚拟机

(一)Hadoop集群拓扑

1、集群拓扑

一个主节点,两个从节点

2、角色分配

完全分布式Hadoop集群搭建需要在集群的每个节点都安装Hadoop,集群角色分配如下表所示。

节点角色
masterNameNode, DataNode
slave1DataNode
slave2DataNode

(二)虚拟机安装

Hadoop集群的搭建要涉及到多台机器,而在日常学习和个人开发测试过程中,这显然是不可行的,为此,可以使用虚拟机软件(例如VMware Workstation)在同一台电脑上构建多个Linux虚拟机环境,从而进行Hadoop集群的学习和个人测试。

安装了虚拟机CentOS 7

配置了静态IP地址(192.168.1.100)和主机名(ied)

关闭与禁用了防火墙

安装了vim编辑器

(三)虚拟机克隆

1、克隆类型

(1)完整克隆

完整克隆是对原始虚拟机完全独立的一个拷贝,它不和原始虚拟机共享任何资源,可以脱离原始虚拟机独立使用。

(2)链接克隆

链接克隆需要和原始虚拟机共享同一虚拟磁盘文件,不能脱离原始虚拟机独立运行。但是采用共享磁盘文件可以极大缩短创建克隆虚拟机的时间,同时还节省物理磁盘空间。

2、克隆步骤

(1)克隆出master虚拟机

关闭CentOS 7虚拟机,在VMware工具左侧系统资源库中右键单击CentOS 7,选择“管理”列表下的“克隆”选项,弹出克隆虚拟机向导。

选择克隆源——虚拟机中的当前状态

选择克隆类型——创建链接克隆

设置新虚拟机名称和位置

单击【完成】按钮

单击【关闭】,查看master虚拟机

(2)克隆出slave1虚拟机

按照克隆master虚拟机的步骤克隆出slave1虚拟机

(3)克隆出slave2虚拟机

按照克隆master虚拟机的步骤克隆出slave2虚拟机

(四)虚拟机配置

1、配置master虚拟机

启动master虚拟机

(1)设置主机名

执行命令:hostnamectl set-hostname master

重启虚拟机,提示符变成[root@master ~]#

(2)设置静态IP地址

查看IP地址可选范围

查看网关配置

执行命令:vim /etc/sysconfig/network-scripts/ifcfg-ens33

存盘退出,执行命令:systemctl restart network

执行命令:ip addr,查看设置的静态IP地址

(3)配置主机名与IP地址映射

执行命令:vim /etc/hosts,添加三个映射(集群有三个虚拟机)

存盘退出,验证配置效果

2、配置slave1虚拟机

启动slave1虚拟机

(1)设置主机名

执行命令:hostnamectl set-hostname slave1

重启虚拟机,提示符变成[root@slave1~]#

(2)设置静态IP地址

执行命令:vim /etc/sysconfig/network-scripts/ifcfg-ens33

存盘退出,执行命令:systemctl restart network

执行命令:ip addr,查看设置的静态IP地址

(3)配置主机名与IP地址映射

执行命令:vim /etc/hosts,添加三个映射(集群有三个虚拟机)

存盘退出,验证配置效果
slave1虚拟机可以通过主机名来ping通master虚拟机和slave1虚拟机

master虚拟机可以通过主机名来ping通slave1虚拟机

3、配置slave2虚拟机

启动slave2虚拟机

(1)设置主机名

执行命令:hostnamectl set-hostname slave2

重启虚拟机,提示符变成[root@slave2~]#

(2)设置静态IP地址

执行命令:vim /etc/sysconfig/network-scripts/ifcfg-ens33

存盘退出,执行命令:systemctl restart network

执行命令:ip addr,查看设置的静态IP地址

(3)配置主机名与IP地址映射

执行命令:vim /etc/hosts,添加三个映射(集群有三个虚拟机)

存盘退出,验证配置效果
slave2虚拟机可以通过主机名来ping通master虚拟机、slave1虚拟机和slave2虚拟机

master虚拟机可以通过主机名来ping通slave1虚拟机和slave2虚拟机

(五)关闭SeLinux安全机制

安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。
SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。
SELinux 有三种工作模式,分别是enforcing:强制模式;permissive:宽容模式;disabled:关闭 SELinux。
/etc/sysconfig/selinux 文件里SELINUX=enforcing,将enforcing改成disabled,就可以关闭SeLinux安全机制

1、在master虚拟机上关闭SeLinux安全机制

执行命令:vim /etc/sysconfig/selinux

2、在slave1虚拟机上关闭SeLinux安全机制

执行命令:vim /etc/sysconfig/selinux

3、在slave2虚拟机上关闭SeLinux安全机制

执行命令:vim /etc/sysconfig/selinux

(六)SSH服务配置

1、为何要配置SSH服务

实际工作中,服务器被放置在机房中,同时受到地域和管理的限制,开发人员通常不会进入机房操作直接上机操作,而是通过远程连接服务器,进行相关操作。
在集群开发中,主节点通常会对集群中各个节点频繁的访问,就需要不断输入目标服务器的用户名和密码,这种操作方式非常麻烦并且还会影响集群服务的连续运行。
为了解决上述问题,我们可以通过配置SSH服务来实现远程登录和SSH的免密登录功能。

2、SSH远程登录功能配置

(1)查看系统是否开启了SSH服务

查看master虚拟机是否开启了SSH服务

可以看到,master虚拟机开启了SSH服务的。如果没有开启sshd守护进程,那么执行命令:systemctl start sshd
查看slave1虚拟机是否开启了SSH服务

查看slave2虚拟机是否开启了SSH服务

(2)利用FinalShell工具创建SSH连接

利用FinalShell访问虚拟机

访问master、slave1和slave2虚拟机

3、SSH免密登录功能配置

(1)master虚拟机免密登录master虚拟机

执行命令:ssh-keygen -t rsa,连续敲三个回车,生成密钥对

执行命令:ssh-copy-id root@master,将公钥拷贝到master

测试master虚拟机是否免密登录master虚拟机

(2)master虚拟机免密登录slave1虚拟机

执行命令:ssh-copy-id root@slave1,将公钥拷贝到slave1

测试master虚拟机是否能免密登录slave1虚拟机

(3)master虚拟机免密登录slave2虚拟机

执行命令:ssh-copy-id root@slave2,将公钥拷贝到slave2

测试master虚拟机是否能免密登录slave2虚拟机