Hadoop伪分布搭建手册

mac2024-08-12  60

                                  Hadoop伪分布集群搭建

第1章 Hadoop集群搭建 

1.1前言 

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS是一个分布式文件系统(Hadoop Distributed File System),为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算。此外,在Hadoop2.0以上版本,Hadoop还支持yarn来进行资源调度优化。

Hadoop是用java语言开发的,所以在部署Hadoop集群时,通常要在每个节点安装JDK,进而在每个节点搭建Namenode或DataNode,这是一个典型的主从结构,NameNode负责维护管理DataNode,DataNode负责数据块的存储,并将自身所持有的数据块信息上报给NameNode。由于目前我们只有一个节点,所以搭建的是Haoop伪分布集群,即HDFS的Namenode和Datanode都在一个节点上。

综上,要认真学习好Hadoop及其生态框架,必须熟知HDFS和MapReduce的算法原理与结构方法,在这里推荐大数据的三篇论文,Google大数据的三驾马车:Google FS、MapReduce、BigTable。奠定了风靡全球的大数据算法的基础!在Hive开发中,只有对HDFS的分布式存储方式有清晰的认识,掌握了MapReduce算法原理,才能认识到Hive在抽取数据时DataNode的工作方式,知道Hive脚本在集群上是如何执行的,从而对Hive进行调优,提升工作效率。

 1.2准备工作

 1.2.1目录规划

JDK以及hadoop安装包位于:

/home/vlog/soft/HADOOP

节点的ip地址为:localhost,使用虚拟机里的putty工具登录,如图:

 

1.2.2设置主机名 

配置hostname用于后续配置集群间通信寻址(需要root权限)。

vi /etc/sysconfig/network

 

修改hostname

保存退出

再执行一次 hostname SPDBHADOOP

将hostname与ip地址进行映射。

查看ip:

ifconfig

vi /etc/hosts(需要root权限)

在末尾追加一行

10.137.4.18      hostname

检查是否能ping通hostname

ping hostname

1.3安装JDK

 1.3.1解压JDK

进入JDK存放目录,解压安装包,执行

tar -zxvf jdk-7u79-linux-x64.tar.gz 

1.3.2配置环境变量

 vi /etc/profile(需要root权限)

在末尾追加

export JAVA_HOME=/home/vlog/soft/HADOOP/jdk1.7.0_79

export PATH=.:$JAVA_HOME/bin:$PATH

执行source /etc/profile生效

执行java -version验证jdk安装是否成功。

1.4安装Hadoop

进入Hadoop安装包存放目录,解压安装包

tar -zxvf hadoop-2.6.0.tar.gz

1.4.2修改配置文件

 

解压完成后在当前目录会出现hadoop-2.6.0文件夹,进入文件夹的/etc/hadoop目录:

cd hadoop-2.6.0/etc/hadoop

将core-sit.xml中的ip修改成主机名hostname,同时配置hadoop的安装路径;

将yarn-site.xml中的ip修改成主机名hostname;

在slaves中添加主机名hostname;

将hadoop-env.sh文件中的export的路径与JDK路径所匹配;

将mapred-site.xml文件中的mapreduce.framework.name的值设置为yarn;

设置hdfs-site.xml文件中的dfs.replication(文件副本数),实验环境设置为1,一般设置为3; 

1.5启动Hadoop 

1.5.1 格式化namenode

在集群第一次启动前,需要对Namenode进行格式化:

bin/hadoop namenode -format

 1.5.2 启动集群

sbin/start-dfs.sh

启动完成后,通过jps查询进程,可以看到namenode,datanode以及secondary namenode和jps进程,说明启动成功。 

1.5.3 web端展示

 在浏览器地址栏输入hostname

1.5.4关闭集群 

执行Sbin/stop-dfs.sh

1.6安装过程出现的坑 

1.6.1无法启动hadoop集群 

core-site文件中hadoop的路径配置错误,重新配置即可。 

namenode没有格式化,执行/hadoop namenode -format即可。(注:namenode只能再第一次启动前进行格式化,后期如果格式化namenode会造成namenode和datanode版本不匹配的问题,这时则需要删除datanode的旧版本,然后再重新启动hadoop) 

1.6.3安装jdk失败 

安装jdk时发现linux系统自带的openjdk,需要先删除系统自带的openjdk,然后再进行安装,安装完成后执行java -version查看是否安装成功。 

最新回复(0)