1.hadoop是什么?
Apache Hadoop软件库是一个框架,允许使用简单的编程模型跨计算机集群对大型数据集进行分布式处理。它旨在从单个服务器扩展到数千台机器,每台机器都提供本地计算和存储。库本身不是依靠硬件来提供高可用性,而是旨在检测和处理应用程序层的故障,因此在计算机群集之上提供高可用性服务,每个计算机群集都可能容易出现故障。
2.集群配置
(一)语言环境Java
1.为什么安装Java语言
hadoop是使用Java开发的,依赖于Java环境,因此搭建虚拟机需要安装jdk,虚拟机自带jdk非我们想要的版本,因此再查看本身存在的jdk后,需要全部删除。
2.卸载并安装jdk
(以下内容在远程完成,如何实现远程,详情请见:)
(1)创建一个放压缩的文件夹和压缩后的文件,便于区分
mkdir /opt/softwares #放解压后文件
mkdir /opt/modules #放压缩包文件
(2)查询自带jdk版本
rpm -qa | grep java
(3)卸载上面查询出来的jdk
rpm -e --nodeps +上面查询出来的版本
(4)为了简化安装jdk过程,先进行ssh远程连接,新建连接(这里使用的finalshell,地址:FinalShell SSH工具,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux,版本4.2.4 - FinalShell官网 (hostbuf.com))
(5)输入自定义名称,主机就是我们设置的静态IP,使用root用户可以简化我们每次编辑的进入管理员权限,以及创建root用户的密码,密码一定要牢记。
(6) 创建好的连接,双击远程连接
(7)接受并保存后,之后便不需要再验证(若连接不成功,需要检查自己的虚拟机网卡)
(8) 安装jdk
上传在官网下载的Linux的jdk版本(官网:Java Downloads | Oracle 中国)
下载插件(lrzsz是一个unix通信套件提供的X,Y,和ZModem文件传输协议,可以用在windows与linux 系统之间的文件传输,体积小速度快。)进入到 cd /opt/softwares 后,直接拖拽我们下载的压缩包。
yum -y install lrzsz
(9)等待上传完成后,输入 ll 查看上传的jdk,输入命令解压到/opt/modules:
tar -zxf jdk-8u241-linux-x64.tar.gz -C /opt/modules
解压完成后,输入cd /opt/modules 进入该目录,ll 查看文件夹内容
(10)配置环境,输入 vi /etc/profile 进入文件夹,i 进入编辑模式,添加以下环境:
export JAVA_HOME=/opt/modules/jdk1.8.0_241 #/opt/modules为jdk解压后位置
export PATH=$PATH:$JAVA_HOME/bin
配置完环境,输入刷新 source /etc/profile 文件,输入 java -version 查看安装的jdk信息
(二)hadoop安装
hadoop版本下载地址:Apache Hadoop
与jdk同样的上传和解压方式,这里不细说
编辑hadoop环境,输入 vi /etc/profile 加入以下配置:
export HADOOP_HOME=/opt/modules/hadoop-3.2.2 #/opt/modules为jdk解压后位置
export PATH=$PATH:$HADOOP_HOME/bin
编辑完成后,刷新文件夹 source /etc/profile
检查hadoop环境,hadoop version
在 modules 里创建java软链接和hadoop软链接,并查看
ln -s hadoop-3.2.2/ hadoop
ln -s jdk1.8.0_241/ jdk
(三)集群搭建
1.认识hadoop集群
Hadoop是一个分布式计算平台。主要解决海量数据的存储和分析计算的问题。以Hadoop分布式文件系统 HDFS(Hadoop Distributed File System)和MapReduce(分解计算过程)以及Yarn (hadoop资源管理器)组成 的Hadoop为用户提供了系统底层细节透明的分布式基础架构。
简单来说,Hadoop通常是指一个更广泛的概念-Hadoop生态圈包括:HDFS、MapReducer,Yarn,Common
hadoop集群奇数个主要是节省资源和防止“脑裂”
2.hadoop的高可用
HA(High Available),即高可用。高可用最关键的策略是消除单点故障。HA要细细划分的话分成各个组件的HA机制,比如:HDFS的HA和YARN的HA。在Hadoop2.0前,在HDFS集群中NameNode存在单点故障(也就是SPOF,全称Single Points Of Failure)。NameNode主要在以下两个方面影响HDFS集群:(1)NameNode机器发生意外的话,比如宕机,集群就会无法使用,直到管理员重启。(2)NameNode机器需要升级,包括软件、硬件升级,此时集群也将无法使用。
HDFS HA功能通过配置Active/Standby两个NameNode实现在集群中对NameNode的热备来解决上述问题。如果出现故障,如机器崩溃或机器需要升级维护,这时可通过此种方式将NameNode很快的切换到另外一台机器。
(四)hadoop运行模式
Hadoop运行模 式包括:本地模式 、伪分布式模式以及完全分布式模式
本地模式:单机运行,只是用来演示一下官方案例。 生产环境不用。
伪分布式模式: 也是单机运行,但是具备 Hadoop集群的所有功能。一台服务器模拟一个分布式的环境 。小公司运行比较多。
完全分布式模式: 多台服务器组成分布式环境。 大厂使用就很多。
完全分布式模式搭建步骤:
(1)准备 3台客户机( 关闭防火墙、静态 IP、主机名称、免密)
(2)安装 JDK(卸载自带jdk)
(3)配置环境变量
(4)安装 Hadoop
(5)配置环境变量
(6)配置集群
(7)单点启动
(8)配置ssh
(9)群起并测试集群