Linux版本:centos5
Hadoop版本:hadoop-0.20.2.tar.gz
Hbase版本:hbase-0.90.3.tar.gz
Jdk版本:jdk-6u25-linux-i586.bin
1. 安装jdk
Centos会自带openjdk,所以要先卸载
第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4)
安装好的CentOS会自带OpenJdk,用命令 java -version ,会有下面的信息:
java version "1.6.0"
OpenJDK Runtime Environment (build1.6.0-b09)
OpenJDK 64-Bit Server VM (build1.6.0-b09, mixed mode)
最好还是先卸载掉openjdk,在安装sun公司的jdk.
先查看 rpm -qa | grep java
显示如下信息:
java-1.6.0-openjdk-1.6.0.0-0.25.b09.el5
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
卸载:
rpm -e --nodepsjava-1.4.2-gcj-compat-1.4.2.0-40jpp.115
rpm -e --nodepsjava-1.6.0-openjdk-1.6.0.0-0.25.b09.el5
第二步:安装jdk
<1>从SUN下载jdk-6u24-linux-i586.bin
在/usr下新建java文件夹,将安装包放在/usr/java目录下
# mkdir /usr/java
<2>安装JDK
# cd /usr/java
# chmod a+x jdk-6u24-linux-i586.bin ← 使当前用户拥有执行权限
# ./jdk-6u24-linux-i586.bin ← 选择yes直到安装完毕
<3>配置
# vi /etc/profile
在最后加入以下几行:
JAVA_HOME=/usr/java/jdk1.6.0_25
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
这样我们就设置好了JDK,在centos下 source /etc/profile 就可以生效了.
2. 配置ssh
Centos已经安装了ssh
启动ssh /etc/rc.d/init.d/sshd start
设置开机运行 chkconfig sshd on
Hadoop 需要使用SSH 协议。
namenode 将使用SSH 协议启动 namenode和datanode 进程,配置 SSH localhost无密码验证。
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
(1)生成密钥对
前面是为了切换到root下面
通过以上命令将在/root/.ssh/目录下生成id_dsa私钥和id_dsa.pub公钥。
(2)进入/root/.ssh目录在namenode节点下做如下配置:
可以用键入sshlocalhost命令来看已经连接,会有这样的显示
注意最后一行!跟第一行比较,发现我们用ssh进入到localhost了!但已不需要输入密码了。
3. 修改host
4. [root@localhost conf]# vi /etc/hosts
5. # Do not remove the following line, or various programs
6. # that require network functionality will fail.
7. 127.0.0.1 localhost.localdomain localhost
8. ::1 localhost6.localdomain6 localhost6
9. 127.0.0.1 namenode datanode01
4.安装hadoop
把下载到的hadoop存到/opt中
在opt下建立文件夹hadoop mkdir /opt/hadoop
解压
cd /opt
tar –zxvf hadoop-0.20.2.tar.gz –C ./hadoop
进入/opt/hadoop/hadoop-0.20.2/conf,配置Hadoop配置文件
(1)配置java环境:修改hadoop-env.sh文件
在最后加上这样的内容
(2)配置Namenode的三个配置文件core-site.xml, hdfs-site.xml, mapred-site.xml。对应于/src/core/core-default.xml,但不能直接修改它,(hadoop启动时先读取src下面的core/core-default.xml,hdfs/hdfs-default.xml,apred/mapred-default.xml,里面缺失的变量由conf下面的三个-site文件提供)
(2.1)配置core
(2.2)配置hdfs
(2.3)配置mapred
5、启动hadoop(要关闭防火墙:serviceiptables start)
(1)格式化namenode,(注意看清路径哦)
(2) 启动Hadoop守护进程
我此处的图像为: |
这就表示你配置成功了,上面的一个都不能少
这时候你就可以点击进入下面的网站了。
NameNode - http://localhost:50070/
JobTracker - http://localhost:50030/
6、测试例子wordcount
7、安装HBase
将hbase压缩文件放在/opt/hadoop下
cd /opt/hadoop
解压:tar zxvf hbase-0.20.1.tar.gz
修改文件/opt/hadoop/hbase-0.90.3/conf/hbase-env.sh,在其中加入JAVA_HOME变量: exportJAVA_HOME=/usr/java/jdk1.6.0_25
启动hbase:
/opt/hadoop/hbase-0.90.3/bin/start-hbase.sh
成功启动hbase的守护进程.
启动hbase hql shell:
/opt/hadoop/hbase-0.90.3/bin/hbase shell
在hql shell中可以进行hbase数据操作,如果需要帮助信息可以键入:
hbase>help
简单测试hbase:
在hbase shell下:
hbase>create 't1','f1','f3'
hbase>list
使用浏览器访问 http://localhost:60010/ 可以查看当前hbase信息.
启动hbase REST服务:
/opt/hadoop/hbase-0.90.3/bin/hbase reststart
成功启动hbase REST服务后就可以通过对uri: http://localhost:60050/api/ 的通用REST操作(GET/POST/PUT/DELETE)实现对hbase的REST形式数据操作.
每次重启服务器后要做的事:
1、 启动hadoop进程
cd /opt/hadoop/hadoop-0.20.2/bin
./start-all.sh
2、 启动hbase
/opt/hadoop/hbase-0.90.3/bin/start-hbase.sh