Hi Frank, I dont know your exact use case. But, I have successfully run copyTable across *2 secure* clusters back in 2013-2014 on a CDH distro cluster. Unfortunately, I dont remember the settings or command that we ran to do that since it was at my previous job.
Thanks, Anil Gupta On Fri, Sep 9, 2016 at 10:22 AM, Esteban Gutierrez <este...@cloudera.com> wrote: > Hi Frank, > > doesn't looks like the you are pointing the znode base to /hbase-secure, > see the arguments that you provided initially: > > "--peer.adr=zookeeper1, zookeeper2:2181:/hbase", > "--new.name=TargetTable", > "SourceTable" > > if the destination cluster has the base znode under /hbase-secure then you > need to point to the right base znode in --peer.adr, e.g. something > like: --peer.adr=zookeeper1, zookeeper2:2181:/hbase-secure > > or is there something different you have as the arguments for CopyTable? > > esteban. > > > -- > Cloudera, Inc. > > > On Fri, Sep 9, 2016 at 9:40 AM, Frank Luo <j...@merkleinc.com> wrote: > > > I think I know the cause now. > > > > The code tries to get "baseZNode" from the config. and the latter is > > obtained from Connection#getConfiguration(). Now we have two connections, > > one from local hbase, the other remote. The local hbase's connection has > > the configuration set perfectly, while the one on the remote connection > > barely has anything, hence not able to get a value of "baseZNode". > > > > So based on this theory, CopyTable will never work if the remote is a > > secured cluster, is that a right assessment? Does anyone have luck to get > > it work? > > > > -----Original Message----- > > From: Frank Luo > > Sent: Thursday, September 08, 2016 6:45 PM > > To: user@hbase.apache.org > > Subject: RE: CopyTable fails on copying between two secured clusters > > > > I don't think they are pointing to different locations. Both of them > > should be /hbase-secure. > > > > However, the debugger shows that ConnectionManager#retrieveClusterId are > > called twice, the first time regards to the source cluster, which works > > fine, and watcher.clusterIdZNode=/hbase-secure/hbaseid, and it is > correct. > > > > The second time for the remote cluster, watcher.clusterIdZNode=/hbase/ > hbaseid, > > which should be incorrect. > > > > What I am suspecting is ZooKeeperWatcher, method setNodeNames. It reads: > > > > private void setNodeNames(Configuration conf) { > > baseZNode = conf.get(HConstants.ZOOKEEPER_ZNODE_PARENT, > > HConstants.DEFAULT_ZOOKEEPER_ZNODE_PARENT); > > > > I am not sure the conf is corrected fetched from the remote cluster. If > > not, the default value is given, which is /hbase and incorrect. > > > > By the way, below is the root znodes for zookeepers: > > > > The source cluster: > > [hbase-secure, hiveserver2, hive, hbase-unsecure, templeton-hadoop, > > hadoop-ha, zookeeper] > > > > The target cluster: > > [hbase-secure, hive, hiveserver2, hbase-unsecure, hadoop-ha, zookeeper] > > > > -----Original Message----- > > From: Esteban Gutierrez [mailto:este...@cloudera.com] > > Sent: Thursday, September 08, 2016 1:02 PM > > To: user@hbase.apache.org > > Subject: Re: CopyTable fails on copying between two secured clusters > > > > Is it possible that in your destination cluster zookeeper.znode.parent > > points to a different location than /hbase ? If both clusters are under > the > > same kerberos realm then there is no need to worry about > > zookeeper.security.auth_to_local. > > > > > > > > -- > > Cloudera, Inc. > > > > > > On Thu, Sep 8, 2016 at 10:50 AM, Frank Luo <j...@merkleinc.com> wrote: > > > > > Thanks Esteban for replying. > > > > > > The Kerberos realm is shared between the two clusters. > > > > > > I searched zookeeper config and couldn't find the rule, so where it > > > is set? > > > > > > Having said that, I looked at parameters passed to getData call, and > > > it doesn't look like security related. > > > > > > PS. I am using hbase 1.1.2. > > > > > > Here is the log: > > > > > > com.merkleinc.cr.hbase_maintenance.tableexport.CopyTableTest,testCopyT > > > able Connected to the target VM, address: '127.0.0.1:50669', > > > transport: > > > 'socket' > > > 0 [main] WARN org.apache.hadoop.hbase.io.util.HeapMemorySizeUtil > - > > > hbase.regionserver.global.memstore.upperLimit is deprecated by > > > hbase.regionserver.global.memstore.size > > > 247 [main] WARN org.apache.hadoop.util.NativeCodeLoader - Unable to > > > load native-hadoop library for your platform... using builtin-java > > > classes where applicable > > > 1492 [main] INFO org.apache.hadoop.security.UserGroupInformation - > > > Login successful for user tidsvc_exphbase@PCLC0.MERKLE.LOCAL using > > > keytab file \Users\jluo\tidsvc_exphbase.keytab > > > 11462 [main] WARN org.apache.hadoop.hbase.io.util.HeapMemorySizeUtil > > > - hbase.regionserver.global.memstore.upperLimit is deprecated by > > > hbase.regionserver.global.memstore.size > > > 164493 [main] WARN org.apache.hadoop.hbase.io.util.HeapMemorySizeUtil > > > - hbase.regionserver.global.memstore.upperLimit is deprecated by > > > hbase.regionserver.global.memstore.size > > > 167720 [main] WARN org.apache.hadoop.hbase.io.util.HeapMemorySizeUtil > > > - hbase.regionserver.global.memstore.upperLimit is deprecated by > > > hbase.regionserver.global.memstore.size > > > 172108 [main] WARN > > > org.apache.hadoop.hdfs.shortcircuit.DomainSocketFactory > > > - The short-circuit local reads feature cannot be used because UNIX > > > Domain sockets are not available on Windows. > > > 224735 [main] WARN org.apache.hadoop.hbase.io.util.HeapMemorySizeUtil > > > - hbase.regionserver.global.memstore.upperLimit is deprecated by > > > hbase.regionserver.global.memstore.size > > > 225165 [main] INFO > > > org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper > > > - Process identifier=hconnection-0x4dd5d6bb connecting to ZooKeeper > > > ensemble=hqhd02nm01.pclc0.merkle.local:2181,hqhd02nm02. > > > pclc0.merkle.local:2181,hqhd02ed01.pclc0.merkle.local:2181 > > > 225190 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:zookeeper.version=3.4.6-1569965, built on 02/20/2014 09:09 > > > GMT > > > 225191 [main] INFO org.apache.zookeeper.ZooKeeper - Client > environment: > > > host.name=JLUOWIN7.pclc0.merkle.local > > > 225191 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:java.version=1.7.0_51 > > > 225191 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:java.vendor=Oracle Corporation > > > 225191 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:java.home=C:\work\jdk1.7.0_51\jre > > > 225193 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:java.io.tmpdir=C:\Users\jluo\AppData\Local\Temp\ > > > 225193 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:java.compiler=<NA> > > > 225193 [main] INFO org.apache.zookeeper.ZooKeeper - Client > environment: > > > os.name=Windows 7 > > > 225193 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:os.arch=amd64 > > > 225194 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:os.version=6.1 > > > 225194 [main] INFO org.apache.zookeeper.ZooKeeper - Client > environment: > > > user.name=jluo > > > 225194 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:user.home=C:\Users\jluo > > > 225194 [main] INFO org.apache.zookeeper.ZooKeeper - Client > > > environment:user.dir=C:\work\project\c2\trunk\misc\hbase_maintenance > > > 225197 [main] INFO org.apache.zookeeper.ZooKeeper - Initiating > > > client connection, connectString=hqhd02nm01.pclc0.merkle.local:2181, > > > hqhd02nm02.pclc0.merkle.local:2181,hqhd02ed01.pclc0.merkle.local:2181 > > > sessionTimeout=120000 watcher=hconnection-0x4dd5d6bb0x0, > > > quorum=hqhd02nm01.pclc0.merkle.local:2181,hqhd02nm02. > > > pclc0.merkle.local:2181,hqhd02ed01.pclc0.merkle.local:2181, > > > baseZNode=/hbase-secure > > > 225442 [main-SendThread(hqhd02nm02.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Opening socket connection to server > > > hqhd02nm02.pclc0.merkle.local/10.129.8.14:2181. Will not attempt to > > > authenticate using SASL (unknown error) > > > 225490 [main-SendThread(hqhd02nm02.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Socket connection established to > > > hqhd02nm02.pclc0.merkle.local/10.129.8.14:2181, initiating session > > > 225544 [main-SendThread(hqhd02nm02.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Session establishment complete on > > > server hqhd02nm02.pclc0.merkle.local/10.129.8.14:2181, sessionid = > > > 0x357067c5442410e, negotiated timeout = 120000 > > > 231758 [main] INFO > > > org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper > > > - Process identifier=TokenUtil-getAuthToken connecting to ZooKeeper > > > ensemble=hqhd02nm01.pclc0.merkle.local:2181,hqhd02nm02. > > > pclc0.merkle.local:2181,hqhd02ed01.pclc0.merkle.local:2181 > > > 231758 [main] INFO org.apache.zookeeper.ZooKeeper - Initiating > > > client connection, connectString=hqhd02nm01.pclc0.merkle.local:2181, > > > hqhd02nm02.pclc0.merkle.local:2181,hqhd02ed01.pclc0.merkle.local:2181 > > > sessionTimeout=120000 watcher=TokenUtil-getAuthToken0x0, > > > quorum=hqhd02nm01.pclc0.merkle.local:2181,hqhd02nm02. > > > pclc0.merkle.local:2181,hqhd02ed01.pclc0.merkle.local:2181, > > > baseZNode=/hbase-secure > > > 231876 [main-SendThread(hqhd02nm02.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Opening socket connection to server > > > hqhd02nm02.pclc0.merkle.local/10.129.8.14:2181. Will not attempt to > > > authenticate using SASL (unknown error) > > > 253405 [main-SendThread(hqhd02nm02.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Socket connection established to > > > hqhd02nm02.pclc0.merkle.local/10.129.8.14:2181, initiating session > > > 257914 [main-SendThread(hqhd02nm02.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Session establishment complete on > > > server hqhd02nm02.pclc0.merkle.local/10.129.8.14:2181, sessionid = > > > 0x357067c54424116, negotiated timeout = 120000 > > > 374820 [main-SendThread(hqhd02nm02.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Client session timed out, have not > > > heard from server in 96993ms for sessionid 0x357067c5442410e, closing > > > socket connection and attempting reconnect > > > 374923 [main] INFO org.apache.zookeeper.ZooKeeper - Session: > > > 0x357067c54424116 closed > > > 374924 [main-EventThread] INFO org.apache.zookeeper.ClientCnxn - > > > EventThread shut down > > > 375053 [main-SendThread(hqhd02ed01.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Opening socket connection to server > > > hqhd02ed01.pclc0.merkle.local/10.129.8.11:2181. Will not attempt to > > > authenticate using SASL (unknown error) > > > 375095 [main-SendThread(hqhd02ed01.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Socket connection established to > > > hqhd02ed01.pclc0.merkle.local/10.129.8.11:2181, initiating session > > > 375136 [main-SendThread(hqhd02ed01.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Session establishment complete on > > > server hqhd02ed01.pclc0.merkle.local/10.129.8.11:2181, sessionid = > > > 0x357067c5442410e, negotiated timeout = 120000 > > > 376538 [main] INFO > > > org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementa > > > tion > > > - Closing zookeeper sessionid=0x357067c5442410e > > > 376581 [main] INFO org.apache.zookeeper.ZooKeeper - Session: > > > 0x357067c5442410e closed > > > 376581 [main-EventThread] INFO org.apache.zookeeper.ClientCnxn - > > > EventThread shut down > > > 376746 [main] WARN org.apache.hadoop.hbase.io.util.HeapMemorySizeUtil > > > - hbase.regionserver.global.memstore.upperLimit is deprecated by > > > hbase.regionserver.global.memstore.size > > > 376749 [main] INFO org.apache.hadoop.conf.Configuration.deprecation > > > - io.bytes.per.checksum is deprecated. Instead, use > > > dfs.bytes-per-checksum > > > 376839 [main] WARN org.apache.hadoop.hbase.io.util.HeapMemorySizeUtil > > > - hbase.regionserver.global.memstore.upperLimit is deprecated by > > > hbase.regionserver.global.memstore.size > > > 376841 [main] INFO org.apache.hadoop.conf.Configuration.deprecation > > > - io.bytes.per.checksum is deprecated. Instead, use > > > dfs.bytes-per-checksum > > > 376843 [main] INFO > > > org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper > > > - Process identifier=hconnection-0x613cf3c5 connecting to ZooKeeper > > > ensemble=hqetghdpadm91.pclc0.merkle.local:2181, > > hqetghdpadm90.pclc0.merkle. > > > local:2181 > > > 376843 [main] INFO org.apache.zookeeper.ZooKeeper - Initiating > > > client connection, > > > connectString=hqetghdpadm91.pclc0.merkle.local:2181, > > > hqetghdpadm90.pclc0.merkle.local:2181 sessionTimeout=120000 > > > watcher=hconnection-0x613cf3c50x0, quorum=hqetghdpadm91.pclc0. > > > merkle.local:2181,hqetghdpadm90.pclc0.merkle.local:2181, > > > baseZNode=/hbase > > > 377008 [main-SendThread(hqetghdpadm91.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Opening socket connection to server > > > hqetghdpadm91.pclc0.merkle.local/10.129.40.11:2181. Will not attempt > > > to authenticate using SASL (unknown error) > > > 377057 [main-SendThread(hqetghdpadm91.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Socket connection established to > > > hqetghdpadm91.pclc0.merkle.local/10.129.40.11:2181, initiating session > > > 377098 [main-SendThread(hqetghdpadm91.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Session establishment complete on > > > server hqetghdpadm91.pclc0.merkle.local/10.129.40.11:2181, sessionid = > > > 0x2565c552d296982, negotiated timeout = 40000 > > > 377140 [main] INFO org.apache.hadoop.hbase.client.ZooKeeperRegistry > > > - ClusterId read in ZooKeeper is null > > > 377141 [main] INFO > > > org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper > > > - Process identifier=TokenUtil-getAuthToken connecting to ZooKeeper > > > ensemble=hqetghdpadm91.pclc0.merkle.local:2181, > > hqetghdpadm90.pclc0.merkle. > > > local:2181 > > > 377141 [main] INFO org.apache.zookeeper.ZooKeeper - Initiating > > > client connection, > > > connectString=hqetghdpadm91.pclc0.merkle.local:2181, > > > hqetghdpadm90.pclc0.merkle.local:2181 sessionTimeout=120000 > > > watcher=TokenUtil-getAuthToken0x0, quorum=hqetghdpadm91.pclc0. > > > merkle.local:2181,hqetghdpadm90.pclc0.merkle.local:2181, > > > baseZNode=/hbase > > > 377189 [main-SendThread(hqetghdpadm90.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Opening socket connection to server > > > hqetghdpadm90.pclc0.merkle.local/10.129.40.10:2181. Will not attempt > > > to authenticate using SASL (unknown error) > > > 399494 [main-SendThread(hqetghdpadm90.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Socket connection established to > > > hqetghdpadm90.pclc0.merkle.local/10.129.40.10:2181, initiating session > > > 399541 [main-SendThread(hqetghdpadm90.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Session establishment complete on > > > server hqetghdpadm90.pclc0.merkle.local/10.129.40.10:2181, sessionid = > > > 0x1565c552cfd6b03, negotiated timeout = 40000 > > > 1036441 [main-SendThread(hqetghdpadm90.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Client session timed out, have not > > > heard from server in 636835ms for sessionid 0x1565c552cfd6b03, closing > > > socket connection and attempting reconnect > > > 1036441 [main-SendThread(hqetghdpadm91.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Client session timed out, have not > > > heard from server in 636900ms for sessionid 0x2565c552d296982, closing > > > socket connection and attempting reconnect > > > 1236709 [main-SendThread(hqetghdpadm90.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Opening socket connection to server > > > hqetghdpadm90.pclc0.merkle.local/10.129.40.10:2181. Will not attempt > > > to authenticate using SASL (unknown error) > > > 1236761 [main-SendThread(hqetghdpadm90.pclc0.merkle.local:2181)] INFO > > > org.apache.zookeeper.ClientCnxn - Socket connection established to > > > hqetghdpadm90.pclc0.merkle.local/10.129.40.10:2181, initiating session > > > 1236762 [main] INFO org.apache.zookeeper.ZooKeeper - Session: > > > 0x1565c552cfd6b03 closed > > > 1236762 [main] INFO > > > org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementa > > > tion > > > - Closing zookeeper sessionid=0x2565c552d296982 > > > 1236762 [main-EventThread] INFO org.apache.zookeeper.ClientCnxn - > > > EventThread shut down > > > 1236908 [main] INFO org.apache.zookeeper.ZooKeeper - Session: > > > 0x2565c552d296982 closed > > > 1236909 [main-EventThread] INFO org.apache.zookeeper.ClientCnxn - > > > EventThread shut down > > > > > > java.io.IOException: Failed to get cluster ID > > > > > > at org.apache.hadoop.hbase.security.token.TokenUtil. > > > getAuthToken(TokenUtil.java:365) > > > at org.apache.hadoop.hbase.security.token.TokenUtil. > > > addTokenForJob(TokenUtil.java:327) > > > at org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil. > > > initCredentials(TableMapReduceUtil.java:451) > > > at org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil. > > > initTableReducerJob(TableMapReduceUtil.java:658) > > > at org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil. > > > initTableReducerJob(TableMapReduceUtil.java:591) > > > at org.apache.hadoop.hbase.mapreduce.CopyTable. > > > createSubmittableJob(CopyTable.java:168) > > > at org.apache.hadoop.hbase.mapreduce.CopyTable.run( > > > CopyTable.java:348) > > > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) > > > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84) > > > at org.apache.hadoop.hbase.mapreduce.CopyTable.main( > > > CopyTable.java:341) > > > at com.merkleinc.cr.hbase_maintenance.tableexport. > > > CopyTableTest.export(CopyTableTest.java:44) > > > at com.merkleinc.cr.hbase_maintenance.tableexport. > > > CopyTableTest.testCopyTable(CopyTableTest.java:25) > > > 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 > > > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall( > > > FrameworkMethod.java:50) > > > at org.junit.internal.runners.model.ReflectiveCallable.run( > > > ReflectiveCallable.java:12) > > > at org.junit.runners.model.FrameworkMethod.invokeExplosively( > > > FrameworkMethod.java:47) > > > at org.junit.internal.runners.statements.InvokeMethod. > > > evaluate(InvokeMethod.java:17) > > > at com.intellij.junit4.JUnit4TestRunnerUtil$ > > > IgnoreIgnoredTestJUnit4ClassRunner.runChild( > > JUnit4TestRunnerUtil.java:349) > > > at org.junit.runners.BlockJUnit4ClassRunner.runChild( > > > BlockJUnit4ClassRunner.java:57) > > > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) > > > at org.junit.runners.ParentRunner$1.schedule( > > ParentRunner.java:71) > > > at org.junit.runners.ParentRunner.runChildren( > > > ParentRunner.java:288) > > > at org.junit.runners.ParentRunner.access$000( > > ParentRunner.java:58) > > > at org.junit.runners.ParentRunner$2.evaluate( > > > ParentRunner.java:268) > > > at org.junit.runners.ParentRunner.run(ParentRunner.java:363) > > > at org.junit.runner.JUnitCore.run(JUnitCore.java:137) > > > at > > > com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs( > > > JUnit4IdeaTestRunner.java:69) > > > at com.intellij.rt.execution.junit.JUnitStarter. > > > prepareStreamsAndStart(JUnitStarter.java:234) > > > at com.intellij.rt.execution.junit.JUnitStarter.main( > > > JUnitStarter.java:74) > > > > > > Disconnected from the target VM, address: '127.0.0.1:50669', > transport: > > > 'socket' > > > > > > Process finished with exit code -1 > > > > > > -----Original Message----- > > > From: Esteban Gutierrez [mailto:este...@cloudera.com] > > > Sent: Thursday, September 08, 2016 12:37 PM > > > To: user@hbase.apache.org > > > Subject: Re: CopyTable fails on copying between two secured clusters > > > > > > Frank, > > > > > > Do you have a cross realm setup? if yes, do you have ZK to use the > > > proper rules via the -Dzookeeper.security.auth_to_local flag? If you > > > could share additional logs that would be helpful for us. > > > > > > Thanks! > > > esteban. > > > > > > -- > > > Cloudera, Inc. > > > > > > > > > On Thu, Sep 8, 2016 at 10:32 AM, Frank Luo <j...@merkleinc.com> wrote: > > > > > > > I couldn’t manage to get the CopyTable to work between two secured > > > > clusters and hope someone can shed some light. > > > > > > > > I have a table created on both clusters, and I am running the > > > > CopyTable command from the source cluster. > > > > > > > > The parameters are the following: > > > > "--peer.adr=zookeeper1, zookeeper2:2181:/hbase", > > > > "--new.name=TargetTable", "SourceTable" > > > > > > > > I have ensured that the user has all permissions on both tables. > > > > When I run it, I got: > > > > > > > > ===================== > > > > java.io.IOException: Failed to get cluster ID > > > > > > > > at org.apache.hadoop.hbase.security.token.TokenUtil. > > > > getAuthToken(TokenUtil.java:365) > > > > at org.apache.hadoop.hbase.security.token.TokenUtil. > > > > addTokenForJob(TokenUtil.java:327) > > > > ===================== > > > > > > > > Debugging into it, I found that it is trying to get the clusterId > > > > from my target cluster using address of zookeeper1/2, and the code > > > > below returns > > > > null: > > > > > > > > > > > > ===================== > > > > > > > > ZKUtil.getData(watcher, watcher.clusterIdZNode); > > > > ===================== > > > > > > > > Any hints please? > > > > > > > > > > > > > > > > Access the Q2 2016 Digital Marketing Report for a fresh set of > > > > trends and benchmarks in digital > > > > marketing<http://www2.merkleinc.com/l/47252/2016-07- > > > > 26/47gt7c> > > > > > > > > Download our latest report titled “The Case for Change: Exploring > > > > the Myths of Customer-Centric Transformation” > > > > <http://www2.merkleinc.com/l/ 47252/2016-08-04/4b9p7c> > > > > > > > > This email and any attachments transmitted with it are intended for > > > > use by the intended recipient(s) only. If you have received this > > > > email in error, please notify the sender immediately and then delete > > > > it. If you are not the intended recipient, you must not keep, use, > > > > disclose, copy or distribute this email without the author’s prior > > permission. > > > > We take precautions to minimize the risk of transmitting software > > > > viruses, but we advise you to perform your own virus checks on any > > > > attachment to this message. We cannot accept liability for any loss > > > > or damage caused by software viruses. The information contained in > > > > this communication may be confidential and may be subject to the > > > attorney-client privilege. > > > > > > > Access the Q2 2016 Digital Marketing Report for a fresh set of trends > > > and benchmarks in digital > > > marketing<http://www2.merkleinc.com/l/47252/2016-07- > > > 26/47gt7c> > > > > > > Download our latest report titled “The Case for Change: Exploring the > > > Myths of Customer-Centric Transformation” > > > <http://www2.merkleinc.com/l/ 47252/2016-08-04/4b9p7c> This email and > > > any attachments transmitted with it are intended for use by the > > > intended recipient(s) only. If you have received this email in error, > > > please notify the sender immediately and then delete it. If you are > > > not the intended recipient, you must not keep, use, disclose, copy or > > > distribute this email without the author’s prior permission. We take > > > precautions to minimize the risk of transmitting software viruses, but > > > we advise you to perform your own virus checks on any attachment to > > > this message. We cannot accept liability for any loss or damage caused > > > by software viruses. The information contained in this communication > > > may be confidential and may be subject to the attorney-client > privilege. > > > > > Access the Q2 2016 Digital Marketing Report for a fresh set of trends and > > benchmarks in digital marketing<http://www2. > merkleinc.com/l/47252/2016-07- > > 26/47gt7c> > > > > Download our latest report titled “The Case for Change: Exploring the > > Myths of Customer-Centric Transformation” <http://www2.merkleinc.com/l/ > > 47252/2016-08-04/4b9p7c> > > This email and any attachments transmitted with it are intended for use > by > > the intended recipient(s) only. If you have received this email in error, > > please notify the sender immediately and then delete it. If you are not > the > > intended recipient, you must not keep, use, disclose, copy or distribute > > this email without the author’s prior permission. We take precautions to > > minimize the risk of transmitting software viruses, but we advise you to > > perform your own virus checks on any attachment to this message. We > cannot > > accept liability for any loss or damage caused by software viruses. The > > information contained in this communication may be confidential and may > be > > subject to the attorney-client privilege. > > > -- Thanks & Regards, Anil Gupta