2012-07-25 7 views
5

Hallo Ich verwende hBase im vollständig verteilten Modus und ich versuche, Hbase mit einem Java-Code zu verbinden und eine Tabelle zu erstellen. Ich bekomme einen Fehler. Es verbindet sich nicht mit HBase. Ich habe alle Prozesse überprüft, die sie gut laufen lassen: - nomenode, datanode, nodemanager, Betriebsmittelmanager, hbase Meister, hbase regionservers, zoekeeper.HBase-Fehler: Kein Host: Port-Paar

Fehler

starting... 
getting config... 
12/07/25 18:48:31 WARN hbase.HBaseConfiguration: instantiating HBaseConfiguration() is deprecated. Please use HBaseConfiguration#create() to construct a plain Configuration 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:zookeeper.version=3.3.2-1031432, built on 11/05/2010 05:32 GMT 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:host.name=aniket 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:java.version=1.7.0_05 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:java.vendor=Oracle Corporation 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:java.home=/usr/java/jdk1.7.0_05/jre 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:java.class.path=/root/workspace/HBaseTesting/bin:/usr/lib/hadoop-0.20-mapreduce/hadoop-core.jar:/usr/lib/hadoop/hadoop-common.jar:/root/Downloads/google-collect-1.0-rc1/google-collect-1.0-rc1.jar:/root/Downloads/hbase-0.90.5/hbase-0.90.5.jar:/root/Downloads/hbase-0.90.5/lib/activation-1.1.jar:/root/Downloads/hbase-0.90.5/lib/asm-3.1.jar:/root/Downloads/hbase-0.90.5/lib/avro-1.3.3.jar:/root/Downloads/hbase-0.90.5/lib/commons-cli-1.2.jar:/root/Downloads/hbase-0.90.5/lib/commons-codec-1.4.jar:/root/Downloads/hbase-0.90.5/lib/commons-el-1.0.jar:/root/Downloads/hbase-0.90.5/lib/commons-httpclient-3.1.jar:/root/Downloads/hbase-0.90.5/lib/commons-lang-2.5.jar:/root/Downloads/hbase-0.90.5/lib/commons-logging-1.1.1.jar:/root/Downloads/hbase-0.90.5/lib/commons-net-1.4.1.jar:/root/Downloads/hbase-0.90.5/lib/core-3.1.1.jar:/root/Downloads/hbase-0.90.5/lib/guava-r06.jar:/root/Downloads/hbase-0.90.5/lib/hadoop-core-0.20-append-r1056497.jar:/root/Downloads/hbase-0.90.5/lib/jackson-core-asl-1.5.5.jar:/root/Downloads/hbase-0.90.5/lib/jackson-jaxrs-1.5.5.jar:/root/Downloads/hbase-0.90.5/lib/jackson-mapper-asl-1.4.2.jar:/root/Downloads/hbase-0.90.5/lib/jackson-xc-1.5.5.jar:/root/Downloads/hbase-0.90.5/lib/jasper-compiler-5.5.23.jar:/root/Downloads/hbase-0.90.5/lib/jasper-runtime-5.5.23.jar:/root/Downloads/hbase-0.90.5/lib/jaxb-api-2.1.jar:/root/Downloads/hbase-0.90.5/lib/jaxb-impl-2.1.12.jar:/root/Downloads/hbase-0.90.5/lib/jersey-core-1.4.jar:/root/Downloads/hbase-0.90.5/lib/jersey-json-1.4.jar:/root/Downloads/hbase-0.90.5/lib/jersey-server-1.4.jar:/root/Downloads/hbase-0.90.5/lib/jettison-1.1.jar:/root/Downloads/hbase-0.90.5/lib/jetty-6.1.26.jar:/root/Downloads/hbase-0.90.5/lib/jetty-util-6.1.26.jar:/root/Downloads/hbase-0.90.5/lib/jruby-complete-1.6.0.jar:/root/Downloads/hbase-0.90.5/lib/jsp-2.1-6.1.14.jar:/root/Downloads/hbase-0.90.5/lib/jsp-api-2.1-6.1.14.jar:/root/Downloads/hbase-0.90.5/lib/jsr311-api-1.1.1.jar:/root/Downloads/hbase-0.90.5/lib/log4j-1.2.16.jar:/root/Downloads/hbase-0.90.5/lib/protobuf-java-2.3.0.jar:/root/Downloads/hbase-0.90.5/lib/servlet-api-2.5-6.1.14.jar:/root/Downloads/hbase-0.90.5/lib/slf4j-api-1.5.8.jar:/root/Downloads/hbase-0.90.5/lib/slf4j-log4j12-1.5.8.jar:/root/Downloads/hbase-0.90.5/lib/stax-api-1.0.1.jar:/root/Downloads/hbase-0.90.5/lib/thrift-0.2.0.jar:/root/Downloads/hbase-0.90.5/lib/xmlenc-0.52.jar:/root/Downloads/hbase-0.90.5/lib/zookeeper-3.3.2.jar:/root/Downloads/hbql-0.90.0.1/hbql-0.90.0.1.jar 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:java.io.tmpdir=/tmp 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:java.compiler=<NA> 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:os.name=Linux 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:os.arch=amd64 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:os.version=2.6.18-274.el5xen 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:user.name=root 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:user.home=/root 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Client environment:user.dir=/root/workspace/HBaseTesting 
12/07/25 18:48:32 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=192.168.1.88:2181 sessionTimeout=180000 watcher=hconnection 
12/07/25 18:48:32 INFO zookeeper.ClientCnxn: Opening socket connection to server /192.168.1.88:2181 
12/07/25 18:48:32 INFO zookeeper.ClientCnxn: Socket connection established to aniket/192.168.1.88:2181, initiating session 
12/07/25 18:48:32 INFO zookeeper.ClientCnxn: Session establishment complete on server aniket/192.168.1.88:2181, sessionid = 0x138bf7676070043, negotiated timeout = 40000 
Exception in thread "main" java.lang.IllegalArgumentException: Not a host:port pair: � 
at org.apache.hadoop.hbase.HServerAddress.<init>(HServerAddress.java:60) 
    at org.apache.hadoop.hbase.MasterAddressTracker.getMasterAddress(MasterAddressTracker.java:63) 
    at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getMaster(HConnectionManager.java:561) 
    at org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:99) 
    at org.apache.hadoop.hbase.client.HBaseAdmin.checkHBaseAvailable(HBaseAdmin.java:1320) 
    at HBaseCreateTable.main(HBaseCreateTable.java:38) 

Code-Schnipsel

Configuration config=HBaseConfiguration.create(); 
config.set("hbase.zookeeper.quorum", "192.168.1.88"); 
config.set("hbase.zookeeper.property.clientPort","2181"); 
config.set("hbase.master", "192.168.1.88:60000"); 
HTableDescriptor ht = new HTableDescriptor("abc"); 
ht.addFamily(new HColumnDescriptor("number")); // from and to 
HBaseAdmin hba = new HBaseAdmin(conf); 
hba.createTable(ht); 

Antwort

9

I "kein Host: Port-Paar" gesehen haben, bei der Verwendung von 0.90.2 Client sprechen auf 0,92 Server. Können Sie überprüfen, ob Ihre Client- und Server-HBase-Versionen identisch sind und welche?

+0

Ja, das gleiche passiert, wenn ich versehentlich 0,94 verwendet, um eine Verbindung zu 0,98 herzustellen. – haridsv

0

i faced same problem, try :

Change your build path jar/wars that you are using, make compatible with Hbase server version.. use same version of Hbase server and jars you used for coding. Ex:if you are using Hbase 0.90.2 server use same version of jars available.

0

Check this out

wenn Sie versuchen, zwischen hbase Client 0.90.x und hbase Server 0.92.x, diese Art von Problemen geschehen wird zu kommunizieren.

Wenn jemand dieses Problem im Detail kennt, geben Sie bitte Gründe an.

+0

Sie sollten besser [eine neue Frage stellen] (http://stackoverflow.com/questions/ask) stattdessen. – j0k

0

Zusätzlich zu dem, was Walter gesagt hat. Es ist nicht nur wegen dieser speziellen Version, was er "0.90.2" erwähnt hat, tatsächlich erhalten Sie diese Ausnahme, wenn ihre Übereinstimmung zwischen Version der Client-APIs & Server-APIs nicht übereinstimmt.

Als ich die gleiche Ausnahme haben: -

"Exception in thread "main" java.lang.IllegalArgumentException: Kein Host: Port-Paar: PBUF"

wenn ich wurde mit Client API von 0.94 und Server APIs von 0.98 Version.

Verwandte Themen