大数据处理平台Hadoop(四)

Hadoop安装、单机模式及伪分布模式搭建

通过上一章的介绍和学习,相信读者朋友们已经掌握了怎么用自己的电脑登录服务器,我们懂得了远程登录工具的作用,还有的是我们还进行了节点的jdk配置,使我们的服务器更加的完善了,下面这一章我们将来介绍一下hadoop的安装以及单机调试模式,伪分布式这几个点。同样的,你搭建的4台机器也要安装上hadoop环境。

hadoop的安装

在安装hadoop之前,我们需要准备好一些软件包,这里由于我学习的时候用的hadoop版本比较低,所以建议读者根据需要下载新的版本,不同的版本可能增加了不同的一些新的属性,这里在hadoop的安装时会给出hadoop软件包的下载网址,显然hadoop也是apache的产品。

hadoop的安装

1.下载hadoop-x.y.z.tar.gz

网址:https://hadoop.apache.org/releases.html


2.上传软件包 通过远程登录工具,我们能把刚刚下载好的hadoop安装包发送到节点上去。

3.tar开软件包 得到Hadoop的安装包之后,我们需要通过命令行把安装包解压,上一章为我们说过,我们的一切关于大数据的软件一致保存在/soft文件下,因此我们在tar开文件的时候用-C指定了tar开文件的目录是/soft,命令行为
1
$>tar -zxvf hadoop-x.y.z.tar.gz -C /soft

4.创建符号连接

为了方便找到hadoop的home目录,我们跟上一章的思路是一样的,为hadoop的home目录创建符号连接,这样能使我们更加方便的命名hadoop的家目录,使配置更加直观简洁,具体命令行为

1
$>ln -s hadoop-x.y.z hadoop


5.验证hadoop是否安装成功

下面是验证刚刚的hadoop是否安装成功,有没有解压成功,它的验证方式跟jdk有点类似,具体的命令行如下

1
2
$>cd /soft/hadoop/bin
$>./hadoop version


6.配置环境变量

这里我们的hadoop虽然安装完了,但是我们还是需要一些环境变量的配置,这里我们配置环境变量的路径是在/etc/profile,上一章已经解析过这个文件,一般我们配置的环境变量都是在这个文件中。

1
$>nano /etc/profile


添加的环境变量的内容

1
2
3
#hadoop
export HADOOP_HOME=/soft/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

最后我们保存之后还需要进行更新配置文件

1
$>source /etc/profile

以上我们已经完成了hadoop的安装以及hadoop的环境变量的配置,下面我们将讲解一下hadoop的单机模式。

hadoop的单机模式

运行:
单机模式是Hadoop的默认模式。这种模式在一台单机上运行,没有分布式文件系统,而是直接读写本地操作系统的文件系统。

配置:
单机模式(standalone)首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选择了最小配置。在这种默认模式下所有3个XML文件均为空。当配置文件为空时,Hadoop会完全运行在本地。

节点交互:
单机模式因为不需要与其他节点交互,单机模式就不使用HDFS,也不加载任何Hadoop的守护进程。该模式主要用于开发调试MapReduce程序的应用逻辑。

hadoop单机模式搭建

从上面我们已经知道单机模式一般是用于开发和调试MapReduce程序的应用逻辑,而且在搭建方面,上面已经说的相当的明白,hadoop一旦安装之后,这个就默认了是单机模式了,其实我们安装完hadoop后就是一个单机模式,只不过配置文件是空的,hadoop是单机模式是完全运行在本地的。但是,这里我们需要完善一个配置,以避免以后在搭建完全分布式出现问题。

1.更改hadoop-env.sh

这个文件我们有一个地方需要更改,文件在/soft/hadoop/etc/hadoop/hadoop-env.sh,我们需要修改里面的jdk的路径,原来的文件中的export JAVA_HOME=${JAVA_HOOME} 请改为export JAVA_HOME=/soft/jdk。

1
$>nano /soft/hadoop/etc/hadoop/hadoop-env.sh


2.验证单机模式

hadoop的单机模式无需搭建,一旦hadoop安装完成修改了配置环境之后就是单机模式了,我们不需要作任何的修改。当我们使用命令行hadoop fs -ls /时会看见我们的linux/目录,因为hadoop单机模式完全运行在本地。

1
$>hadoop fs -ls /


以上是对单机模式的讲解,这种模式一般是用于调试和开发程序的,也是十分常用的一种模式,这种模式在一台节点机上就能执行,相当方便,请读者朋友们自行搭建体验,具体的搭建步骤已经在上面给出。

hadoop的伪分布模式

运行:伪分布模式这种模式也是在一台单机上运行,但用不同的Java进程模仿分布式运行中的各类结点。

配置:伪分布模式在“单节点集群”上运行Hadoop,其中所有的守护进程都运行在同一台机器上。

交互:伪分布模式在单机模式之上增加了代码调试功能,允许你检查内存使用情况,HDFS输入输出,以及其他的守护进程交互

hadoop伪分布式的搭建(1)

1.进入hadoop的配置目录

1
2
$>cd /soft/hadoop/etc/hadoop
$>ls

2.配置core-site.xml

core-site.xml文件是集群的全局参数,该文件是用于用于定义系统级别的参数,如HDFS URL 、Hadoop的临时目录等,下面我们配置的伪分布式只配置hdfs的url,至于其他的全局参数用的是默认的值。

1
$>nano core-site.xml



伪分布模式core-site.xml的配置如下

1
2
3
4
5
6
7
<?xml version="1.0"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost/</value>
</property>
</configuration>

3.配置hdfs-site.xml

hdfs-site.xml文件配置的是hdfs,该文件的配置项是名称节点和数据节点的存放位置、文件副本的个数、文件的读取权限等。下面我们对这个文件进行配置,这里我们只设置副本的数目,并设置为1,其他的使用默认值。

1
$>nano hdfs-site.xml



伪分布模式hdfs-site.xml的配置如下

1
2
3
4
5
6
7
<?xml version="1.0"?>
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

4.配置mapred-site.xml

mapred-site.xml是Mapreduce参数,他的主要内容包括JobHistory Server和应用程序参数两部分,如reduce任务的默认个数、任务所能够使用内存的默认上下限等。这里我们设置yarn的为资源管理框架。

1
2
$>cp mapred-site.xml.template mapred-site.xml
$>nano mapred-site.xml



伪分布模式mapred-site.xml的配置如下

1
2
3
4
5
6
7
<?xml version="1.0"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

5.配置yarn-site.xml

yarn-site.xml是集群资源管理系统参数,他的主要内容是配置ResourceManager ,nodeManager的通信端口,web监控端口等。

1
$>nano yarn-site.xml



伪分布模式yarn-site.xml的配置如下

1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0"?>
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

这一篇文章我们讲解了hadoop的安装,单机模式及伪分布式的一部分xml的配置,当然伪分布式还没有配置完成,下一章将继续讲解伪分布式的搭建,这一章读者朋友们可以先搭建后伪分布式的一小部分,下一章将进行完整的伪分布式的搭建和最实用的完全分布式的搭建,这一章就先在这里结束,更多精彩内容请留意下一章。

本文标题:大数据处理平台Hadoop(四)

文章作者:陈紫良

发布时间:2019年09月04日 - 10:38

最后更新:2019年09月05日 - 21:29

原始链接:https://chen-tzliang.github.io/2019/09/04/hadoop-4/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------本文结束感谢您的阅读-------------