[ 
https://issues.apache.org/jira/browse/RANGER-1681?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

peng.jianhua updated RANGER-1681:
---------------------------------
    Attachment: 0001-RANGER-1681.patch

> Now ranger's kerberos configuration item relies directly on the configuration 
> of the hadoop component. When the HDFS opens other functions such as HA, the 
> test connection of hbase will fail
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: RANGER-1681
>                 URL: https://issues.apache.org/jira/browse/RANGER-1681
>             Project: Ranger
>          Issue Type: Bug
>          Components: admin, Ranger
>            Reporter: peng.jianhua
>            Assignee: peng.jianhua
>              Labels: patch
>         Attachments: 0001-RANGER-1681.patch
>
>
> Currently, ragner-admin opens kerberos switch:
> 1.Configure the ranger-admin install.properties file:
> {code}
>       hadoop_conf=/etc/hadoop/conf
> {code}
> 2.Read the configuration items in the hadoop configuration file core-site.xml:
> {code}
>       <property>
>               <name>hadoop.security.authentication</name>
>               <value>kerberos</value>
>       </property>
> {code}
> However, when ranger-admin opened kerberos,and the HDFS opens the HA function,
> hbase-plugin service tests connection failure ,this is because ranger and 
> hadoop shared the same kerberos switch configuration file which caused a 
> series of unnecessary dependencies
> {code}
> 2017-06-22 08:14:44,518 INFO 
> org.apache.ranger.services.hbase.client.HBaseClient: HBase connection has 
> [zookeeper.znode.parent] with value [/hbase]
> 2017-06-22 08:14:44,520 INFO org.apache.ranger.plugin.client.BaseClient: Init 
> Login: security not enabled, using username
> 2017-06-22 08:14:44,581 INFO 
> org.apache.ranger.services.hbase.client.HBaseClient: getHBaseStatus: creating 
> default Hbase configuration
> 2017-06-22 08:14:44,582 INFO 
> org.apache.ranger.services.hbase.client.HBaseClient: getHBaseStatus: setting 
> config values from client
> 2017-06-22 08:14:44,582 INFO 
> org.apache.ranger.services.hbase.client.HBaseClient: getHBaseStatus: checking 
> HbaseAvailability with the new config
> 2017-06-22 08:14:44,923 WARN org.apache.zookeeper.ClientCnxn: SASL 
> configuration failed: javax.security.auth.login.LoginException: No JAAS 
> configuration section named 'Client' was found in specified JAAS 
> configuration file: '/dev/null'. Will continue connection to Zookeeper server 
> without SASL authentication, if Zookeeper server allows it.
> 2017-06-22 08:14:45,033 ERROR 
> org.apache.ranger.services.hbase.client.HBaseClient: getHBaseStatus: Unable 
> to check availability of Hbase environment [hbasedev].java.io.IOException: 
> java.lang.reflect.InvocationTargetException
> 2017-06-22 08:14:45,033 ERROR 
> org.apache.ranger.services.hbase.client.HBaseClient: <== 
> HBaseClient.testConnection(): Unable to retrieve any databases using given 
> parameters
> org.apache.ranger.plugin.client.HadoopException: getHBaseStatus: Unable to 
> check availability of Hbase environment [hbasedev].
>       at 
> org.apache.ranger.services.hbase.client.HBaseClient$1.run(HBaseClient.java:175)
>       at 
> org.apache.ranger.services.hbase.client.HBaseClient$1.run(HBaseClient.java:128)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:356)
>       at 
> org.apache.ranger.services.hbase.client.HBaseClient.getHBaseStatus(HBaseClient.java:128)
>       at 
> org.apache.ranger.services.hbase.client.HBaseClient.connectionTest(HBaseClient.java:100)
>       at 
> org.apache.ranger.services.hbase.client.HBaseResourceMgr.connectionTest(HBaseResourceMgr.java:47)
>       at 
> org.apache.ranger.services.hbase.RangerServiceHBase.validateConfig(RangerServiceHBase.java:59)
>       at 
> org.apache.ranger.biz.ServiceMgr$ValidateCallable.actualCall(ServiceMgr.java:560)
>       at 
> org.apache.ranger.biz.ServiceMgr$ValidateCallable.actualCall(ServiceMgr.java:547)
>       at 
> org.apache.ranger.biz.ServiceMgr$TimedCallable.call(ServiceMgr.java:508)
>       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:745)
> Caused by: java.io.IOException: java.lang.reflect.InvocationTargetException
>       at 
> org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:240)
>       at 
> org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:218)
>       at 
> org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:119)
>       at 
> org.apache.hadoop.hbase.client.HBaseAdmin.checkHBaseAvailable(HBaseAdmin.java:2916)
>       at 
> org.apache.ranger.services.hbase.client.HBaseClient$1.run(HBaseClient.java:138)
>       ... 14 more
> Caused by: java.lang.reflect.InvocationTargetException
>       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.ConnectionFactory.createConnection(ConnectionFactory.java:238)
>       ... 18 more
> Caused by: java.lang.ExceptionInInitializerError
>       at org.apache.hadoop.hbase.ClusterId.parseFrom(ClusterId.java:64)
>       at 
> org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(ZKClusterId.java:75)
>       at 
> org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(ZooKeeperRegistry.java:105)
>       at 
> org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.retrieveClusterId(ConnectionManager.java:880)
>       at 
> org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.<init>(ConnectionManager.java:636)
>       ... 23 more
> Caused by: java.lang.IllegalArgumentException: java.net.UnknownHostException: 
> nameservice
>       at 
> org.apache.hadoop.security.SecurityUtil.buildTokenService(SecurityUtil.java:377)
>       at 
> org.apache.hadoop.hdfs.NameNodeProxies.createNonHAProxy(NameNodeProxies.java:320)
>       at 
> org.apache.hadoop.hdfs.NameNodeProxies.createProxy(NameNodeProxies.java:176)
>       at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:692)
>       at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:633)
>       at 
> org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:149)
>       at 
> org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2694)
>       at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:100)
>       at 
> org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2728)
>       at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2710)
>       at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:384)
>       at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:178)
>       at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:368)
>       at org.apache.hadoop.fs.Path.getFileSystem(Path.java:295)
>       at 
> org.apache.hadoop.hbase.util.DynamicClassLoader.initTempDir(DynamicClassLoader.java:120)
>       at 
> org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:98)
>       at 
> org.apache.hadoop.hbase.protobuf.ProtobufUtil.<clinit>(ProtobufUtil.java:241)
>       ... 28 more
> Caused by: java.net.UnknownHostException: nameservice
>       ... 45 more
> 2017-06-22 08:14:45,034 ERROR 
> org.apache.ranger.services.hbase.client.HBaseResourceMgr: <== 
> HBaseResourceMgr.connectionTest() Error: 
> org.apache.ranger.plugin.client.HadoopException: getHBaseStatus: Unable to 
> check availability of Hbase environment [hbasedev].
> 2017-06-22 08:14:45,034 ERROR 
> org.apache.ranger.services.hbase.RangerServiceHBase: <== 
> RangerServiceHBase.validateConfig() 
> Error:org.apache.ranger.plugin.client.HadoopException: getHBaseStatus: Unable 
> to check availability of Hbase environment [hbasedev].
> 2017-06-22 08:14:45,034 ERROR org.apache.ranger.biz.ServiceMgr: 
> TimedCallable.call: Error:org.apache.ranger.plugin.client.HadoopException: 
> getHBaseStatus: Unable to check availability of Hbase environment [hbasedev].
> 2017-06-22 08:14:45,035 ERROR org.apache.ranger.biz.ServiceMgr: ==> 
> ServiceMgr.validateConfig 
> Error:org.apache.ranger.plugin.client.HadoopException: 
> org.apache.ranger.plugin.client.HadoopException: getHBaseStatus: Unable to 
> check availability of Hbase environment [hbasedev].
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to