Hadoop简介与环境搭建
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。其中它有两个核心:
- HDFS( 存储功能)
- 大规模数据集(支持节点扩展)
- 简单一致性模型(一次写入多次读取)
- 流式数据访问(对数据进行批量处理,而不是用户交互处理)
- 硬件错误(有很强的容错能力)
MapReduce( 计算功能)
- 向“外”横向扩展,而非向“上”纵向扩展(提高性能靠横向的扩展设备,而不是靠提高单个设备的性能)
- 失效被认为是常态(能够自动的处理失败的任务,对用户来说是透明的)
- 把处理向数据迁移(处理程序向数据存储端移动代替数据向处理程序端移动,进而减少通讯开销)
理论基础知识这里不做详细介绍,如有兴趣请阅读《Hadoop 权威指南》或其他相关书籍。下面开始讲安装配置:
环境
1.独立模式
- 新建用户目录将下载好的jdk和hadoop拷贝过来。
sudo mkdir -p mkdir /usr/soft
cp ~/下载/hadoop-2.7.3.tar.gz /usr/soft
cp ~/下载/jdk1.8.0_112.tar.gz /usr/soft
通过以上命令,在/usr/soft下执行ls即可看到你下载的安装包。
2. 解压jdk和hadoop。
cd /usr/soft
tar -xzf hadoop-2.7.3.tar.gz
tar -xzf jdk1.8.0_112.tar.gz
3. 配置环境变量
linux下有几种配置的方法。版主习惯于修改/etc/environment
cd /etc
sudo chmod a+w environment //赋权
gedit environment //编辑
在文件里添加(后面接的是具体安装路径,请注意版本号等信息):
JAVA_HOME=/usr/soft/jdk1.8.0_112
HADOOP_INSTALL=/usr/soft/hadoop-2.7.3
在PATH里增加:/usr/soft/hadoop-2.7.3/sbin:/usr/soft/hadoop-2.7.3/bin:/usr/soft/jdk1.8.0_112/bin
修改完毕保存。
source environment //立即生效
4.验证。
在任意目录下键入
java -version
hadoop version
到此,jdk环境在后续的肯定用的上,在此一并配置了。hadoop独立模式就搭好,因为hadoop不需要进行任何配置就是独立模式。
2.伪分布式
伪分布式是建立在独立模式的基础上。需要修改配置一些文件,同时启动守护进程。步骤如下:
1.修改配置文件。
cd /usr/soft/hadoop-2.7.3/etc/hadoop
gedit core-site.xml
配置hdfs文件系统端口
gedit hdfs-site.xml
配置副本数
gedit yarn-site.xml
这里是配置hadoop2代,可暂时不做配置
cp mapred-site.xml.template mapred-site.xml
gedit mapred-site.xml
配置mapreduce计算框架。
2.格式化文件系统
hadoop namenode -format
3.启动
start-all.sh
或者分别执行start-dfs.sh和start-yarn.sh(可选)
4.检验
jps
则伪分布式搭建成功。
3.问题和总结
1.在搭建独立模式时,在检验时,键入hadoop version ,jdk找不到路径时。则需要在hadoop配置文件中配置JAVA_HOEM,具体如下:
cd /usr/soft/hadoop-2.7.3/etc/hadoop
gedit hadoop-env.sh
2. 如果运行一些hadoop指令,提示找不到命令时。则说明环境变量里面的PATH没有配好。如实在不行,可进入执行目录下执行。实例如下:
cd /usr/soft/hadoop-2.7.3/sbin
./stop-all.sh
该命令的作用是停止平台运行。
3.由于版主在单点配置,因此没有配置SSH免密登录,如有需要请查看官方参考文档。
官方参考文档