Interesting, could you start the shell with "-d" and pastebin all the debug that comes out after the first command?
BTW the shell does work on remote clusters, so it's some other issue. J-D On Thu, Jan 12, 2012 at 1:56 PM, Peter Wolf <[email protected]> wrote: > Sorry, that's a typo in my email. Here is my config file again (that > doesn't work) > > > <configuration> > <property> > <name>hbase.zookeeper.quorum</name> > <value>ip-AA-BBB-C-DDD.ec2.internal</value> > <description>Standalone Server</description> > </property> > </configuration> > > I double checked, and I am using ip-AA-BBB-C-DDD.ec2.internal consistently > in config files and code. > > P > > > > > > On 1/12/12 4:24 PM, Jean-Daniel Cryans wrote: >> >> Yes, it's the same thing, which is why I think the additional >> ec2.internal in your hbase-site is suspicious. Let me reiterate: >> >> This works: >> >> echo stat|nc ip-XX-YYY-Z-QQQ.ec2.internal 2181 >> >> But this config doesn't: >> >> <value>ip-XX-YYY-Z-QQQ.ec2.internal.ec2.internal</value> >> >> Now what happens if you just use the same one, the one that works? >> >> J-D >> >> On Thu, Jan 12, 2012 at 12:45 PM, Peter Wolf<[email protected]> wrote: >>> >>> I'm a N00B, so I'm not sure of anything... but it is working now using >>> the >>> Java Client API, and XXX.ec2.internal address on both server and client. >>> >>> The problem seems to be 'hbase shell', which is odd as I would have >>> thought >>> it sat on top of the Java API. >>> >>> P >>> >>> >>> >>> >>> On 1/12/12 1:22 PM, Jean-Daniel Cryans wrote: >>>> >>>> Your config file on the remote machine has: >>>> >>>> ip-XX-YYY-Z-QQQ.ec2.internal.ec2.internal >>>> >>>> You sure about the extra ec2.internal? >>>> >>>> J-D >>>> >>>> On Thu, Jan 12, 2012 at 9:26 AM, Peter Wolf<[email protected]> wrote: >>>>> >>>>> Oh yeah! The code did it :-D >>>>> >>>>> For those that come after, I guess 'hbase shell' is broken for remote >>>>> access. Use the raw Java API >>>>> >>>>> Many thanks again Mark! >>>>> >>>>> >>>>> >>>>> >>>>> On 1/12/12 11:40 AM, Mark Kerzner wrote: >>>>>> >>>>>> 1. Look in the logs; >>>>>> 2. I think hbase shell works only locally; >>>>>> 3. The code below worked for me, and I don't use a config file, but >>>>>> give >>>>>> the params directly: >>>>>> >>>>>> public void connect() throws IOException { >>>>>> Configuration hConf = HBaseConfiguration.create(); >>>>>> hConf.set(MyConstants.HBASE_CONFIGURATION_ZOOKEEPER_QUORUM, >>>>>> MyConstants.zookeeperUrl); >>>>>> >>>>>> hConf.set(MyConstants..HBASE_CONFIGURATION_ZOOKEEPER_CLIENTPORT, >>>>>> MyConstants.zookeeperPort); >>>>>> String tableName = "MyTable"; >>>>>> HTable hTable = new HTable(hConf, tableName); >>>>>> hTable.close(); >>>>>> } >>>>>> >>>>>> Mark >>>>>> >>>>>> On Thu, Jan 12, 2012 at 10:20 AM, Peter Wolf<[email protected]> >>>>>> wrote: >>>>>> >>>>>>> Still no love... Any suggestions? >>>>>>> >>>>>>> I'm on EC2, and I am trying to set up a Pseudo-Distributed HBaser >>>>>>> Server >>>>>>> on one machine, and access it from another. Both machines are EC2. >>>>>>> >>>>>>> I have already found the doc below, and I followed the instructions >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> http://hbase.apache.org/book.**html#client_dependencies<http://hbase.apache.org/book.html#client_dependencies> >>>>>>> >>>>>>> >>>>>>> My server is up and running, and I can access it from an 'hbase >>>>>>> shell' >>>>>>> on >>>>>>> the machine. The hbase-site.xml is ... >>>>>>> >>>>>>> <configuration> >>>>>>> <property> >>>>>>> <name>hbase.zookeeper.quorum</**name> >>>>>>> <value>ip-XX-YYY-Z-QQQ.ec2.**internal</value> >>>>>>> </property> >>>>>>> <property> >>>>>>> <name>hbase.cluster.**distributed</name> >>>>>>> <value>true</value> >>>>>>> </property> >>>>>>> <property> >>>>>>> <name>hbase.rootdir</name> >>>>>>> <value>hdfs://localhost/hbase<**/value> >>>>>>> </property> >>>>>>> </configuration> >>>>>>> >>>>>>> The client machine hbase-site.xml is... >>>>>>> >>>>>>> <configuration> >>>>>>> <property> >>>>>>> <name>hbase.zookeeper.quorum</**name> >>>>>>> <value>ip-XX-YYY-Z-QQQ.ec2.**internal.ec2.internal</value> >>>>>>> <description>Pseudo Distributed Server</description> >>>>>>> </property> >>>>>>> </configuration> >>>>>>> >>>>>>> And when I try 'hbase shell' remotely, I get this... >>>>>>> >>>>>>> hbase(main):001:0> status 'detailed' >>>>>>> >>>>>>> ERROR: 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. >>>>>>> >>>>>>> >>>>>>> >>>>>>> >
