Hadoop1.2.0开发笔记(五)

本文接下来描述hadoop-1.2.0的系统搭建,在搭建环境的过程中可能会碰到很多问题,需要考验开发人员的足够的耐心

本人的系统环境是linuxmint15 64bit

1)     Hadoop的基本安装

a.     首先需要编译hadoop-1.2.0系统,在终端进入${hadoop.root}目录,执行ant eclipse命令,会自动下载相关依赖jar,编译项目(因为本人是要导入到eclipse开发工具里面,所以执行的是eclipse命令)

b.    在运行Hadoop之前,需要先配置Hadoop的环境,指明Java环境的目录。 编辑${hadoop.root}/conf/hadoop-env.sh文件,添加java的环境变量

export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45

export HADOOP_NAMENODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_NAMENODE_OPTS"
export HADOOP_SECONDARYNAMENODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_SECONDARYNAMENODE_OPTS"
export HADOOP_DATANODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_DATANODE_OPTS"
export HADOOP_BALANCER_OPTS="-Dcom.sun.management.jmxremote $HADOOP_BALANCER_OPTS"
export HADOOP_JOBTRACKER_OPTS="-Dcom.sun.management.jmxremote $HADOOP_JOBTRACKER_OPTS"
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45

c.      为了方便在终端运行Hadoop的命令,我们可以将${hadoop.root}/bin目录添加到至终端的环境目录中,编辑/etc/profile文件(sudo gedit /etc/profile),在后面添加

export HADOOP_INSTALL=/home/chenying/workspace/hadoop-1.2.0
export PATH=$PATH:$HADOOP_INSTALL/bin

d.      至此,Hadoop的基本安装与配置已经完成,可以通过在终端中输入如下命令测试Hadoop是否安装成功:

终端运行hadoop version命令,若成功则应该输出hadoop的版本信息

chenying@Ftpdown ~ $ hadoop version
Hadoop 1.2.1-SNAPSHOT
Subversion  -r 
Compiled by chenying on Fri May 31 04:22:09 CST 2013
From source with checksum 2e0dac51ede113c1f2ca8e7d82fb3405
This command was run using /home/chenying/workspace/hadoop-1.2.0/hadoop-core-1.2.0.jar

2)     Hadoop运行模式的配置

Hadoop有三种运行模式:单机模式(Standalone)、伪分布模式(Psedu-distributed)和全分布模式(Fully distributed)。前两者用于在单台机器上部署环境,为了方便后续的开发及更加真实地模拟分布式环境,我们采用伪分布模式(其余两种模式的部署请参阅《HadoopThe Definitive Guide.Appendix A)。

a.      采用伪分布式模式需要配置${hadoop.root}/conf/下的core-site.xmlhdfs-site.xmlmapred-site.xml文件,分别如下:

core-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value>
  </property>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/home/chenying/workspace/hadoop-1.2.0/tmp/hadoop-${user.name}</value>
  </property>

</configuration>

hdfs-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>
 
<property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
<!--<property>
    <name>dfs.permissions</name>
    <value>false</value>
  </property>-->

</configuration>

mapred-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>
<property>
    <name>mapred.job.tracker</name>
    <value>localhost:9001</value>
  </property>
</configuration>

b.      安装配置SSH

在伪分布式运行模式下,与全分布式模式一样,Hadoop会通过SSH在集群中的主机上运行守护程序,所以我们还需要安装和配置SSH Server。对于linuxmint15来说,系统已经自带了SSH Client,所以我们只需要安装SSH Server即可。在终端运行如下命令安装SSH Server

$sudo apt-get install openssh-server

安装完成后,为了方便,还应该配置SSH运行在无密码的登陆状态下,可以通过如下命令完成这一配置:

%ssh-keygen –t rsa –f ~/.ssh/id_rsa  (备注:执行此条命令后根据提示信息,不输入密码直接回车就等设置无密码)

%cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

设置完成后,可以通过如下命令测试SSH

%ssh localhost

若成功,则可以看到类似的信息:

Welcome to Linux Mint 15 Olivia (GNU/Linux 3.8.0-19-generic x86_64)

Welcome to Linux Mint
 * Documentation:  http://www.linuxmint.com

35 packages can be updated.
0 updates are security updates.

Last login: Fri May 31 06:02:50 2013 from localhost

c.      格式化HDFS并启动

在启动Hadoop之前,必须先格式化HDFS,以创建新的文件系统并初始化namenode的文件结构,可以通过如下命令完成这一操作:

%hadoop namenode –format

格式化完成之后,就可以启动Hadoop了:

%start-all.sh

若需要停止Hadoop,只需要在输入如下命令即可:

%stop-all.sh

注意:在关闭namenode节点的电源之前,务必保证先停止Hadoop,否则可能造成HDFS文件系统出错,下次启动时可能会丢失文件。若出现此意外情况,可以通过格式化HDFS命令修复,但无法保证HDFS上的原文件的找回。

d.      测试

Hadoop默认启动了两个端口用于查看Hadoop的状态:通过在浏览器中打开http://localhost:50070来查看HDFS的运行状态,通过http://localhost:50030可以查看MapReduce的运行状态。若可以成功打开网页,则完成了Hadoop的伪分布式部署。

---------------------------------------------------------------------------

本系列Hadoop1.2.0开发笔记系本人原创

转载请注明出处 博客园 刺猬的温驯

本文链接 http://www.cnblogs.com/chenying99/archive/2013/05/31/3109648.html

原文地址:https://www.cnblogs.com/chenying99/p/3109648.html