从windows java应用程序访问虚拟盒hbase

从windows java应用程序访问虚拟盒hbase,java,hadoop,hbase,bigdata,apache-zookeeper,Java,Hadoop,Hbase,Bigdata,Apache Zookeeper,嗨,我是hbase的新手,正在尝试练习。首先,我想描述一下系统配置。 背景: 我正在使用Windows 7并安装Oracle Virtual Box。然后在虚拟机上安装ubuntu服务器,之后我在ubuntu上安装了hbase0.98-hadoop2-bin.tar.gz。我已在独立模式下配置了hbase。我的hbase-site.xml文件如下所示: <Configuration> <property> <name>hbase.rootdir</nam

嗨,我是hbase的新手,正在尝试练习。首先,我想描述一下系统配置。 背景:

我正在使用Windows 7并安装Oracle Virtual Box。然后在虚拟机上安装ubuntu服务器,之后我在ubuntu上安装了hbase0.98-hadoop2-bin.tar.gz。我已在独立模式下配置了hbase。我的hbase-site.xml文件如下所示:

<Configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///home/abc/hbase</value>
</property>

<property>
<name>hbase.zookeeper.property.rootDir</name>
<value>/home/abc/zookeeper</value>
</property>
</configuration>
我想要什么?

我做错了什么? 我有没有办法从windows java程序访问hbase(驻留在虚拟机上)

加号:

我研究了以前提出的问题,但没有一个对我有用


任何帮助都将不胜感激

您是否尝试将虚拟机的网络设置设置为“桥接适配器”而不是“NAT”,
然后从主机系统中,尝试打开浏览器并键入“guestIP:Hbase_Master_Port”(例如192.168.1.100:60010),它将打开主管理页

您的virtual box ubuntu实例是否配置为接受外部连接?运行ifconfig并检查“eth0”接口是否工作。如果没有,试试这个:是的,当我做ifconfig时,它会显示关于eth0和lo.cool的信息。现在检查你的防火墙设置。您可以从windows远程登录到VM中的端口吗?你可能需要像cygwin这样的东西。我想你已经看到了:是的,你也看到了,但仍然面临着同样的问题
Exception in thread "main" org.apache.hadoop.hbase.ZooKeeperConnectionException: HBase is able to connect to ZooKeeper but the connection closes immediately. This could be a sign that the server has too many connections (30 is the default). Consider inspecting your ZK server logs for that error and then make sure you are reusing HBaseConfiguration as often as you can. See HTable's javadoc for more information.
    at org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher.<init>(ZooKeeperWatcher.java:155)
    at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getZooKeeperWatcher(HConnectionManager.java:990)
    at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.setupZookeeperTrackers(HConnectionManager.java:303)
    at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.<init>(HConnectionManager.java:294)
    at org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:156)
    at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:168)
    at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:146)
    at HBaseConnector.main(HBaseConnector.java:151)
Caused by: org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase
    at org.apache.zookeeper.KeeperException.create(KeeperException.java:99)
    at org.apache.zookeeper.KeeperException.create(KeeperException.java:51)
    at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1021)
    at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1049)
    at org.apache.hadoop.hbase.zookeeper.ZKUtil.createAndFailSilent(ZKUtil.java:903)
    at org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher.<init>(ZooKeeperWatcher.java:133)
Configuration config = HBaseConfiguration.create();
HTable table = new HTable(config, "myLittleHBaseTable");
Put p = new Put(Bytes.toBytes("myLittleRow"));