Chinaunix首页 | 论坛 | 博客
  • 博客访问: 168062
  • 博文数量: 26
  • 博客积分: 245
  • 博客等级: 二等列兵
  • 技术积分: 456
  • 用 户 组: 普通用户
  • 注册时间: 2012-07-13 17:12
个人简介

日积月累

文章存档

2015年(9)

2014年(1)

2013年(6)

2012年(10)

我的朋友

分类: 云计算

2012-10-12 18:57:05

 Hadoop之集群搭建总结

这是个人在参照网上一下文章,自己尝试搭建,并碰到一些困难和问题,最后终于成功之后的总结,希望可以对你有点帮助。

有三台机子

192.168.1.101              master

192.168.1.102              slave1

192.168.1.103              slave2         

1.       SSH:ubuntu server 版安装时可选择安装OpenSSH(若没装,则可以sudo apt-get install openssh

2.       JDK:虽然ubuntuopenjdk,但是还是感觉sun的好一些。把jdk-()-.bin拷到ubuntu下,例如放/home/ubuntu/下,命令:chmod 777 jdk-().bin赋予可执行权限。然后运行。等待….

安装完之后配置环境变量:向/etc/encironment文件中添加

JAVA_HOME=”/home/ubuntu/jdk1.6.0_27(视版本而定)”

PATH=……….:$JAVA_HOME/bin

CLASS_HOME=”$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar”(好像可不填)

配置环境变量得重启生效

3.       修改/etc/hosts使得各主机名与IP互相识别(master需要填写所有机器,slave只需要填写自己和master)

即一个如(192.168.1.101   masterip与主机名的对子

4.下载hadoop:我是0.20.0版本的。并将hadoop-0.20.0更名为hadoop(为了方便)

5创建用户:在每个机器上都创建一个同名的用户(如:hadoop,因为用户名不统一的话,后面ssh无密码登录就很纠结了)

命令:sudo addgroup hadoop

      sudo adduser –ingroup hadoop hadoop

6.配置ssh无密码登录

  使用统一的用户hadoop,命令:ssh-keygen –t dsa –P ‘’ –f ~/.ssh/id_dsa

                              (这一步每台机子都要做)

                              cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

                               (这一步只有master) 

再把生成的认证钥发给slave,命令:scp ~/.ssh/authorized_keys slave1:/home/hadoop/.ssh/

      这一步会提示输入hadoop@slave1的密码,以后就可以直接ssh slave1登录了

 

@@在配置之后,有可能ssh出现说RSA密钥所指定机器和IP的密钥不符,会提示行数

known_hosts中删了这一行就好。或者直接在~/.ssh/conf中添加:StrickHostKeyChecking no

7.配置hadoop,这最好在windows下做好再把hadoop传到linux

①配置hadoop/conf中的mastersslaves,masters填入master的主机名或IPslaves填所有的slave的主机名或IP

②配置hadoop/conf中的hadoop-env.sh:加入如下代码:

export HADOOP_HOME=/home/hadoop/hadoop

export   HADOOP_CONF_DIR=$HADOOP_HOME/conf

export PATH=$PATH:$HADOOP_HOME/bin

并将JAVA_HOME改成自己的JAVA_HOME/home/ubuntu/jdk1.6.0_27

配置hadoop/conf中的core-site.xmlhdfs-site.xmlmapred-site.xml

core-site.xml:

    hadoop.tep.dir

    /home/hadoop/hadoop/hadooptmp(hadoop根目录下建文件夹hadooptmp)

 

 

    fs.default.name

    hdfs://master:9000

 

 

 

 

 

hdfs-site.xml:

 

 dfs.name.dir

 /home/hadoop/hadoop/NameData(hadoop根目录下建文件夹NameData)

 

 dfs.permissions

 false

 

 

 

 dfs.replication

 2(副本个数,可以为123,视集群大小而定)

 

 

 

mapred-site.xml

mapred.job.tracker

192.168.1.101:9001

 

8.hadoop文件夹拷入每台linux的机子,放在hadoop用户文件夹下,即/home/hadoop/hadoophadoop目录

 

9.为每台机子的hadoop/bin文件下的所有文件分配可执行权限,命令:

chmod u+x bin/*

masterhadoop根目录中执行:bin/start-all.sh,即启动了hdfs

格式化hdfshadoop namenode –format

这位一步可能出现不能创建/log目录,手动创建并chmod 777

10.即完成安装hadoop,可以在浏览器中查看图形界面:

其中的master可以写成IP

JobTracker -

 

 

阅读(2713) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~