Quick update. I now have this working but had to downgrade SQuirrelSQL to 3.5.3 from 3.6 version. Still not sure what is going on with 3.6.
On Tue, Feb 24, 2015 at 1:19 AM, Justin Workman <[email protected]> wrote: > Yes, sqlline works just fine, passing the keytab on command line, and > using a cached ticket. And yes, I have tried with the core jar, the minimal > jar, the without-hbase jar and everything in between. I cannot get > SQuirrelSQL to connect at all. I have tried every variation I can thing of, > and SQuirrelSQL just will not connect. > > Puttting SQuirrelSQL in debug mode, I do see that it successfully connects > initially to the secure cluster just fine. But then, it connects to > Zookeeper, and attempts the Hbase connection and fails because it is using > simple auth. I will send the full SQuirrelSQL logs in the morning, when I > have a chance to sanitize them. > > Thanks for the help!! > Justin > > On Mon, Feb 23, 2015 at 8:10 PM, Jeffrey Zhong <[email protected]> > wrote: > >> >> Are you able to use sqlline.py to connect to your secure phoenix >> cluster? For what you said below >> >> ".... I had a similar issue using phoenix-3.x versions and resolved it >> by replacing the phoenix jar for SQuirrelSQL with the core jar...." >> >> Have you tried to use the phoenix-server jar? >> >> From: Justin Workman <[email protected]> >> Reply-To: "[email protected]" <[email protected]> >> Date: Monday, February 23, 2015 at 2:32 PM >> >> To: "[email protected]" <[email protected]> >> Subject: Re: Secure Cluster With SquirrelSQL >> >> They do live under they lib directory of squirrel. >> >> Sent from my iPhone >> >> On Feb 23, 2015, at 3:30 PM, anil gupta <[email protected]> wrote: >> >> Justin, >> >> Can you copy the conf files under lib folder of squirrel and then try it >> again. >> >> ~Anil >> >> On Mon, Feb 23, 2015 at 2:27 PM, Justin Workman <[email protected] >> > wrote: >> >>> I have done that. They appear at the beginning of the class path. >>> Looking deeper at the squirrel sql logs, it doesn't appear to actually be >>> reading them as it reports trying to connect to hbase using simple auth and >>> never invokes the Kerberos steps. >>> >>> I have explicitly set them in the squirrel startup script. I have also >>> attempt I set both HADOOP_CONF_DIR and HBASE_CONF_DIR in addition to also >>> adding the xml configs to the lib directory for squirrel sql. >>> >>> Thanks >>> Justin >>> >>> Sent from my iPhone >>> >>> On Feb 23, 2015, at 3:08 PM, Jeffrey Zhong <[email protected]> >>> wrote: >>> >>> >>> Hey Justin, >>> >>> You need to make sure both hbase-site.xml and core-site.xml are in the >>> class path of SquirrelSQL assuming you are able to connect security >>> hbase cluster by hbase shell and sqlline.py. >>> >>> -Jeffrey >>> >>> From: Justin Workman <[email protected]> >>> Reply-To: "[email protected]" <[email protected]> >>> Date: Saturday, February 21, 2015 at 11:24 AM >>> To: "[email protected]" <[email protected]> >>> Subject: Re: Secure Cluster With SquirrelSQL >>> >>> The entire stack trace from the master is included below. The client >>> stack trace is a simple timeout error. Nothing special on the client side. >>> I see a successful connection to zookeeper then the auth error on the hbase >>> master. >>> >>> 2015-02-20 13:13:21,370 WARN org.apache.hadoop.ipc.RpcServer: >>>>>> RpcServer.listener,port=60000: count of bytes read: 0 >>>>>> org.apache.hadoop.security.AccessControlException: Authentication is >>>>>> required >>>>>> at >>>>>> org.apache.hadoop.hbase.ipc.RpcServer$Connection.readAndProcess(RpcServer.java:1448) >>>>>> at >>>>>> org.apache.hadoop.hbase.ipc.RpcServer$Listener.doRead(RpcServer.java:790) >>>>>> at >>>>>> org.apache.hadoop.hbase.ipc.RpcServer$Listener$Reader.doRunLoop(RpcServer.java:581) >>>>>> at >>>>>> org.apache.hadoop.hbase.ipc.RpcServer$Listener$Reader.run(RpcServer.java:556) >>>>>> at >>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>>>>> at >>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>>>>> at java.lang.Thread.run(Thread.java:745) >>>>>> >>>>> >>> >>> >>> Sent from my iPhone >>> >>> On Feb 21, 2015, at 12:12 PM, anil gupta <[email protected]> wrote: >>> >>> Can you share the entire stack trace? It should be pretty straight >>> forward with 4.1 because there is no maven black magic of secure vs >>> non-secure hbase build in 0.98. >>> At present, i dont have a secure cluster. So, i cant try it. >>> >>> On Sat, Feb 21, 2015 at 8:24 AM, Justin Workman < >>> [email protected]> wrote: >>> >>>> I changed the order of the connection string and I still get the >>>> authentication is required error on the master hbase server, and a timeout >>>> exception on the SQuirerrlSQL client. What jars do I need to add to the >>>> extra classpath section of SQuirrelSQL to get this to work with a secure >>>> cluster running CDH 5.1? I have tried so many variations now, that I am not >>>> sure what else to do??? >>>> >>>> Thanks again for the help! >>>> >>>> On Sat, Feb 21, 2015 at 12:59 AM, anil gupta <[email protected]> >>>> wrote: >>>> >>>>> Hey Justin, >>>>> >>>>> Order of the connection string was changes in 4.1 to: >>>>> jdbc:phoenix:<quorom>:<port>:<rootNode>:<principal>:<keytab> >>>>> Can you try this and report back. >>>>> >>>>> ~Anil >>>>> >>>>> On Fri, Feb 20, 2015 at 2:58 PM, Justin Workman < >>>>> [email protected]> wrote: >>>>> >>>>>> All, >>>>>> >>>>>> I am having a difficult time connecting to my secure Hbase/Phoenix >>>>>> cluster using SQuirrelSQL and Phoenix 4.1.0 and CDH 5.1 (Hbase 0.98). >>>>>> Client is a Mac. Here is what I have done >>>>>> >>>>>> 1) Add Driver and add phoenix-4.1.0-client-without-hbase.jar (I >>>>>> have also tried using the core, the minimal and the client jar) >>>>>> 2) Add alias using this new driver. Connection string jdbc:phoenix:zk >>>>>> host:zk port:hbase root:keytab:principal >>>>>> >>>>>> When testing the connection or trying to connect, I see the >>>>>> connection in the zk logs, then I immediately get errors in the Hbase >>>>>> master logs indicating authorization is required (see below). I had a >>>>>> similar issue using phoenix-3.x versions and resolved it by replacing the >>>>>> phoenix jar for SQuirrelSQL with the core jar. I have also attemtped to >>>>>> add >>>>>> all the Hbase and Hadoop jars for my CDH distribution to the Extra Jars >>>>>> section for the driver setup. I have also included the core-site, >>>>>> hdfs-site >>>>>> and hbase-site.xml files in the >>>>>> /Applications/SQuirrelSQL.app/Contents/Resources/Java/lib directory, >>>>>> still >>>>>> with no luck. >>>>>> >>>>>> Thanks in advance for any help. Here is the error I am seeing in >>>>>> the master logs. >>>>>> >>>>>> 2015-02-20 13:13:21,370 WARN org.apache.hadoop.ipc.RpcServer: >>>>>> RpcServer.listener,port=60000: count of bytes read: 0 >>>>>> org.apache.hadoop.security.AccessControlException: Authentication is >>>>>> required >>>>>> at >>>>>> org.apache.hadoop.hbase.ipc.RpcServer$Connection.readAndProcess(RpcServer.java:1448) >>>>>> at >>>>>> org.apache.hadoop.hbase.ipc.RpcServer$Listener.doRead(RpcServer.java:790) >>>>>> at >>>>>> org.apache.hadoop.hbase.ipc.RpcServer$Listener$Reader.doRunLoop(RpcServer.java:581) >>>>>> at >>>>>> org.apache.hadoop.hbase.ipc.RpcServer$Listener$Reader.run(RpcServer.java:556) >>>>>> at >>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>>>>> at >>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>>>>> at java.lang.Thread.run(Thread.java:745) >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Thanks & Regards, >>>>> Anil Gupta >>>>> >>>> >>>> >>> >>> >>> -- >>> Thanks & Regards, >>> Anil Gupta >>> >>> >> >> >> -- >> Thanks & Regards, >> Anil Gupta >> >> >
