基于linux的hadoop环境搭建

2019-02-25|来源: 领悟书生

三种运行模式

单机模式:安装简单,几乎不用作任何配置,但仅限于调试用途

伪分布模式:在单节点上同时启动namenodedatanodejobtrackertasktrackersecondary namenode5个进程,模拟分布式运行的各个节点【考虑到本人的机器配置,选择这种方式学习】

完全分布式模式:正常的Hadoop集群,由多个各司其职的节点构成

伪分布式模式的安装和配置步骤

下载与解压

下载并解压Hadoop安装包,现在很多教程都是用0.20.2版本,所以我也选择这个版本

http://hadoop.apache.org/releases.html

http://archive.apache.org/dist/hadoop/core/

http://archive.apache.org/dist/hadoop/core/hadoop-0.20.2/

hadoop-0.20.2.tar.gz

root@debian3:/usr/local#tar zxvf hadoop-0.20.2.tar.gz

更改配置文件

进入Hadoop的解压目录,编辑conf/hadoop-env.sh文件(注意0.23版后配置文件的位置有所变化)配置JDK的安装路径

conf/hadoop-env.sh

# The java  implementation to use.  Required.

export  JAVA_HOME=/usr/local/jdk1.6.0_38

JDK的安装请参考:基于debian(ubuntu)的JDK安装与卸载-vps环境搭建实录(一)


编辑conf目录下core-site.xmlhdfs-site.xmlmapred-site.xml三个核心配置文件

core-site.xml

<configuration>

   <!--

       fs.default.name - 这是一个描述集群中NameNode结点的URI(包括协议、主机名称、端口号),集群里面的每一台机器都需要知道NameNode的地址。DataNode结点会先在NameNode上注册,这样它们的数据才可以被使用。独立的客户端程序通过这个URIDataNode交互,以取得文件的块列表。

   -->

   <property>

         <name>fs.default.name</name>

        <value>hdfs://192.168.1.102:9000</value>

</property>

<property>  

     <name>hadoop.tmp.dir</name>  

    <value>/usr/local/hadoop-0.20.2/mytmp</value>

</property>

</configuration>

hdfs-site.xml

<configuration>

   <!--

   dfs.replication:它决定着系统里面的文件块的数据备份个数。对于一个实际的应用>,它 应该被设为3(这个数字并没有上限,但更多的备份可能并没有作用,而且会占用更多

的空间)。少于三个的备份,可能会影响到数据的可靠性(系统故障时,也许会造成数据丢>

)

   dfs.data.dir:数据节点存储块的目录

   -->

   <property>

        <name>dfs.replication</name>

        <value>1</value>

    </property>

    <property>

         <name>dfs.data.dir</name>

         <value>/usr/local/hadoop-0.20.2/data</value>

     </property>

</configuration>

mapred-site.xml

<configuration>

   <!-- mapred.job.tracker -JobTracker的主机(或者IP)和端口。-->

    <property>

         <name>mapred.job.tracker</name>

        <value>192.168.1.102:9001</value>

    </property>

</configuration>

编辑conf目录下conf/master和conf/conf/slaves,把IP添加进去

在conf/master中加入master的ip : 192.168.1.102

在conf/slaves中加入slaves的IP: 192.168.1.102

配置ssh

配置ssh,生成密钥,使到ssh可以免密码连192.168.1.102

root@debian3:/usr/local/hadoop-0.20.2#  cd /root/

root@debian3:~#  ssh-keygen -t rsa

Generating  public/private rsa key pair.

Enter file in  which to save the key (/root/.ssh/id_rsa):

Enter  passphrase (empty for no passphrase):

Enter same  passphrase again:

Your  identification has been saved in /root/.ssh/id_rsa.

Your public  key has been saved in /root/.ssh/id_rsa.pub.

The key  fingerprint is:

11:25:02:a9:9b:70:2f:52:72:10:96:3e:a6:21:9f:89  root@debian3

The key's  randomart image is:

+--[ RSA  2048]----+

|.o. .o.  o..      |

|o.  .  .  o       |

|.. .    .         |

|=+=      .        |

|+X.*    S         |

|E B .            |

| . .             |

|                 |

|                 |

+-----------------+

root@debian3:~#  cd .ssh

root@debian3:~/.ssh#  ls

id_rsa  id_rsa.pub   known_hosts

id_rsa是密钥文件,id_rsa.pub是公钥文件。

root@debian3:~/.ssh#  cp id_rsa.pub authorized_keys

root@debian3:~/.ssh#  ls

authorized_keys  id_rsa   id_rsa.pub  known_hosts

格式化HDFS

root@debian3:/usr/local/hadoop-0.20.2#  bin/hadoop namenode -format  

13/02/23  22:57:17 INFO namenode.NameNode: STARTUP_MSG:

/************************************************************

STARTUP_MSG:  Starting NameNode

STARTUP_MSG:   host = debian3/127.0.1.1

STARTUP_MSG:   args = [-format]

STARTUP_MSG:   version = 0.20.2

STARTUP_MSG:   build =  https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20 -r  911707; compiled by 'chrisdo' on Fri Feb 19 08:07:34 UTC 2010

************************************************************/

13/02/23  22:57:18 INFO namenode.FSNamesystem: fsOwner=root,root

13/02/23  22:57:18 INFO namenode.FSNamesystem: supergroup=supergroup

13/02/23  22:57:18 INFO namenode.FSNamesystem: isPermissionEnabled=true

13/02/23  22:57:18 INFO common.Storage: Image file of size 94 saved in 0 seconds.

13/02/23  22:57:18 INFO common.Storage: Storage directory /tmp/hadoop-root/dfs/name has  been successfully formatted.

13/02/23  22:57:18 INFO namenode.NameNode: SHUTDOWN_MSG:

/************************************************************

SHUTDOWN_MSG:  Shutting down NameNode at debian3/127.0.1.1

************************************************************/

启动Hadoop

使用bin/start-all.sh启动Hadoop

root@debian3:/usr/local/hadoop-0.20.2#  bin/start-all.sh

starting  namenode, logging to  /usr/local/hadoop-0.20.2/bin/../logs/hadoop-root-namenode-debian3.out

192.168.1.102:  starting datanode, logging to /usr/local/hadoop-0.20.2/bin/../logs/hadoop-root-datanode-debian3.out

192.168.1.102:  starting secondarynamenode, logging to  /usr/local/hadoop-0.20.2/bin/../logs/hadoop-root-secondarynamenode-debian3.out

starting  jobtracker, logging to /usr/local/hadoop-0.20.2/bin/../logs/hadoop-root-jobtracker-debian3.out

192.168.1.102:  starting tasktracker, logging to  /usr/local/hadoop-0.20.2/bin/../logs/hadoop-root-tasktracker-debian3.out

检测守护进程启动情况

root@debian3:/usr/local/hadoop-0.20.2#  /usr/local/jdk1.6.0_38/bin/jps

9622 DataNode

9872  TaskTracker

9533 NameNode

9781  JobTracker

9711  SecondaryNameNode

9919 Jps

关闭Hadoop

使用bin/stop-all.sh关闭Hadoop

root@debian3:/usr/local/hadoop-0.20.2#  bin/stop-all.sh    

stopping jobtracker

192.168.1.102: stopping tasktracker

stopping namenode

192.168.1.102: stopping datanode

192.168.1.102: stopping secondarynamenode

本文链接:基于linux的hadoop环境搭建,由领悟书生原创,转载请注明出处http://www.656463.com/article/377

相关问答

更多

Linux服务器上搭建hadoop

用不同的账号,当然可以。 我用相同的账号,搭建了两套环境,只要安装hadoop的目录不再同一个目录下就可以。然后就是注意你的/etc/profile尽量不要配置HADOOP_HOME的值,只配置JDK就可以了,不然可能会用冲突,不知道该去找哪个hadoop home 了。

如何从linux进入hadoop环境

Hadoop生态这么大,Linux本身不带Hadoop的,Hadoop集群环境搭建对于新手来说,不是一件容易的事。要安装很多东西,配置很多文件的。没有安装Hadoop环境谈什么进去!

在线等!!关于hadoop环境搭建问题

1.关闭hdfs权限:hdfs-site.xml中 dfs.permissions false 2.检查eclipse插件是否设置了hadoop安装目录:将与linux下安装的hadoop相同版本的hadoop解压到windows下一个文件夹,然后指定hadoop插件目录,插件目录在preferences的map/reduce的hadoop installation location 3.在windows的hosts文件中添加hadoop所有节点的ip和主机名 4.关闭linux系统防火墙 5.把 ...

在linux系统上怎么搭建hadoop开发环境

在Eclipse的Windows->Preferences中,选择Hadoop Map/Reduce,设置好Hadoop的安装目录,这里,我直接从linux的/home/hadoop/hadoop-1.0.3拷贝过来的,点击OK按钮!

linux下如何搭建G++环境

作为一种开发环境的搭建,用哪种发行版的 Linux 都可以实现。但是,Red Hat 系列的(包括 Oracle、CentOS、红旗等) Linux 内核陈旧落后,Federo 之类的内核较新但稳定性可靠性太差,Ubuntu、Mint 之类的 Debian 系列,内核比较先进,稳定性可靠性又很好,是全世界开发人员用得最多的版本。如果你用 Ubuntu,在网上找资料或者跟人家交流也非常方便。

hadoop教程

相关文章

更多

最近更新

更多