kaywang 发表于 2016-12-8 07:58:11

hbase整合hadoop,并在Window环境下连接hbase

  环境:redhat9 ,hadoop-1.0.4,hbase-0.94.2,Window7,
  安装hadoop:
  1.安装ssh
  sudo apt-get install ssh
验证 ssh 是否安装service sshd start
  2.安装rsync 
  sudo apt-get install rsync
验证 rsync 是否安装:
rpm -qa|grep rsync
  3.配置ssh免登录
  ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
  cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
  验证是否成功 
  ssh localhost
  4.安装JDK,解压hadoop-1.0.4 tar -xzvf  hadoop-1.0.4-bin.tar.gz
  5,修改hadoop配置文件,指定JDk安装路径
  vi conf/hadoop-env.sh
  export JAVA_HOME=/home/app/jdk1.6.0_30
  6.修改redhat的主机名
  在/etc/hosts中添加
  192.168.150.128         hadoop.hbase
  7.修改hadoop配置文件,指定JDk安装路径
  在hadoop-env.sh中添加JAVA_HOME,vi conf/hadoop-env.sh
  export JAVA_HOME=/usr/java/jdk1.6.0_37/
  8,修改Hadoop核心配置文件core-site.xml,配置HDFS的地址和端口号
  vi conf/core-site.xml
  <configuration>
      <property>
          <name>fs.default.name</name>
          <value>hdfs://hadoop.hbase:9000</value>   
      </property> 
  </configuration>
  9.修改Hadoop中HDFS的配置,修改replication
  vi conf/hdfs-site.xml
  <configuration>
      <property>
          <name>dfs.replication</name> 
          <value>1</value>
      </property>
  </configuration>
  10,修改Hadoop中MapReduce的配置文件,配置的是JobTracker的地址和端口 
  vi conf/mapred-site.xml
  <configuration>
      <property>
          <name>mapred.job.tracker</name>
          <value>hadoop.hbase:9001</value>
      </property>
  </configuration>
  10,格式化Hadoop的文件系统HDFS
  bin/hadoop namenode -format
  11,启动hadoop
  bin/start-all.sh
  12.在WINDOW7 在配置IP 和主机名的映射
  修改C:\WINDOWS\system32\drivers\etc\hosts 的文件
  添加
  192.168.150.128 hadoop.hbase
  验证hadoop是否安装成功
  最后,验证Hadoop是否安装成功。打开在WINDOW7中浏览器,分别输入一下网址:
  http://lhadoop.hbase:50030    (MapReduce的Web页面)
  http://hadoop.hbase:50070    (HDfS的web页面)
  hbase的安装
  1.解压hbase-0.94.2 tar -xzvf  hbase-0.94.2
  2.修改hbase-env.sh
  添加JAVA_HOME
  export JAVA_HOME=/usr/java/jdk1.6.0_37/
  3.修改hbase-site.xml
  添加
  <configuration>
  <property>
  <name>hbase.rootdir</name>
  <value>hdfs://hadoop.hbase:9000/hbase</value>
  </property>
  </configuration>
  4.验证 ./bin/hbase shell进入shell,创建一个test表,同时http://hadoop.hbase:60010/master-status 可以看到master的相关内容
  在eclipse 中创建项目,导入hbase需要的jar包
  编写如下代码:

import java.io.IOException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.MasterNotRunningException;
import org.apache.hadoop.hbase.TableNotFoundException;
import org.apache.hadoop.hbase.ZooKeeperConnectionException;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.util.Bytes;
public class HbaseInterface {
//创建Configuration
public HbaseInterface(){
}
public static void main(String[] args){
try {
Configuration conf = HBaseConfiguration.create();
HbaseInterface hi = new HbaseInterface();
conf.set("hbase.zookeeper.quorum", "192.168.150.128");
HBaseAdmin admin = new HBaseAdmin(conf);
HTableDescriptortableDescriptor = admin.getTableDescriptor(Bytes.toBytes("test"));
byte[] name = tableDescriptor.getName();
System.out.println(new String(name));
} catch (MasterNotRunningException e) {
e.printStackTrace();
} catch (ZooKeeperConnectionException e) {
e.printStackTrace();
} catch (TableNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
  验证能够正常输出信息表名称test ,则连接成功,环境搭建成功
页: [1]
查看完整版本: hbase整合hadoop,并在Window环境下连接hbase