Hello eagle users and dev,

I'm stuck on installing eagle on HDP2.5 cluster with jdk 1.8.0_101.

Here is my service versions and my cluster is secured using kerberos +
ranger.

HDFS 2.7.3
Hive 1.2.1000
Storm 1.0.1
Kafka 0.10.0
Kerberos 1.10.3-10

Here is what I've done already:

1) Downloaded latest eagle from github (version 0.5 snapshot).
2) Builded it using mvn clean package -DskipTests
[INFO] BUILD SUCCESS
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 16:11 min
[INFO] Finished at: 2017-03-17T16:00:45+03:00
[INFO] Final Memory: 183M/1755M
[INFO]
------------------------------------------------------------------------

3) Moved tarball to /usr/hdp/current/ and extracted to eagle
4) Changed conf/eagle.conf for my cluster:
zkQuorum
zookeeperZnodeParent = "/hbase-secure"
metadata -> jdbc -> user, pass and host
nimbusHost
5) Launched bin/eagle-env.sh and bin/eagle-server start

Eagle started on 9090 port.
6) In Web UI entered SiteId
7) Selected install on HDFS Audit Log Monitor and chenged General settings
(Kafka hosts) and Advanced fs.defaultFS. Execution Mode - cluster
8) Created hdfs_audit_log_{SITE_ID}, hdfs_audit_log_enriched_{SITE_ID}
9) Launched Logstash to write to hdfs_audit_log_{SITE_ID}
10) Checked, logs are pushed in kafka
11) Appliaction is initialized
12) Tried to start this appliaction:

INFO  [2017-03-17 13:28:45,926]
org.apache.eagle.dataproc.impl.storm.kafka.KafkaSpoutProvider: Use topic :
hdfs_audit_log, zkConnection : localhost:2181 , fetchSize : 1048576
WARN  [2017-03-17 13:28:46,216]
org.apache.eagle.app.messaging.KafkaStreamProvider: Using default shared
sink topic dataSinkConfig.topic: hdfs_audit_event
INFO  [2017-03-17 13:28:46,331]
org.apache.eagle.app.environment.impl.StormExecutionRuntime: Starting
HDFS_AUDIT_LOG_MONITOR_APP_MYSITE
 (org.apache.eagle.security.auditlog.HdfsAuditLogApplication), mode: CLUSTER
INFO  [2017-03-17 13:28:46,332]
org.apache.eagle.app.environment.impl.StormExecutionRuntime: Overriding
application.storm.nimbusHost = demo5
INFO  [2017-03-17 13:28:46,332]
org.apache.eagle.app.environment.impl.StormExecutionRuntime: Overriding
application.storm.nimbusThriftPort = 6627
INFO  [2017-03-17 13:28:46,332]
org.apache.eagle.app.environment.impl.StormExecutionRuntime: Submitting as
cluster mode ...

Nothing in Storm UI. Nothing in logs.
Tried to change KafkaSpoutProvider to normal with SITE_ID. -> Nothing
changed.

I think I need to enter some kerberos related configs for storm...

13) Ok, changed  Execution Mode - Local.
14) Started. Status in UI changed to starting. In logs a lot of activity,
but also errors:

WARN  [2017-03-17 13:33:40,952] storm.kafka.KafkaUtils: there are more
tasks than partitions (tasks: 2; partitions: 1), some tasks will be idle
INFO  [2017-03-17 13:33:40,952] storm.kafka.KafkaUtils: Task [1/2] assigned
[Partition{host=null:-1, partition=0}]
INFO  [2017-03-17 13:33:40,952] storm.kafka.ZkCoordinator: Task [1/2]
Deleted partition managers: []
INFO  [2017-03-17 13:33:40,952] storm.kafka.ZkCoordinator: Task [1/2] New
partition managers: [Partition{host=null:-1, partition=0}]
INFO  [2017-03-17 13:33:40,990] storm.kafka.PartitionManager: Read
partition information from:
/consumers/hdfs_audit_log_tuskpro/eagleConsumer/partition_0  --> null
ERROR [2017-03-17 13:33:41,047] backtype.storm.util: Async loop died!
! java.lang.NullPointerException: null
! at org.apache.kafka.common.utils.Utils.formatAddress(Utils.java:312)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at
kafka.consumer.SimpleConsumer$$anonfun$disconnect$1.apply(SimpleConsumer.scala:49)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at
kafka.consumer.SimpleConsumer$$anonfun$disconnect$1.apply(SimpleConsumer.scala:49)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at kafka.utils.Logging$class.debug(Logging.scala:52)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at kafka.consumer.SimpleConsumer.debug(SimpleConsumer.scala:30)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at kafka.consumer.SimpleConsumer.disconnect(SimpleConsumer.scala:49)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at kafka.consumer.SimpleConsumer.liftedTree1$1(SimpleConsumer.scala:82)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at
kafka.consumer.SimpleConsumer.kafka$consumer$SimpleConsumer$$sendRequest(SimpleConsumer.scala:68)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at
kafka.consumer.SimpleConsumer.getOffsetsBefore(SimpleConsumer.scala:127)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at
kafka.javaapi.consumer.SimpleConsumer.getOffsetsBefore(SimpleConsumer.scala:79)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at storm.kafka.KafkaUtils.getOffset(KafkaUtils.java:74)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at storm.kafka.KafkaUtils.getOffset(KafkaUtils.java:64)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at storm.kafka.PartitionManager.<init>(PartitionManager.java:89)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at storm.kafka.ZkCoordinator.refresh(ZkCoordinator.java:98)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! ... 6 common frames omitted
! Causing: java.lang.RuntimeException: java.lang.NullPointerException
! at storm.kafka.ZkCoordinator.refresh(ZkCoordinator.java:103)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at
storm.kafka.ZkCoordinator.getMyManagedPartitions(ZkCoordinator.java:69)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at storm.kafka.KafkaSpout.nextTuple(KafkaSpout.java:135)
~[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at
backtype.storm.daemon.executor$fn__3373$fn__3388$fn__3417.invoke(executor.clj:565)
~[storm-core-0.9.3.jar:0.9.3]
! at backtype.storm.util$async_loop$fn__464.invoke(util.clj:463)
~[storm-core-0.9.3.jar:0.9.3]
! at clojure.lang.AFn.run(AFn.java:24)
[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at java.lang.Thread.run(Thread.java:745) [na:1.8.0_101]

....

ERROR [2017-03-17 13:33:41,079] backtype.storm.util: Halting process:
("Worker died")
! java.lang.RuntimeException: ("Worker died")
! at backtype.storm.util$exit_process_BANG_.doInvoke(util.clj:325)
[storm-core-0.9.3.jar:0.9.3]
! at clojure.lang.RestFn.invoke(RestFn.java:423)
[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at backtype.storm.daemon.worker$fn__3808$fn__3809.invoke(worker.clj:452)
[storm-core-0.9.3.jar:0.9.3]
! at
backtype.storm.daemon.executor$mk_executor_data$fn__3274$fn__3275.invoke(executor.clj:240)
[storm-core-0.9.3.jar:0.9.3]
! at backtype.storm.util$async_loop$fn__464.invoke(util.clj:473)
[storm-core-0.9.3.jar:0.9.3]
! at clojure.lang.AFn.run(AFn.java:24)
[eagle-topology-0.5.0-SNAPSHOT-assembly.jar:na]
! at java.lang.Thread.run(Thread.java:745) [na:1.8.0_101]

ERROR [2017-03-17 13:34:10,013]
org.apache.eagle.security.enrich.DataEnrichJob: Fail to load sensitivity
data
! java.net.ConnectException: Connection refused
! at java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:1.8.0_101]
! at
java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
~[na:1.8.0_101]
! at
java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
~[na:1.8.0_101]
! at
java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
~[na:1.8.0_101]
! at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
~[na:1.8.0_101]
! at java.net.Socket.connect(Socket.java:589) ~[na:1.8.0_101]
! at sun.net.NetworkClient.doConnect(NetworkClient.java:175) ~[na:1.8.0_101]
! at sun.net.www.http.HttpClient.openServer(HttpClient.java:432)
~[na:1.8.0_101]
! at sun.net.www.http.HttpClient.openServer(HttpClient.java:527)
~[na:1.8.0_101]
! at sun.net.www.http.HttpClient.<init>(HttpClient.java:211) ~[na:1.8.0_101]
! at sun.net.www.http.HttpClient.New(HttpClient.java:308) ~[na:1.8.0_101]
! at sun.net.www.http.HttpClient.New(HttpClient.java:326) ~[na:1.8.0_101]
! at
sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1169)
~[na:1.8.0_101]
! at
sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1105)
~[na:1.8.0_101]
! at
sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:999)
~[na:1.8.0_101]
! at
sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:933)
~[na:1.8.0_101]
! at
sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1513)
~[na:1.8.0_101]
! at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)
~[na:1.8.0_101]
! at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
~[na:1.8.0_101]
! at
com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke(URLConnectionClientHandler.java:253)
~[jersey-client-1.19.1.jar:1.19.1]
! at
com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:153)
~[jersey-client-1.19.1.jar:1.19.1]
! ... 12 common frames omitted
! Causing: com.sun.jersey.api.client.ClientHandlerException:
java.net.ConnectException: Connection refused
! at
com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:155)
~[jersey-client-1.19.1.jar:1.19.1]
! at
com.sun.jersey.api.client.filter.GZIPContentEncodingFilter.handle(GZIPContentEncodingFilter.java:123)
~[jersey-client-1.19.1.jar:1.19.1]
! at com.sun.jersey.api.client.Client.handle(Client.java:652)
~[jersey-client-1.19.1.jar:1.19.1]

Ui wasn't accessable, but server was still running.
It was failing again and again.

13) Restarted server
14) Nothing was saved. Again fresh install. UI asks for site_id.
15) Checked Hbase and MySQL Server - all is empty.


So can someone please help me to get started with Eagle on my cluster?


Also here is Logstash info:
logstash-5.2.2


  output {



      if [type] == "hdp-nn-audit" {

        kafka   {

                codec => plain {format => "%{message}"}

                bootstrap_servers => "demo4:6667"

                topic_id => "hdfs_audit_log_tuskpro"

                security_protocol => "SASL_PLAINTEXT"

                sasl_kerberos_service_name => "kafka"

                jaas_path =>
"/usr/hdp/current/kafka-broker/config/kafka_client_jaas.conf"

                kerberos_config => "/etc/krb5.conf"

                client_id => "hdp-nn-audit"

                message_key => "%{user}"

                }

                                  }

         }


Also I don't know why, but logstash is not using kafka_client_jaas.
There is info about sasl_kerberos_service_name , but without this property
logstash is not working.

ยท
KafkaClient {


   com.sun.security.auth.module.Krb5LoginModule required


   useTicketCache=true


   renewTicket=true


   serviceName="kafka";


};


Client {


   com.sun.security.auth.module.Krb5LoginModule required


   useTicketCache=true


   renewTicket=true


   serviceName="zookeeper";


};




Regards,
Andrey

Reply via email to