是一个由Apache基金会所开发的分布式系统基础架构。
广义上来说,是一个Hadoop生态圈(由一堆框架、软件组成)
版本介绍
分为社区版和商业版
1.x,2.x,-是并行发展的
1.x :
由一个分布式文件系统HDFS
一个离线计算机框架MapReduce
2.x:
支持NameNode的HDFS
资源管理系统YARN
运行在YARN上的MapReduce
比1的功能更强大,有更好的扩展性、性能、并支持多种计算框架
3.x
比2有一系列功能加强,但还在测试
集群介绍包含两个集群,HDFS集群和YARN集群:
都是分布式,可以布置在多台机器上。
两者逻辑上分离,但物理常在一起:但是即使装在一台机器上,逻辑上也是分离的,就是说两个的处理完全独立,1个执行不了不影响另一个。
优势扩容能力:分布式系统方便的扩充
成本低:可以使用多台普通廉价的机器
高效率:通过并发数据,结点直接动态并行移动数据,速度块。
可靠性:自动同步备份数据
HDFS集群:负责数据的存储。
集群中的角色:
NameNode:命名结点
DataNode:数据结点
SecondaryNameNode:秘书结点
YARN集群负责数据运算的硬件资源调度,比如内存
集群中的角色
Resource Manager
Node Manager
MapReduce其实是一个分布式运算编程框架(类似一个接口和一系列父类)
注意并不是一个集群
部署方式 搭建Hadoop 0.部署计划本文使用的版本是
计划部署2台虚拟机,分别命名为node-1和node-2,4G内存和40G的硬盘
主机名字内存硬盘启用结点node-1 4 40 hdfs:NameNode, DataNode;yarn:NodeManager, ResoureceManager,
node-2 4 40 hdfs:SecondaryNameNode,DataNode; yarn: NodeManager
1.环境部署 node-1&2环境
以下内容两台机器都要配置
部署虚拟机(使用VMware傻瓜式操作,不再赘述)
挂载本地yum源(或者使用网络都行)
同步机组时间
#yum安装ntpdate yum install ntpdate #网络同步时间 ntpdate cn.pool.ntp.org
配置主机名称
vim /etc/sysconfig/network #修改为: NETWORKING=yes HOSTNAME=node-1
配置IP、主机名映射
vim /etc/hosts #直接添加 192.168.98.129 node-1 192.168.98.130 node-2
配置ssh免密登录
ssh-keygen -t rsa #再按四次回车
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
20:15:74:e0:d2:48:1d:0d:e4:42:2a:14:28:1e:b7:75 root@node-1
The key's randomart image is:
+--[ RSA 2048]----+
|.o. o+O*.
|
|+. = B.E.
|
|+ + B *
|
| o . + .
|
|
S
|
|
|
|
|
|
|
|
|
+-----------------+
#使用ssh-copy-id命令将公钥考培到要免密登录的目标机器上
ssh-copy-id node-1
ssh-copy-id node-2
关闭防火墙
#查看防火墙状态 service iptables status #关闭防火墙 service iptables stop #查看防火墙开机启动状态 chkconfig iptables --list #关闭防火墙开机启动 chkconfig iptables off
如下图状态则说明防火墙已经关闭、防火墙开机不会自动启动
安装JDK
使用rpm格式文件安装
复制到/usr/java文件夹(没有则先创建文件夹)
#授予权限 chmod 700 jdk-8u65-linux-x64.rpm #安装 rpm -ivh jdk-8u65-linux-x64.rpm
安装完成
9. 配置环境变量