为了账号安全,请及时绑定邮箱和手机立即绑定

如何在windows平台上用Eclipse调试运行HBase?

/ 猿问

如何在windows平台上用Eclipse调试运行HBase?

翻翻过去那场雪 2018-12-21 15:19:12

如何在windows平台上用Eclipse调试运行HBase


查看完整描述

1 回答

?
慕运维1137616

 操作步骤如下:

  1.下载和安装cygwin;

  2.下载新的Zookeeper包和HBase包,这里ZooKeeper版本为3.3.1,HBase版本为0.20.4

  3.把利用它们的源码包在Eclipse下生成2个独立的Project,注意:zookeeper工程,要把那个conf目录加入到工程的src中去

  4.修改zookeeper工程下的conf目录中的zoo.cfg文件,例子如下:

  # The number of milliseconds of each tick

  tickTime=5000

  # the directory where the snapshot is stored.

  dataDir=D:/zookeeper-3.3.1/data

  # the port at which the clients will connect

  clientPort=2181


  就是给zookeeper指定文件存放的地方以及端口

  5.启动zookeeper

  在Eclipse中新建一个Run config,main class为:org.apache.zookeeper.server.quorum.QuorumPeerMain

  启动的程序参数为:D:/workspace/zookeeper3.3.1/conf/zoo.cfg

  启动的虚拟机参数为:

  -Dzookeeper.log.dir=D:/workspace/zookeeper3.3.1/log

  -Dzookeeper.root.logger=INFO,CONSOLE

  如图所示:


  好了,这样就可以在Eclipse中把ZooKeeper启动起来了。

  6.修改HBase project中的一个类

  org.apache.hadoop.hbase.LocalHBaseCluster

  找到它的main函数,把main函数改成下

  public static void main(String[] args) throws IOException {

  HBaseConfiguration conf = new HBaseConfiguration();

  conf.set("hbase.zookeeper.quorum", "localhost");

  conf.set("hbase.zookeeper.property.clientPort", "2181");

  LocalHBaseCluster cluster = new LocalHBaseCluster(conf,1);

  cluster.startup();

  }  


  注意行:LocalHBaseCluster cluster = new LocalHBaseCluster(conf,1); 构造函数中的1是代表Region server的个数,在这里只想起一个region server.

  7.修改HBase的配置文件

  在HBase project下的src中可以看到hbase-default.xml和hbase-site.xml两个文件,改哪个都可以。直接在hbase-default.xml改的,重要的是下面3个属性hbase.rootdir,hbase.cluster.distributed,hbase.tmp.dir,

  把hbase.rootdir,hbase.tmp.dir都指向了本地的目录,当然可以根据自己的需要调整,当然格式一定一样写。

  <property>

  <name>hbase.rootdir</name>

  <value>file:///D:/hbase-0.20.3/data </value>

  <description>The directory shared by region servers.

  Should be fully-qualified to include the filesystem to use.

  E.g: hdfs://NAMENODE_SERVER:PORT/HBASE_ROOTDIR

  </description>

  </property>

  <property>

  <name>hbase.cluster.distributed</name>

  <value>false </value>

  <description>The mode the cluster will be in. Possible values are

  false: standalone and pseudo-distributed setups with managed Zookeeper

  true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)

  </description>

  </property>

  <property>

  <name>hbase.tmp.dir</name>

  <value>D:/hbase-0.20.3/tmp </value>

  <description>Temporary directory on the local filesystem.</description>

  </property>

  <property>  


  8.启动HBase,直接run org.apache.hadoop.hbase.LocalHBaseCluster就可以,run config不需要没有什么别的配置。当然就也可以debug了。



查看完整回答
反对 回复 2019-01-05
  • 1 回答
  • 0 关注
  • 251 浏览
我要回答

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信