You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@atlas.apache.org by "Sailaja Navvluru (JIRA)" <ji...@apache.org> on 2018/04/09 19:26:00 UTC

[jira] [Created] (ATLAS-2548) Use of IBM JDK results in kafka login exceptions in a kerberized environment

Sailaja Navvluru created ATLAS-2548:
---------------------------------------

             Summary: Use of IBM JDK results in kafka login exceptions in a kerberized environment
                 Key: ATLAS-2548
                 URL: https://issues.apache.org/jira/browse/ATLAS-2548
             Project: Atlas
          Issue Type: Bug
          Components: atlas-intg
    Affects Versions: 0.8-incubating
            Reporter: Sailaja Navvluru
         Attachments: InMemoryJAASConfiguration.java.patch

Our product uses IBM JDK while interacting with hive metastore directly to create metadata. When Atlas-Hive hook is enabled in kerberized environment, our application logs are filled with the following errors as the Kerberos login module is not found in the path specified by atlas application properties file. IBM JDK has some more restrictions on Kerberos support where some of the options supported by sun JDK are not available.

ERROR - Failed to notify atlas for entity [[{Id='(type: hive_db, id: <unassigned>)', traits=[], values={owner=bigsql, ownerType=1, qualifiedName=tpcdsorc1000@bigsql502

org.apache.kafka.common.KafkaException: Failed to construct kafka producer
    at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:338)
    at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:188)
    at org.apache.atlas.kafka.KafkaNotification.createProducer(KafkaNotification.java:289)
    at org.apache.atlas.kafka.KafkaNotification.sendInternal(KafkaNotification.java:210)
    at org.apache.atlas.notification.AbstractNotification.send(AbstractNotification.java:84)
    at org.apache.atlas.hook.AtlasHook.notifyEntitiesInternal(AtlasHook.java:133)
    at org.apache.atlas.hook.AtlasHook.notifyEntities(AtlasHook.java:118)
    at org.apache.atlas.hook.AtlasHook.notifyEntities(AtlasHook.java:171)
    at org.apache.atlas.hive.hook.HiveHook.access$300(HiveHook.java:83)
    at org.apache.atlas.hive.hook.HiveHook$3.run(HiveHook.java:221)
    at java.security.AccessController.doPrivileged(AccessController.java:686)
    at javax.security.auth.Subject.doAs(Subject.java:569)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1866)
    at org.apache.atlas.hive.hook.HiveHook.notifyAsPrivilegedAction(HiveHook.java:233)
    at org.apache.atlas.hive.hook.HiveHook$2.run(HiveHook.java:203)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:522)
    at java.util.concurrent.FutureTask.run(FutureTask.java:277)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.lang.Thread.run(Thread.java:785)
Caused by: org.apache.kafka.common.KafkaException: javax.security.auth.login.LoginException: unable to find LoginModule class: com.sun.security.auth.module.Krb5LoginModule
    at org.apache.kafka.common.network.SaslChannelBuilder.configure(SaslChannelBuilder.java:86)
    at org.apache.kafka.common.network.ChannelBuilders.create(ChannelBuilders.java:71)
    at org.apache.kafka.clients.ClientUtils.createChannelBuilder(ClientUtils.java:85)
    at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:302)
    ... 19 more
Caused by: javax.security.auth.login.LoginException: unable to find LoginModule class: com.sun.security.auth.module.Krb5LoginModule

Attaching a patch to the defect we have tested to support IBM JDK and Kerberos on 0.8 level of Atlas



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)