Hi, Thanks for you reply. I am trying to connect to Hbase running on a remote ec2 instance from a web app in tomcat running in a different ec2 instance. My Hbase handler lives in a jar of a another project (foundation) in it's src folder. While debugging, the HBaseConfiguration picks up the properties from that base-site.xml file. This "foundation" project is bundled in the lib folder of the web application and referenced to it.
Initially, I added the hbase-site.xml in the lib folder of the web app (WEB-INF/lib) but it' not being used there. I have just added the hbase-site.xml in tomcat conf folder along side context.xml and server.xml files (this is the place?) I restarted tomcat but this did not solve the problem. What I can't figure out is not getting anything in the logs, I can't trace an error or exception, to put me in the right direction. Is there something in the policy files that need to be set as well? is running a web app with ServletContextListener needs some permissions? Many thanks for your help, Mouradk On 1 Oct 2012, at 16:06, mlanciau <[email protected]> wrote: > Hello Mouradk, > > I use tomcat + HBase and I have no problem. (And it's really cool !) > I do not change any tomcat policy, just add the lib in WEB-INF/lib/ and the > hbase-site.xml in a conf folder (in the tomcat build path). > > How do you add the hbase-site.xml ? > > Regards. > > 2012/10/1 Mouradk <[email protected]> > >> Hello, >> >> This is my first post so apologies if I am breaking some etiquette. >> >> I am not an expert on Hbase and have been flaying through threads of Hbase >> remote connection but with no luck solving my problem. >> >> I am running a Hbase/Hadoop single cluster on an EC2 instance (Ubuntu >> 10.4). I am also running a servlet on a tomcat6 server in another ec2 >> instance. The plan is for the servlet to write and read to the remote Hbase >> instance. The servlet is running a context listener with some java routines >> (ServletContextListener). >> >> Now if I run the java project as a runnable jar instead of a servlet all >> is fine. It connects to Hbase and writes/reads from table. But on tomcat6 >> it just freezes when attempting to connect to the Hbase instance. >> >> 2012-10-01 11:11:40,751 [Timer-4] INFO >> com.myApp.foundation.access.HBaseHandler initialise(..) - Initialisation >> HbaseHandler configuration ... >> 2012-10-01 11:11:40,763 [Timer-4] DEBUG >> org.apache.hadoop.conf.Configuration <init>(..) - java.io.IOException: >> config() >> at org.apache.hadoop.conf.Configuration.<init>(Configuration.java:211) >> at org.apache.hadoop.conf.Configuration.<init>(Configuration.java:198) >> at >> org.apache.hadoop.hbase.HBaseConfiguration.<init>(HBaseConfiguration.java:33) >> at >> com.myApp.foundation.access.HBaseHandler.initialise(HBaseHandler.java:507) >> at >> com.myApp.foundation.access.HBaseHandler.<init>(HBaseHandler.java:53) >> at >> com.myApp.foundation.access.HBaseHandler.getInstance(HBaseHandler.java:500) >> at com.myApp.foundation.hbase.StorableRow.<clinit>(StorableRow.java:40) >> at com.myApp.foundation.entities.Article.storeToHbase(Article.java:257) >> at >> com.myApp.task.impl.HBaseArticlePersisterTask.process(HBaseArticlePersisterTask.java:101) >> at com.myApp.foundation.task.QueueTask.performTask(QueueTask.java:101) >> at >> com.myApp.runner.impl.HBasePersisterRunner$1.run(HBasePersisterRunner.java:46) >> at java.util.TimerThread.mainLoop(Timer.java:512) >> at java.util.TimerThread.run(Timer.java:462) >> >> 2012-10-01 11:11:40,803 [Timer-4] INFO >> com.myApp.foundation.access.HBaseHandler initialise(..) - Config resource >> zookeeper.quorum: ip-10-10-10-10.eu-west-1.compute.internal >> >> 2012-10-01 11:11:40,803 [Timer-4] INFO >> com.myApp.foundation.access.HBaseHandler initialise(..) - Config resource >> zookeeper.clientPort: 2181 >> >> 2012-10-01 11:11:40,804 [Timer-4] INFO >> com.myApp.foundation.access.HBaseHandler initialise(..) - Config resource >> hbase.master.info.port: 60010 >> >> 2012-10-01 11:11:40,804 [Timer-4] INFO >> com.myApp.foundation.access.HBaseHandler initialise(..) - Config resource >> hbase.master.info.bindAddress: ip-10-10-10-10.eu-west-1.compute.internal >> I can telnet the HBase instance. In the servlet I included the >> hbase-site.xml. But as you can see from the log, the zookkeeper.quorum is >> getting picked up as well as the port number. All necessary ports are open >> on the Hbase instance. >> >> Something is telling me tomcat6 policy configuration is to blame. But I >> don't see anything in the catalina logs. Are there any other logs I am >> missing or could guide me to the right logs? Anywhere I can track if >> Zookeeper is receiving any requests? >> >> Has someone experienced the same problem? >> >> Many thanks in advance. >> >> Mourad > > > > > -- > Maxime LANCIAUX > http://maximelanciauxbi.blogspot.fr/
