1: sqoop 版本必须要大于1.4.7,atlas sqoop hook 才起作用,因为在1.4.7版本中增加了sqoop.job.data.publish.class接口,在1.4.6中执行不会报任务错误,通过修改源码重新添加必须日志来判断,并hook并没有加载进来。
2: 按照官网配置好,之后,执行sqoop import --connect,--hive-import --verbose包时,默认hook会显示success,但通过kafka发现,此时sqoop hook 并没有发送kafka数据,则说明sqoop hook 有问题,但错误并没有打出来,还是通过修改源码打印相关日志的策略来定为问题,具体定位步骤类似Apache atlas sqoop Hook无法显示的问题 。 可参照一下,不做过多描述。
Caused by: java.security.AccessControlException: access denied ("javax.management.MBeanTrustPermission" "register")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:585)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanTrustPermission(DefaultMBeanServerInterceptor.java:1848)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:322)
at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)
at org.apache.kafka.common.metrics.JmxReporter.reregister(JmxReporter.java:162)
at org.apache.kafka.common.metrics.JmxReporter.metricChange(JmxReporter.java:82)
at org.apache.kafka.common.metrics.Metrics.registerMetric(Metrics.java:535)
at org.apache.kafka.common.metrics.Metrics.addMetric(Metrics.java:491)
at org.apache.kafka.common.metrics.Metrics.addMetric(Metrics.java:475)
at org.apache.kafka.common.metrics.Metrics.addMetric(Metrics.java:460)
at org.apache.kafka.common.metrics.Metrics.<init>(Metrics.java:154)
at org.apache.kafka.common.metrics.Metrics.<init>(Metrics.java:120)
at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:337)
显示为权限的问题,找到问题之后,在在$JAVA_HOME/jre/lib/security/java.policy 中增加
permission javax.management.MBeanTrustPermission "register";
重新执行命令,则可在atlas中查看sqoop_process类型的明细。