孙海龙的博客
记录笔记
hadoop+zookeeper+hbase安装、配置及应用实例
2014-08-05 15:53:09   阅读1448次

环境:

    jdk1.6.20+hadoop-0.20.2+zookeeper3.3.4+hbase0.90.6

本来是准备好了三台机器,结果后面一台挂了,所以只有两台了=。=

机器名              ip                           作用

ibm        125.216.227.182     namenode

ibm00    125.216.227.53        datanode
在开始之前,先负责任的说,选择的hadoop,hbase版本是有很大影响的,一方面是不同版本配置不一样,个别的配置文件没有等,另一方面并不是所有多兼容,所以还是要看看官方文档。
一. Hadoop的安装配置  

1、安装ubuntu10.04

    为了操作的简便,在所有机器上创建相同用户名和相同密码的用户。本例创建了相同的用户ibm

修改机器名:$ hostname 机器名。(注:重启ubuntu后,hostname会变为原来的默认值,所以重启电脑后记得把hostname改回来,免得与下面设置的/etc/hosts文件不一致!)

 

/etc/hosts 中添加机器名和相应的IP

127.0.0.1 localhost

125.216.227.182 ibm

125.216.227.53 ibm00


2、开启ssh 服务

注意:自动安装openssh-server 时,先要进行sudo apt-get update 操作。

安装openssh-server$ sudo apt-get install openssh-server

3、建立ssh 无密码登录


(1)NameNode 上实现无密码登录本机:

$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 

直接回车,完成后会在~/.ssh/生成两个文件:id_dsa id_dsa.pub。这两个是成对出现,类似钥匙和锁。

再把id_dsa.pub 追加到授权key 里面(当前并没有authorized_keys文件)

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

完成后可以实现无密码登录本机:$ ssh localhost


(2)实现NameNode 无密码登录其他DataNode(不用设置DataNode无密码登录NameNode!):

NameNode 上的id_dsa.pub 文件追加到dataNode authorized_keys 125.216.227.182节点为例)

a. 拷贝NameNode id_dsa.pub 文件:

$ scp id_dsa.pub ibm@125.216.227.53:/home/ibm/


b. 登录125.216.227.53执行$  cat id_dsa.pub >> .ssh/authorized_keys

其他的dataNode 执行同样的操作。


4、关闭防火墙

$ sudo ufw disable

注意:这步非常重要。如果不关闭,会出现找不到datanode 问题。

 

5、安装jdk1.6

 在ubuntu默认的源中,可以找到的jdk为openjdk,其正好是1.6的,可以使用

$sudo apt-cache search jdk可选列表,然后安装

安装配置JAVA 1.6.20

$sudo apt-get install openjdk-6-jre openjdk-6-jdk

 

然后配置环境变量:

 

 vi  /etc/profile

 

在其中添加如下:

export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk

export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

保存退出。

重启ubuntu


使用命令测试:

$java -version

注意:每台机器的java 环境最好一致。

 

6、安装hadoop

下载hadoop-0.20.2.tar.gz

解压:$ tar –zvxf hadoop-0.20.2.tar.gz


Hadoop 的安装路径添加到环/etc/profile :

export HADOOP_HOME=/home/ibm/hadoop

export PATH=$HADOOP_HOME/bin:$PATH

 

7、配置hadoop

hadoop 的主要配置都在hadoop-0.20.2/conf 下。

(1)conf/hadoop-env.sh 中配置Java 环境(namenode datanode 的配置相同)

$ vim hadoop-env.sh

$ export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk

 

(2)配置conf/masters conf/slaves 文件: