Hadoop是Apache提供的一套开源的,可靠的,可扩展(可伸缩的),用于分布式计算的框架。
Apache Hadoop对版本的管理的控制是非常混乱的。
发展历程
创始人:Doug Cutting,Caferalla
在2002年,Doug和Mike想设计一套搜索引擎Nutch,爬取了全网的10亿个网页的数据。
在2003年,Google发表了一篇论文<The Google FileSystem>(GFS)阐述了了GFS的存储原理。Doug就根据这篇论文设计实现了NDFS(Nutch Distributed FileSystem)。
在2004年,Google发表了一篇论文<The Google MapReduce>阐述了谷歌的引擎的分布式计算的思想。Doug根据这篇论文设计实现了Nutch中的MapReduce。
从Nutch0.8版本开始,Doug就将NDFS以及MapReduce从Nutch中分离出来,形成了一个新的系统Hadoop。同时将NDFS更名为HDFS。
在2008年,Doug携带着Hadoop去了Yahoo。期间还参与了Pig,HBase等框架。
Yahoo将Hadoop,Pig,HBase等框架都贡献给了Apache。
Hadoop的厂商:Apache,CDH,Hotston,MapR。
Hadoop的版本
Modules
The project includes these modules:
- Hadoop Common: The common utilities that support the other Hadoop modules.基本模块
- Hadoop Distributed File System (HDFS™): A distributed file system that provides high-throughput access to application data.分布式存储
- Hadoop YARN: A framework for job scheduling and cluster resource management.用于任务调度和资源管理
- Hadoop MapReduce: A YARN-based system for parallel processing of large data sets.基于YARE的用于对数据的分布式计算
- Hadoop Ozone: An object store for Hadoop.对象存储
- Hadoop Submarine: A machine learning engine for Hadoop.Hadoop的机器学习引擎。
1.x:Common,HDFS,MapReduce
2.x:Common,HDFS,MapReduce,Yarn。2.x和1.x不兼容。
3.x:Common,HDFS,MapReduce,Yarn。从3.1版本开始支持Oz t56one
Hadoop安装
1.关闭防火墙
2.更改主机名,主机名中不能出现_或者-
vim /etc/sysconfig/network
修改HOSTNAME选项 hadoop01
source /etc/sysconfig/network
3.将主机名和IP进行映射
vim /etc/hosts
添加IP主机名,例如
192.168.197.130 hadoop01
4.重启
5.配置免密登陆
ssh-keygen
ssh-copy-id root@hadoop01
6.安装JDK
7.下载Hadoop的安装包
8.解压 tar-xvf hadoop-2.7.1_64bit.tar.gz
9.进入配置目录下:cd hadoop-2.7.1/etc/hadoop
10.修改vim
hadoop-env.sh5
25 export JAVA_HOME=/home/presoftware/jdk1.8
32 export HADOOP_CONF_DIR=/home/software/hadoop-2.7.1/etc/hadoop
11.修改vim core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop01:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/software/hadoop-2.7.1/tmp</value>
</property>
</configuration>
12.vim hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
13
cp mapre-sit.xml.template mapre-site.xml
vim mapre-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
14 vim yarn-sit.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop01</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
15 vim slaves
修改主机名
hadoop01
16 /etc/profile
末尾添加
export HADOOP_HOME=/home/software/hadoop-2.7.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
退出后 source /etc/profile
执行:hadoop namenode -format
然后在hadoop根节点下会出现tmp
启动: start-all.sh
jps命令后出现6个,说明启动成功
[root@hadoop01 hadoop-2.7.1]# jps
2914 SecondaryNameNode
2754 DataNode
3459 Jps
3157 NodeManager
3065 ResourceManager
2637 NameNode
============================================
常见错误:
1.格式化之后如果没有tmp?
1格式化失败
查看core-site.xml中的hadoop.tmp.dir属性
2如果找不到hadoop命令?
profile文件配置出错
改完环境变量之后没有source
3如果找不到NameNode或者DateNode
core-site.xml或者hdfs-site.xml出错
多次格式化--删除tmp目录重新格式化,然后重新启动