Thanks Anil,

Appreciate your effort in providing direction on this problem.

Please find the error  along with command used .

I have few more questions , *10.248.16.79 is my Hbase client and one of the
zookeeper quroum cluster , there are 2 more of them. Do I need to have
access to all these ZK cluster machines ? and is it required to consider
them all during sqlline invoke ?*


*I looked at the links shared and probably they are pointing in direction
of firewall turnoff . Is it must ? If yes I will check with sys admin to
look into it.*

*[osv9005@htnalpapphdp01 bin]$ ./sqlline.py
10.248.16.79:2181:/hbase:[email protected]:/home/osv9005/osv9005.keytab*
Setting property: [isolation, TRANSACTION_READ_COMMITTED]
issuing: !connect jdbc:phoenix:10.248.16.79:2181
:/hbase:[email protected]:/home/osv9005/osv9005.keytab none
none org.apache.phoenix.jdbc.PhoenixDriver
Connecting to jdbc:phoenix:10.248.16.79:2181
:/hbase:[email protected]:/home/osv9005/osv9005.keytab
14/12/19 13:58:11 WARN util.NativeCodeLoader: Unable to load native-hadoop
library for your platform... using builtin-java classes where applicable
14/12/19 13:58:28 ERROR zookeeper.RecoverableZooKeeper: ZooKeeper exists
failed after 4 attempts
14/12/19 13:58:28 ERROR zookeeper.ZooKeeperWatcher: hconnection-0x32ee5169,
quorum=10.248.16.79:2181, baseZNode=/hbase Received unexpected
KeeperException, re-throwing exception
org.apache.zookeeper.KeeperException$ConnectionLossException:
KeeperErrorCode = ConnectionLoss for /hbase/hbaseid
        at
org.apache.zookeeper.KeeperException.create(KeeperException.java:99)
        at
org.apache.zookeeper.KeeperException.create(KeeperException.java:51)
        at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1045)
        at
org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.exists(RecoverableZooKeeper.java:199)
        at
org.apache.hadoop.hbase.zookeeper.ZKUtil.checkExists(ZKUtil.java:479)
        at
org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(ZKClusterId.java:65)
        at
org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(ZooKeeperRegistry.java:83)
        at
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.retrieveClusterId(HConnectionManager.java:858)
        at
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.<init>(HConnectionManager.java:663)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at
org.apache.hadoop.hbase.client.HConnectionManager.createConnection(HConnectionManager.java:415)
        at
org.apache.hadoop.hbase.client.HConnectionManager.createConnection(HConnectionManager.java:310)
        at
org.apache.phoenix.query.HConnectionFactory$HConnectionFactoryImpl.createConnection(HConnectionFactory.java:47)
        at
org.apache.phoenix.query.ConnectionQueryServicesImpl.openConnection(ConnectionQueryServicesImpl.java:254)
        at
org.apache.phoenix.query.ConnectionQueryServicesImpl.access$300(ConnectionQueryServicesImpl.java:153)
        at
org.apache.phoenix.query.ConnectionQueryServicesImpl$9.call(ConnectionQueryServicesImpl.java:1512)
        at
org.apache.phoenix.query.ConnectionQueryServicesImpl$9.call(ConnectionQueryServicesImpl.java:1491)
        at
org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:77)
        at
org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:1491)
        at
org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:162)
        at
org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:126)
        at
org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:133)
        at sqlline.SqlLine$DatabaseConnection.connect(SqlLine.java:4650)
        at
sqlline.SqlLine$DatabaseConnection.getConnection(SqlLine.java:4701)
        at sqlline.SqlLine$Commands.connect(SqlLine.java:3942)
        at sqlline.SqlLine$Commands.connect(SqlLine.java:3851)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at
sqlline.SqlLine$ReflectiveCommandHandler.execute(SqlLine.java:2810)
        at sqlline.SqlLine.dispatch(SqlLine.java:817)
        at sqlline.SqlLine.initArgs(SqlLine.java:633)
        at sqlline.SqlLine.begin(SqlLine.java:680)
        at sqlline.SqlLine.mainWithInputRedirection(SqlLine.java:441)
        at sqlline.SqlLine.main(SqlLine.java:424)
*14/12/19 13:58:28 WARN client.ZooKeeperRegistry: Can't retrieve clusterId
from Zookeeper*


On Fri, Dec 19, 2014 at 12:31 PM, anil gupta <[email protected]> wrote:
>
> What is the command you are using to invoke sqlline? Also, can you share
> Phoenix client logs? Do you see any logs saying "connecting to a secure
> cluster"?
> Also, regarding " ConnectionLoss for /hbase/hbaseid", have a look at
>
> http://stackoverflow.com/questions/6153560/hbase-client-connectionloss-for-hbase-error
>
> http://search-hadoop.com/m/Rx0v22KOVBY/ConnectionLoss+for+%252Fhbase%252Fhbaseid&subj=Zookeeper+issue+ConnectionLoss+for+hbase+hbaseid+
>
>
> On Fri, Dec 19, 2014 at 7:21 AM, Imran Mohammed <[email protected]>
> wrote:
>>
>> On sqlline.py I'm getting the error below , with respect to connecting
>> hbase directly yes i'm able to .
>>
>> 14/12/19 09:18:54 ERROR zookeeper.RecoverableZooKeeper: ZooKeeper exists
>> failed after 4 attempts
>> 14/12/19 09:18:54 ERROR zookeeper.ZooKeeperWatcher:
>> hconnection-0x32ee5169, quorum=10.248.16.79:2181, baseZNode=/hbase
>> Received unexpected KeeperException, re-throwing exception
>> org.apache.zookeeper.KeeperException$ConnectionLossException:
>> KeeperErrorCode = ConnectionLoss for /hbase/hbaseid
>>         at
>> org.apache.zookeeper.KeeperException.create(KeeperException.java:99)
>>         at
>> org.apache.zookeeper.KeeperException.create(KeeperException.java:51)
>>         at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1045)
>>         at
>> org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.exists(RecoverableZooKeeper.java:199)
>>         at
>> org.apache.hadoop.hbase.zookeeper.ZKUtil.checkExists(ZKUtil.java:479)
>>         at
>> org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(ZKClusterId.java:65)
>>         at
>> org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(ZooKeeperRegistry.java:83)
>>         at
>> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.retrieveClusterId(HConnectionManager.java:858)
>>         at
>> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.<init>(HConnectionManager.java:663)
>>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>> Method)
>>         at
>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>>         at
>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>>         at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
>>         at
>> org.apache.hadoop.hbase.client.HConnectionManager.createConnection(HConnectionManager.java:415)
>>         at
>> org.apache.hadoop.hbase.client.HConnectionManager.createConnection(HConnectionManager.java:310)
>>         at
>> org.apache.phoenix.query.HConnectionFactory$HConnectionFactoryImpl.createConnection(HConnectionFactory.java:47)
>>         at
>> org.apache.phoenix.query.ConnectionQueryServicesImpl.openConnection(ConnectionQueryServicesImpl.java:254)
>>         at
>> org.apache.phoenix.query.ConnectionQueryServicesImpl.access$300(ConnectionQueryServicesImpl.java:153)
>>         at
>> org.apache.phoenix.query.ConnectionQueryServicesImpl$9.call(ConnectionQueryServicesImpl.java:1512)
>>         at
>> org.apache.phoenix.query.ConnectionQueryServicesImpl$9.call(ConnectionQueryServicesImpl.java:1491)
>>         at
>> org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:77)
>>         at
>> org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:1491)
>>         at
>> org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:162)
>>         at
>> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:126)
>>         at
>> org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:133)
>>         at sqlline.SqlLine$DatabaseConnection.connect(SqlLine.java:4650)
>>         at
>> sqlline.SqlLine$DatabaseConnection.getConnection(SqlLine.java:4701)
>>         at sqlline.SqlLine$Commands.connect(SqlLine.java:3942)
>>         at sqlline.SqlLine$Commands.connect(SqlLine.java:3851)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>         at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:606)
>>         at
>> sqlline.SqlLine$ReflectiveCommandHandler.execute(SqlLine.java:2810)
>>         at sqlline.SqlLine.dispatch(SqlLine.java:817)
>>         at sqlline.SqlLine.initArgs(SqlLine.java:633)
>>         at sqlline.SqlLine.begin(SqlLine.java:680)
>>         at sqlline.SqlLine.mainWithInputRedirection(SqlLine.java:441)
>>         at sqlline.SqlLine.main(SqlLine.java:424)
>>
>>
>> On Thu, Dec 18, 2014 at 5:43 PM, anil gupta <[email protected]>
>> wrote:
>>>
>>> Hi Imran,
>>>
>>> Since 4.1 release, connecting to a secure HBase cluster is supported by
>>> Phoenix. Can you try using sqlline and invoke it by command: sqlline.py
>>> jdbc:phoenix:<quorom>:<port>:<rootNode>:<principal>:<keytab>
>>> Please report back the outcome. Also, are you able to connect to hbase
>>> from the node without using Phoenix? Maybe, there is a firewall or kerberos
>>> client is not setup.
>>>
>>> Thanks,
>>> Anil Gupta
>>>
>>> On Thu, Dec 18, 2014 at 2:45 PM, Alex Kamil <[email protected]>
>>> wrote:
>>>>
>>>> Imran, Are you able to connect with sqlline following these
>>>> instructions
>>>> http://bigdatanoob.blogspot.com/2013/09/connect-phoenix-to-secure-hbase-cluster.html
>>>> ?
>>>> also see previous threads
>>>> <https://www.google.com/webhp?sourceid=chrome-instant&rlz=1CAASUA_enUS609US609&ion=1&espv=2&ie=UTF-8&safe=active&ssui=on#q=apache%2Bhbase%2Bphoenix%2Bsecure%2Bkerberos+&safe=active&ssui=on>
>>>> for debugging tips
>>>>
>>>>
>>>> On Thu, Dec 18, 2014 at 11:37 AM, Imran Mohammed <
>>>> [email protected]> wrote:
>>>>>
>>>>> Hey,
>>>>>
>>>>>
>>>>>
>>>>> I'm using Phoenix 4.XX on CDH5 Hbase 0.98 cluster.
>>>>>
>>>>>
>>>>>
>>>>>  On our sandbox environment which is a non-secure cluster , I'm able
>>>>> to connect through squirrel without any problem.
>>>>>
>>>>>
>>>>>
>>>>> But on our production environment which is a secure cluster  it’s not
>>>>> working. I'm providing keytab and principal as part of my JDBC url but no
>>>>> luck.
>>>>>
>>>>>
>>>>>
>>>>> Can someone help with some guideance on this.
>>>>>
>>>>>
>>>>>
>>>>> Please find the stack trace below
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> java.util.concurrent.TimeoutException
>>>>>
>>>>>             at
>>>>> java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:258)
>>>>>
>>>>>             at
>>>>> java.util.concurrent.FutureTask.get(FutureTask.java:119)
>>>>>
>>>>>             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$Sync.innerRun(FutureTask.java:334)
>>>>>
>>>>>             at
>>>>> java.util.concurrent.FutureTask.run(FutureTask.java:166)
>>>>>
>>>>>             at
>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>>>>>
>>>>>             at
>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>>>>>
>>>>>             at java.lang.Thread.run(Thread.java:722)
>>>>>
>>>>>
>>>>>
>>>>> Regards,
>>>>>
>>>>> Imran A Mohammed.
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>> --
>>> Thanks & Regards,
>>> Anil Gupta
>>>
>>
>
> --
> Thanks & Regards,
> Anil Gupta
>

Reply via email to