METRON-1187 Indexing/Profiler Kafka ACL Groups Not Setup Correctly #759
Conversation
@@ -273,7 +272,7 @@ | |||
profiler_hbase_table = config['configurations']['metron-profiler-env']['profiler_hbase_table'] | |||
profiler_hbase_cf = config['configurations']['metron-profiler-env']['profiler_hbase_cf'] | |||
profiler_configured_flag_file = status_params.profiler_configured_flag_file | |||
profiler_acl_configured_flag_file = status_params.indexing_acl_configured_flag_file | |||
profiler_acl_configured_flag_file = status_params.profiler_acl_configured_flag_file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the crux of the problem. A simple copy-paste error.
6efc4e0
to
7bcea6d
Compare
7bcea6d
to
e6bce70
Compare
@@ -46,6 +46,7 @@ def __init__(self, params): | |||
self.__acl_configured = os.path.isfile(self.__params.indexing_acl_configured_flag_file) | |||
self.__hbase_configured = os.path.isfile(self.__params.indexing_hbase_configured_flag_file) | |||
self.__hbase_acl_configured = os.path.isfile(self.__params.indexing_hbase_acl_configured_flag_file) | |||
self.__hdfs_perm_configured = os.path.isfile(self.__params.indexing_hdfs_perm_configured_flag_file) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is another issue that I found. I am not sure what the impact is, but seems like we would just always set the HDFS perms.
+1 by inspection. This is a good catch to have made, thanks! |
Thanks to @anandsubbu and @justinleet for the assistance on this one. This was tough to track down. |
+1 (non-binding) Indeed, this was a tricky one. Thank you @nickwallen for your root cause and fix!! I spun up a 12 node cluster with this patch, kerberized the cluster and confirmed that all of the topologies come up fine (esp. indexing and profiler). |
The Profiler MPack mistakenly uses the wrong flag/guard file to indicate that the Kafka ACL group has been setup. Whichever component (either Profiler or Indexing) that is executed first will complete successfully. The component to run next will not perform this setup task because the duplicated flag/guard file indicates that the setup was already completed successfully.
Most of the changes in this PR enhance the existing logging to help in the future when tracking down an issue like this. The actual fix is a one line.
Testing
To test this change, you need to kerberize and environment and then ensure that both the Profiler and Indexing topologies are successfully running and consuming data after kerberization.