ITPub博客

首页 > 大数据 > Hadoop > Hadoop伪分布式模式的配置

Hadoop伪分布式模式的配置

Hadoop 作者:M20090403 时间:2011-12-11 11:16:52 0 删除 编辑
Hadoop有三种配置方式:单机模式、伪分布式模式和完全分布式模式。所谓单机模式是指Hadoop被配置成以非分布式模式运行的一个独立Java进程,这对调试非常有帮助。Hadoop也可以在单个节点上以所谓的伪分布式模式运行,此时每一个Hadoop守护进程都作为一个独立的Java进程运行。完全分布式模式则指具有实际意义的Hadoop集群,其规模可以从几个节点的小集群到几千个节点的超大集群。因为实验室机器内存有限,所以我仅尝试伪分布式模式的配置。
网上的资料五花八门,经过实践发现有些资料还存在错误。推荐《Hadoop开发者》这本杂志,其中第一期介绍的配置方法还是很规范的(其配置模式为完全分布式模式)。

1.安装JDK
配置Hadoop需要jdk1.6以上版本。在/usr目录下新建program目录,然后将jdk1.6的.bin文件拷贝到该文件夹下,执行“./jdk-6u13-linux-i586.bin”命令即可,此时在/usr/program目录下生成目录jdk1.6.0_13。现在jdk版本已更新到1.7,对于jdk1.7直接在安装目录下解压缩文件即可。
配置Java环境变量。root用户登录,在终端执行命令“vi /etc/profile”,然后加入以下内容:
# set java environment
export JAVA_HOME=/usr/program/jdk1.6.0_13
export JRE_HOME=/usr/program/jdk1.6.0_13/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
保存并退出,并执行source /etc/profile命令使配置生效
使用java -version命令查看jdk是否配置正确

2.配置节点之间的SSH无密码验证
sudo apt-get install ssh
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
这样就在当前用户目录下的.ssh目录中就生成了私钥id_rsa,公钥id_rsa.pub和公钥信息authorized_keys文件。
用ssh localhost验证配置是否成功,首次验证时要输入yes

3.Hadoop配置
下载hadoop包,解压缩到想要安装的目录下,我的安装目录为/usr/local/hadoop-0.20.203.0,然后配置安装目录下conf目录中的四个配置文件。
a.配置hadoop-env.sh
#set java environment
export JAVA_HOME=/usr/program/jdk1.6.0_13
b.配置core-site.xml


fs.default.name
hdfs://localhost:9000
HDFS的URL,文件系统://namenode标识:端口号


hadoop.tmp.dir
/usr/local/hadoop-0.20.203.0/hadooptmp
namenode上本地的hadoop临时文件夹


c.配置hdfs-site.xml


dfs.name.dir
/usr/local/hadoop-0.20.203.0/hdfs/name
namenode上存储hdfs名字空间元数据


dfs.data.dir
/usr/local/hadoop-0.20.203.0/hdfs/data
datanode上数据块的物理存储位置


dfs.replication
1
副本个数,不配置默认为3,应小于datanode机器数量


d.配置mapred-site.xml


mapred.job.tracker
localhost:9001


(具体各个配置项的意义可以查看《Hadoop实战》一书,里面介绍的很详细)
另外再配置masters和slaves文件,因为是本机伪分布式配置所以都应配置为localhost
进入安装目录的bin目录下,用./hadoop namenode -format命令格式化hadoop的namenode

以上hadoop的配置基本完成,为了方便hadoop命令的运行,我又配置了系统路径。在/etc/profile文件上添加:
export HADOOP_HOME=/usr/local/hadoop-0.20.203.0
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$PATH
再次运行source /etc/profile命令使配置生效

配置完成后,输入start-all.sh命令启动hadoop的各个监护进程。
输入jps查看启动的进程,如果配置正确应显示JobTracker、NameNode、Jps、DataNode、TaskTracker SecondaryNameNode六个进程。
还可以通过http://lcoalhost:50070查看NameNode状态,通过http://localhost:50030查看Map/Reduce状态,通过http://localhost:50060查看TaskTracker状态。
输入stop-all命令关闭hadoop的各个监护进程。
至此,hadoop部分的配置全部完毕(但愿没有落下什么),其实不是很难,但中间也还是碰到了不少问题,浪费了好多时间。和大家分享一下简单的配置流程,碰到的几个具体问题下篇日志总结。
<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21398908/viewspace-1120337/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-04-16