Ubuntu14.04安装配置Hadoop2.6.0(完全分布式)与 wordcount实例运行

我的环境是:Ubuntu14.04+Hadoop2.6.0+JDK1.8.0_25

官网2.6.0的安装教程:http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-common/SingleCluster.html

为了方面配置,我在每台机器上都使用了hadoop用户来操作,这样做的确够方便。

结点信息:(分布式集群架构:master为主节点,其余为从节点)

机器名

IP

作用

master

122.205.135.254

NameNode and JobTracker 

slave1

122.205.135.212

DataNode and TaskTracker 

1.JDK的安装

首先Hadoop运行需要Java的支持,所以必须在集群中所有的节点安装JDK,

jdk1.7.0_60的详细安装注意:最好将集群中的JDK都安装在同一目录下,便于配置。实践中,笔者一般将JDK安装在/usr/java这个目录,但并不是必须的。

2.配置hosts文件

修改集群中所有机器的/etc/hosts,打开该文件的命令如下:

sudo gedit /etc/hosts

添加(例子):

122.205.135.254 master

122.205.135.212 slave1

注意:这里的master、slave1、slave2等等,指的是机器的机器名(使用命令hostname可以查看本机的机器名),切记,如果不是机器名的话会出问题的,并且集群中所有结点的机器名都应该不一样。

3.SSH无密码登录

Hadoop主从节点无密码登录的安装配置详细见我的另一篇章:点击打开链接

4.Hadoop的安装与配置

(1).下载解压Hadoop稳定版

我用的是hadoop-2.6.0,下载地址:http://mirrors.hust.edu.cn/apache/hadoop/common/stable/

将下载后的Hadoop 拷贝到hadoop目录下,解压到master服务器的/hadoop目录下(配置好master结点后再将其复制到其它的服务器上,一般来说,群集中所有的hadoop都安装在同一目录下):

解压命令如下:

tar xzfv hadoop-2.6.0.tar.gz

(2).配置Hadoop

1.修改hadoop-2.6.0/etc/hadoop/hadoop-env.sh,添加JDK支持:

export JAVA_HOME=/usr/java/jdk1.8.0_25

如果不知道你的JDK目录,使用命令echo $JAVA_HOME查看。

2.修改hadoop-2.6.0/etc/hadoop/core-site.xml

注意:必须加在<configuration></configuration>节点内

<configuration>
<property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop/hadoop-2.6.0/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://master:9000</value>
    </property>
</configuration>

3.修改hadoop-2.6.0/etc/hadoop/hdfs-site.xml

<property>
    <name>dfs.name.dir</name>
    <value>/home/hadoop/hadoop-2.6.0/dfs/name</value>
    <description>Path on the local filesystem where the NameNode stores the namespace and transactions logs persistently.</description>
</property>
 
<property>
    <name>dfs.data.dir</name>
    <value>/home/hadoop/hadoop-2.6.0/dfs/data</value>
    <description>Comma separated list of paths on the local filesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>

4.修改hadoop-2.6.0/etc/hadoop/mapred-site.xml

<property>
    <name>mapred.job.tracker</name>
    <value>master:9001</value>
    <description>Host or IP and port of JobTracker.</description>
</property>

5. 修改hadoop-2.6.0/etc/hadoop/masters

列出所有的master节点:

master

6.修改hadoop-2.6.0/etc/hadoop/slaves

这个是所有datanode的机器,例如:

slave1

slave2

slave3

slave4

7.将master结点上配置好的hadoop文件夹拷贝到所有的slave结点上

以slave1为例:命令如下:

scp -r  ~/hadoop-2.6.0 hadoop@slave1:~/

安装完成后,我们要格式化HDFS然后启动集群所有节点。

5.启动Hadoop

1.格式化HDFS文件系统的namenode

(这里要进入hadoop-2.6.0目录来格式化好些):

cd hadoop-2.6.0  //进入hadoop-2.6.0目录

bin/hdfs namenode -format  //格式化

2.启动Hadoop集群
启动hdrs命令如下:

sbin/start-dfs.sh //开启进程

成功的话输入jps会出现如下界面:

技术分享

补充,关闭hdfs集群的命令如下:

sbin/stop-dfs.sh

我们也可以通过网页来看是否正常安装与配置,地址如下:http://master:50070/

技术分享

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。