복붙노트

[HADOOP] 윈도우 자바 응용 프로그램에서 Access 가상 상자 HBase를

HADOOP

윈도우 자바 응용 프로그램에서 Access 가상 상자 HBase를

안녕 난 HBase를 새로운 그것을 실천하려합니다. 우선 내가 시스템 구성에 대해 설명하고 싶습니다. 배경:

나는 윈도우 7을 사용하고 가상 상자 오라클을 설치하고있다. 가상 상자에 다음 설치된 우분투 서버 그 후 나는 우분투에 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>

이제 내 HBase를 쉘은 테이블을 생성 잘 작동한다. 나는 값을 넣어 그들을 얻을 수 있습니다.

주요 문제 :

나는 윈도우를 사용하고 언급 한 바와 같이 그래서 나는 (가상 상자에 기본적으로있는) HBase를 칠 자바 이클립스에 간단한 프로그램을 썼다. 그러나 나는 다음과 같은 예외를 얻을 :

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"));

내가 원하는 것은?

내가 무엇을 잘못하고 있지? 나는 거기에 윈도우 자바 프로그램 (가상 상자에 거주) HBase를 액세스 할 수있는 방법은?

더 :

나는 이전에 질문을 공부하지만, 그들 중 누구도 나를 위해 작동하지 않았다.

어떤 도움은 매우 감사 할 것입니다.

해결법

  1. ==============================

    1.당신이 당신의 가상 상자의 네트워크 설정을 설정하는 것을 시도했다가에 대신 "NAT" "어댑터를 브리지" 다음 호스트 시스템에서, 브라우저 종류 열려고 "guestIP을 : Hbase_Master_Port을"(예를 들어 192.168.1.100:60010)는 마스터 관리 페이지를 열어야합니다.

    당신이 당신의 가상 상자의 네트워크 설정을 설정하는 것을 시도했다가에 대신 "NAT" "어댑터를 브리지" 다음 호스트 시스템에서, 브라우저 종류 열려고 "guestIP을 : Hbase_Master_Port을"(예를 들어 192.168.1.100:60010)는 마스터 관리 페이지를 열어야합니다.

  2. from https://stackoverflow.com/questions/26002871/access-virtual-box-hbase-from-windows-java-application by cc-by-sa and MIT license