简单的HDFS集群部署流程

环境说明和准备
--------------------------------------------------

所需软件:

JDK-1.6.0.32
HADOOP- 1.0.3


环境说明:

集群中包括4个节点:1个Master,3个Salve,节点之间局域网连接,可以相互ping通,节点IP地址分布如下:



安装centOS5.5操作系统

管理员/密码:root/pku218
用户:hadoop/hadoop


******************************************************************************************************************

详细配置流程:
--------------------------------------------------

************************
JDK的安装
************************


1.root登陆,在/usr下建一个java文件夹和一个hadoop文件夹,默认用户和组是root,需要修改文件夹的属性,使其属于hadoop:
chown –R hadoop:hadoop hadoop
chown –R hadoop:hadoop java





2.将软件分别copy至文件夹中




3.解压JDK: ./jdk-6u32-linux-i586.bin



4. 配置环境变量:
  
    1) 切换到root下
    2) vim /etc/profile
    3) 再最后添加:
    exports JAVA_HOME=/usr/java/jkd1.6.0_32(这个视jdk的安装路径而定)
    exports CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
    exports PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
    4) 保存后,重启电脑
    5) 完成后查看:java –version,正常情况下如下图,应该是安装后的版本:





************************
配置IP和修改主机名
************************


1.root身份登录:vim /etc/sysconfig/network-script/ifcfg-eth0

2.在其中添加如下信息:

BROADCAST=192.168.0.255
IPADDR=192.168.0.X
NETMASK=255.255.255.0
NETWORK=192.168.0.0
GATEWAY=192.168.0.1




3.重启电脑

4.在终端输入/sbin/ifconfig查看IP配置情况,配置正确如下图显示:



注意,四台电脑分别配置IP


5.在root下,在终端输入hostname new-hostname(输入自己定义的名称,比如slave1)

6.在root下,修改/etc/sysconfig/network中的HOSTNAME为自定义名称



7.切换回hadoop用户状态下





************************
配置SSH
************************


master和slave都要安装ssh

1. 终端输入:ssh-keygen –t rsa –P ‘’
注意,ssh和-keygen之间没有空格,rsa后面是大写P,最后两个单引号之间也没有空格



2.提示输入文件名保存key值,直接回车在slave的主文件夹下进入.ssh,
可以查看到两个文件,修改.ssh文件夹的权限: chmod –R 700 .ssh





3. 在master终端输入: scp ~/.ssh/id_rsa.pub 远程用户名@远程服务器ip:~/
注意:这时候需要输入slave的密码




4. 在slave终端输入: cat id_rsa.pub >> ~/.ssh/authorized_keys 
   在~/.ssh下产生一个authorized_keys文件


5. 修改authorized_keys权限到600:  chmod 600 authorized_keys


6. 切换到root身份,编辑配置文件: vim /etc/ssh/sshd_config


注意,第三行AuthorizedkeysFile后面应跟绝对路径:
/home/hadoop/.ssh/authorized_keys





7.在slave的root身份下,启动/sbin/service服务,如下图:



8.在master的root身份下,启动/sbin/service服务,同上

9.从master测试能否直接登录slave而不需要密码,在master终端输入:
ssh 用户名@ip地址  ---比如:ssh [email protected]


10.测试成功后,在master终端中exit出来




************************
安装HADOOP
************************


1.在slave的hadoop用户状态下,进入/usr/hadoop,建立一个新文件tmp.然后在hadoop文件夹下直接解压hadoop1.0.3
tar –zxvf hadoop.xxx.tar.gz


2.进入hadoop1.0.3文件夹,进入其中的src:
     1) 进入core文件夹,拷贝core_default.xml到hadoop1.0.3下的conf目录
     2) 进入hdfs文件夹,拷贝hdfs_default.xml到hadoop1.0.3下的conf目录
     3) 进入mapred文件夹,拷贝mapred_default.xml到hadoop1.0.3下的conf目录






3. 进入conf目录,删除其中的core-site.xml,hdfs-site.xml,mapred-site.xml,并同时把刚才加入的三个xxx.default.xml文件的文件名改成xxx-site.xml(就是替换而已)

4.修改conf目录下的hadoop-env.sh文件
1) 把export JAVA_HOME前的#去掉
2) 修改JAVA_HOME的内容为我们之前设置的JAVA_HOME的值即可


5.修改core-site.xml中的的内容:
     1) 修改hadoop.tmp.dir这个property的value,改成刚才我们建立的tmp文件夹的绝对路径



    2) 修改fs.default.name这个property的value,改成hdfs://192.168.0.2:9000




6. 修改hdfs-site.xml的内容:
修改dfs.replicaion这个property的value为1




7. 修改mapred-site.xml的内容:
修改mapred.job.tracker这个property的value为http://192.168.0.2:9001





8.在conf目录下,修改文件masters的内容,该为192.168.0.2,如图:





9.进入到hadoop1.0.3目录下

10.初始化,在slave终端输入: bin/hadoop namenode –format




11.配置完毕

猜你喜欢

转载自melburg.iteye.com/blog/1596386