phoenix-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From anil gupta <anilgupt...@gmail.com>
Subject Re: Connecting via SquirrelSQL
Date Tue, 10 Jun 2014 18:57:18 GMT
Thanks for the link, Mujtaba.

Here is the sample connection string that i use with Squirell:
jdbc:<ZK_quorum>:<zk_port>:<hbase_root_dir>:<keytab_file>:<principal>

Please let me know if you run into problems.

Thanks,
Anil Gupta


On Tue, Jun 10, 2014 at 11:49 AM, Mujtaba Chohan <mujtaba@apache.org> wrote:

> Last successful build 3.1-SNAPSHOT jars are at
>
> https://builds.apache.org/job/Phoenix-3.0-hadoop1/lastSuccessfulBuild/artifact/
>
> On Tue, Jun 10, 2014 at 11:28 AM, anil gupta <anilgupta84@gmail.com>
> wrote:
> > Hi Justin,
> >
> > This ticket does not uses ticket cache. You will need to have keytab file
> > and principal to login.
> >
> > It's a blessing in disguise that you are still using cdh4.3. Phoenix
> used to
> > work with secure hbase prior to cdh4.5 releases. I also ran it with
> cdh4.4.
> > However, IMO using ticket cache is like a work around because the
> solution
> > is not guaranteed to work with all cdh releases.
> > Additionally, it will be tricky to use ticket cache with Squirell.
> > I am able to connect to squirrell very easily with help of Phoenix-19.
> So,
> > it's a cleaner solution.
> > I can try to provide you the phoenix-client.jar with that patch if you
> want.
> > I am also wondering if there are any nightly builds in Phoenix. In that
> case
> > you can directly pick up the jar from there.
> >
> > Thanks,
> > Anil Gupta
> >
> > On Jun 10, 2014, at 11:06 AM, Justin Workman <justinjworkman@gmail.com>
> > wrote:
> >
> > I saw that, and was hoping I could work around it, since I was able to
> > connect to the secure cluster using sqlline.
> >
> > Do you know if this patch will also work with a kerberos ticket cache, or
> > will we need to create keytabs for users and pass the keytab/principal in
> > the connect string?
> >
> >
> > On Mon, Jun 9, 2014 at 3:48 PM, anil gupta <anilgupta84@gmail.com>
> wrote:
> >>
> >> Hi Julian,
> >>
> >> Currently Phoenix-3.0 does not supports connecting to a secure HBase
> >> cluster out of the box. Please have a look at
> >> https://issues.apache.org/jira/browse/PHOENIX-19. This got commited in
> 3.0
> >> branch last weekend. You can checkout 3.0 branch from
> >> git(https://git-wip-us.apache.org/repos/asf?p=phoenix.git) and do a
> local
> >> build to get the phoenix-client.jar that works with Secure HBase.
> Phoenix-19
> >> will be part of 3.1 release. Let me know if you have further questions.
> >>
> >> Thanks,
> >> Anil Gupta
> >>
> >>
> >> On Mon, Jun 9, 2014 at 12:24 PM, Justin Workman <
> justinjworkman@gmail.com>
> >> wrote:
> >>>
> >>> I am attempting to connect to Phoenix via SquirrelSQL and not having
> much
> >>> luck. I am using Phoenix-3.0 on Hbase with CDH4.3.0 (Hbase
> 0.96.4-cdh4.3.0),
> >>> and SquirrelSQL 3.5.3. Our Hbase environment is protected with
> Kerberos.
> >>>
> >>> I have modified the sqlline script to include the correct libraries and
> >>> modifications to the Java command, and that is working fine.
> >>>
> >>> Here is what I am doing to try and get SquirrelSQL working. I have
> tried
> >>> on both a Mac and Linux system.
> >>>
> >>> I start up off kinit'ing prior to starting SquirrelSQL.
> >>>
> >>> 1) Copy hbase-site.xml and core-site.xml to lib directory of
> SquirrelSQL
> >>> 2) Open SquirrelSQL->Drivers->Add New
> >>> 3) I add phoenix-3.0.0-incubating-client-minimal.jar, all of its
> >>> dependancies, hadoop-common, hadoop-auth and the hbase-security jar
> from CDH
> >>> distribution to the extra class path
> >>> 4) List Drivers and select the Phoenix driver.
> >>>
> >>> Adding the driver at this point succeeds without error. I then proceed
> to
> >>> setup the connection and click test, it will hang for a minute and then
> >>> gives me the following stack trace.
> >>>
> >>> java.util.concurrent.ExecutionException: java.lang.RuntimeException:
> >>> java.lang.RuntimeException: java.lang.ClassNotFoundException: Class
> >>> org.apache.hadoop.hbase.ipc.SecureRpcEngine not found
> >>> at java.util.concurrent.FutureTask.report(FutureTask.java:122)
> >>> at java.util.concurrent.FutureTask.get(FutureTask.java:202)
> >>> at
> >>>
> net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.awaitConnection(OpenConnectionCommand.java:132)
> >>> at
> >>>
> net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.access$100(OpenConnectionCommand.java:45)
> >>> at
> >>>
> net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand$2.run(OpenConnectionCommand.java:115)
> >>> at
> >>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> >>> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> >>> 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:744)
> >>> Caused by: java.lang.RuntimeException: java.lang.RuntimeException:
> >>> java.lang.ClassNotFoundException: Class
> >>> org.apache.hadoop.hbase.ipc.SecureRpcEngine not found
> >>> at
> >>>
> net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.executeConnect(OpenConnectionCommand.java:175)
> >>> at
> >>>
> net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.access$000(OpenConnectionCommand.java:45)
> >>> at
> >>>
> net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand$1.run(OpenConnectionCommand.java:104)
> >>> ... 5 more
> >>> Caused by: java.lang.RuntimeException:
> java.lang.ClassNotFoundException:
> >>> Class org.apache.hadoop.hbase.ipc.SecureRpcEngine not found
> >>> at
> org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1587)
> >>> at
> >>>
> org.apache.hadoop.hbase.ipc.HBaseRPC.getProtocolEngine(HBaseRPC.java:99)
> >>> at
> >>>
> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.ensureZookeeperTrackers(HConnectionManager.java:629)
> >>> at
> >>>
> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getMaster(HConnectionManager.java:684)
> >>> at
> org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:126)
> >>> at
> >>>
> org.apache.phoenix.query.ConnectionQueryServicesImpl.ensureTableCreated(ConnectionQueryServicesImpl.java:739)
> >>> at
> >>>
> org.apache.phoenix.query.ConnectionQueryServicesImpl.createTable(ConnectionQueryServicesImpl.java:1021)
> >>> at
> >>>
> org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:1156)
> >>> at
> >>>
> org.apache.phoenix.schema.MetaDataClient.createTable(MetaDataClient.java:422)
> >>> at
> >>>
> org.apache.phoenix.compile.CreateTableCompiler$2.execute(CreateTableCompiler.java:183)
> >>> at
> >>>
> org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:226)
> >>> at
> >>>
> org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:908)
> >>> at
> >>>
> org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:1351)
> >>> at
> >>>
> org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:131)
> >>> at
> >>>
> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:112)
> >>> at
> >>>
> net.sourceforge.squirrel_sql.fw.sql.SQLDriverManager.getConnection(SQLDriverManager.java:133)
> >>> at
> >>>
> net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.executeConnect(OpenConnectionCommand.java:167)
> >>> ... 7 more
> >>> Caused by: java.lang.ClassNotFoundException: Class
> >>> org.apache.hadoop.hbase.ipc.SecureRpcEngine not found
> >>> at
> >>>
> org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:1493)
> >>> at
> org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1585)
> >>> ... 23 more
> >>>
> >>> FYI, I have also tried to include the hadoop, hbase and phoenix jar's
> in
> >>> the lib directory of SquirrelSQL itself, however when adding the
> driver and
> >>> selecting List Drivers SquirrelSQL just hangs forever.
> >>>
> >>>
> >>> Any help or insight would be greatly appreciated. The one thing I am
> not
> >>> sure about is the Kerberos integration, and wether or not I will need
> to
> >>> wait or include PHOENIX-19. However this patch appears to be for
> passing the
> >>> principal and keytab to the driver, not using a ticket cache. I also
> don't
> >>> think that is my problem right now, as it does not appear to be
> getting far
> >>> enough to authenticate at this point.
> >>>
> >>> Thanks
> >>> Justin
> >>>
> >>>
> >>
> >>
> >>
> >> --
> >> Thanks & Regards,
> >> Anil Gupta
> >
> >
>



-- 
Thanks & Regards,
Anil Gupta

Mime
View raw message