大数据讲课笔记3.1 Hadoop安装准备

Posted howard2005

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据讲课笔记3.1 Hadoop安装准备相关的知识,希望对你有一定的参考价值。

文章目录

零、学习目标

  1. 了解虚拟机安装与克隆
  2. 熟悉Linux系统网络配置
  3. 熟悉SSH服务配置与免密登录

一、导入新课

  • 带领学生回顾项目二(2.1、2.2与2.3)的对大数据和Hadoop相关的知识,要想深入的学习掌握Hadoop相关技术,首先得学会搭建Hadoop集群。因此,本次课将针对构建Hadoop集群的准备工作进行详细讲解。

二、新课讲解

(一)Hadoop集群拓扑

1、集群拓扑

  • 一个主节点,两个从节点

2、角色分配

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

(二)虚拟机安装

  • Hadoop集群的搭建要涉及到多台机器,而在日常学习和个人开发测试过程中,这显然是不可行的,为此,可以使用虚拟机软件(例如VMware Workstation)在同一台电脑上构建多个Linux虚拟机环境,从而进行Hadoop集群的学习和个人测试。
  • 参看本博《大数据讲课笔记1.1 安装配置CentOS
  • 安装了虚拟机CentOS 7
  • 配置了静态IP地址(192.168.1.100)和主机名(ied)

(三)虚拟机克隆

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连接

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虚拟机

三、归纳总结

  • 回顾本节课所讲的内容,并通过提问的方式引导学生解答问题并给予指导。

四、上机操作

  • 形式:单独完成
  • 题目:创建并配置三台虚拟机使之相互免密登录
  • 要求:让学生自己动手操作安装虚拟机、克隆虚拟机、配置Linux系统的网络以及SSH服务,以此来巩固本节的学习内容。创建三台虚拟机 - master(192.168.1.101)、slave1(192.168.1.102)、slave2(192.168.1.103);配置SSH:使得master虚拟机可以免密远程登录master虚拟机、slave1虚拟机和slave2虚拟机;使得slave1虚拟机可以免密远程登录master虚拟机、slave1虚拟机和slave2虚拟机;使得slave2虚拟机可以免密远程登录master虚拟机、slave1虚拟机和slave2虚拟机。

以上是关于大数据讲课笔记3.1 Hadoop安装准备的主要内容,如果未能解决你的问题,请参考以下文章

大数据讲课笔记3.2 Hadoop部署模式

2022年大数据讲课笔记

2022年大数据基础讲课笔记

2022年大数据基础讲课笔记

大数据讲课笔记2.3 初探Hadoop世界

大数据讲课笔记3.3 Hadoop集群配置