-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/56335/
-----------------------------------------------------------

(Updated Feb. 10, 2017, 10:50 p.m.)


Review request for ranger, Don Bosco Durai, Abhay Kulkarni, Madhan Neethiraj, 
and Velmurugan Periasamy.


Changes
-------

Bug number and Branch added


Summary (updated)
-----------------

 RANGER-1310: Ranger Audit framework enhancement to provide an option to allow 
audit records to be spooled to local disk first before sending it to 
destinations


Bugs: RANGER-1310
    https://issues.apache.org/jira/browse/RANGER-1310


Repository: ranger


Description (updated)
-------

RANGER-1310: Ranger Audit framework enhancement to provide an option to allow 
audit records to be spooled to local disk first before sending it to 
destinations


Diffs
-----

  
agents-audit/src/main/java/org/apache/ranger/audit/destination/HDFSAuditDestination.java
 7c37cfa 
  
agents-audit/src/main/java/org/apache/ranger/audit/provider/AuditFileCacheProvider.java
 PRE-CREATION 
  
agents-audit/src/main/java/org/apache/ranger/audit/provider/AuditProviderFactory.java
 e3c3508 
  
agents-audit/src/main/java/org/apache/ranger/audit/queue/AuditFileCacheProviderSpool.java
 PRE-CREATION 

Diff: https://reviews.apache.org/r/56335/diff/


Testing
-------

Test all the plugins in Local VM
To enable the file cache provider for each of the components please do the 
following
        
For HDFS Plugin
===============
        mkdir -p  /var/log/hadoop/hdfs/audit/spool
        cd /var/log/hadoop/hdfs/audit/
        chown hdfs:hadoop spool
        Add the following properties to the "custom ranger-hive-audit” in the 
Ambari for hdfs. 
        xasecure.audit.provider.filecache.is.enabled=true
        xasecure.audit.provider.filecache.filespool.file.rollover.sec=300
        
xasecure.audit.provider.filecache.filespool.dir=/var/log/hadoop/hdfs/audit/spool

   NOTE:
        xasecure.audit.provider.filecache.is.enabled = true 
           This property will enable file cache provider which will store the 
audit locally first before sending it to destinations to avoid lose of data 
        xasecure.audit.provider.filecache.filespool.file.rollover.sec=300
            This property will close each of local file every 300 sec ( 5 min ) 
and send it destinations. For testing we maded to 30 sec.
        
xasecure.audit.provider.filecache.filespool.dir=/var/log/hadoop/hdfs/audit/spool
              This property is the directory where the local audit cache is 
present.

For Hive Plugin
=============

   mkdir -p /var/log/hive/audit/spool
    cd /var/log/hive/audit/
    chown hdfs:hadoop spool
Add the following properties to the "custom ranger-hive-audit” in the Ambari 
for hdfs. 
xasecure.audit.provider.filecache.is.enabled=true
xasecure.audit.provider.filecache.filespool.file.rollover.sec=300
xasecure.audit.provider.filecache.filespool.dir=/var/log/hive/audit/spool

Please do the same steps mentioned  for all the components which  need this 
audit file cache provider.


---------------
Issues:
        - Audit to HDFS destination gets 0 bytes file or missing records in the 
file from HDFS plugin when HDFS get restarted and 
           audit from hdfs plugin is logged into destination.
          
        - Audit to HDFS destination gets partial records from 
HIVE/HBASE/KNOX/STORM plugin when HDFS is restarted and there are active 
        spooling into hdfs is happening.
        
Scenarios to test

1) Audit to HDFS / Solr destination with FileCache enabled- 
HDFS/HIVESERVER2/HBASE/KNOX/STORM/KAFKA.
                - Mentioned issue should not happen.
                - Audit will be getting pushed every 5 minutes ( we are setting 
it to 300 sec in the parameter)

2) Audit to HDFS / Solr destination with FileCache enabled  with one of the 
destination is down and brought back up later.
                - Audit from the local cache should be present in destination 
when the destination is up 
                - In case of HDFS as destination audit might show up during 
next rollover of hdfs file or  if the corresponding component
                   is restarted ( say if it is hiveserver2 plugin, when 
Hiveserver2 is restarted audit into HDFS appears as this will close the
                    existing opened hdfsfile)
                 - Mentioned issue should not be present
                 - 
                 - 
3) Same has to be done for each for the plugins ( HBASE, STORM, KAFKA, KMS)


Thanks,

Ramesh Mani

Reply via email to