1、Hadoop的优势
1)高可靠性
因为Hadoop假设计算元素和存储会出现故障,因为它维护多个工作数据副本,在出现故障时可以对失败的节点重新分布处理。
2)高扩展性
在集群间分配任务数据,可方便的扩展数以千计的节点。
3)高效性
在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
4)高容错性
自动保存多份副本数据,并且能够自动将失败的任务重新分配。
2、Hadoop组成
HDFS : 一个高可靠,高吞吐的分布式文件系统
MapReduce: 一个分布式的离线并行计算框架。
YARN: 作业调度与集群资源管理的框架
Common: 支持其他模块的工具模块(Configuration RPC 序列化机制 日志操作).
2.1、HDFS架构概述
NameNode:存储元数据
DataNode:存储数据的节点,会对数据块进行校验
SecondaryNameNode: 监控NameNode 的元数据,每隔一定的时间进行元数据的合并/
2.2、YARN架构概述
ResourceManager(rm)
处理客户端请求、启动/监控ApplicationMaster、监控NodeManager、资源分配与调度
NodeManager(nm)
单个节点上的资源管理、处理来自ResourceManager的命令、处理来自ApplicationMaster的命令
ApplicationMaster
数据切分、为应用程序申请资源,并分配给内部任务、任务监控与容错
Container
对任务运行环境的抽象,封装了CPU、内存等多维资源以及环境变量、启动命令等任务运行相关的信息
2.3、MapReduce架构概述
MapReduce将计算过程分为两个阶段:Map和Reduce
Map阶段并行处理输入数据
Reduce阶段对Map结果进行汇总
3. Hadoop运行环境搭建
3.1、关闭防火墙
关闭防火墙: systemctl stop firewalld.service
禁用防火墙: systemctl disable firewalld.service
查看防火墙: systemctl status firewalld.service
关闭Selinux: vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
3.2、修改IP
Tab键补全
vi /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.X.51
GATEWAY=192.168.X.2
DNS1=8.8.8.8
DNS2=8.8.4.4
NETMASK=255.255.255.0
vi /etc/resolv.conf
nameserver8.8.8.8
nameserver8.8.4.4
重启网卡 : service network restart
修改主机名
hostnamectl set-hostname 主机名
3.3、IP和主机映射
vi /etc/hosts
192.168.1.111 bigdata111
192.168.1.112 bigdata112
192.168.1.113 bigdata113
windows的映射:C:\Windows\System32\drivers\etc 路径下找到hosts并添加
192.168.1.111 bigdata111
192.168.1.112 bigdata112
192.168.1.113 bigdata113
连接X Shell
输入IP 用户名 和密码即可连接
3.4、安装JDK
卸载现有JDK
查询是否安装Java相关软件
rpm-qa|grepjava
如果安装的版本低于1.7,卸载该JDK:
rpm -e 软件包名
在/opt目录下创建两个子文件
mkdir/opt/mod /opt/soft
解压JDK到/opt/module目录下
tar-zxvfjdk-8u144-linux-x64.tar.gz-C/opt/module/
配置JDK环境变量
vi /etc/profile
exportJAVA_HOME=/opt/mod/jdk1.8.0_144
exportPATH=$PATH:$JAVA_HOME/bin
source /etc/profile 刷新环境变量配置
测试JDK是否安装成功
java -version
javaversion"1.8.0_144"
Java(TM)SERuntimeEnvironment(build1.8.0_144-b01)
JavaHotSpot(TM)64-BitServerVM(build25.144-b01,mixedmode)
安装成功