<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>question Re: Ambari Audit log in Archives of Support Questions (Read Only)</title>
    <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97686#M11078</link>
    <description>&lt;P&gt;Ah - thanks.  I am far from an expert on Python and did not realize this was a non-Hadoop package.  A quick 'yum install python-requests' did the trick.&lt;/P&gt;&lt;P&gt;FYI: I'm not sure if you're implying that 'audit.py' should be present on the system, but it certainly isn't here.  I grabbed it from GitHub.&lt;/P&gt;&lt;P&gt;This is a very valuable utilitity, and would be even more so if it had the ability to crawl all configuration files and generate a master listing.  My proximate problem is how to effectively clone a running configuration to a new cluster.  I'm surprised to find so little discussion of this task.  Perhaps I'm missing something obvious, but exporting and copying configurations does not correct the myriad of machine names and IP addresses that will certainly be inappropriate in a new setting.  Ambari badly needs the ability to generate bulk &lt;STRONG&gt;delta&lt;/STRONG&gt; files (differences from defaults at install time) that can be imported "smartly" into a new cluster - e.g. spotting anything that looks like a URL or port address and prompting for manual intervention.&lt;/P&gt;</description>
    <pubDate>Mon, 15 Feb 2016 23:09:56 GMT</pubDate>
    <dc:creator>hirschs</dc:creator>
    <dc:date>2016-02-15T23:09:56Z</dc:date>
    <item>
      <title>Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97677#M11069</link>
      <description>&lt;P&gt;Where can I find an audit trail of every changes done via Ambari ? I would like something similar to the configuration diff that we can do using the UI with the addition of the username. &lt;/P&gt;&lt;P&gt;Eg Olivier has changed umask to 077 in hdfs-site on Monday 5th of December 2014 at 2:20:21.123  &lt;/P&gt;&lt;P&gt;I've found /var/log/ambari-server/ambari-config-changes.log but it doesn't show the specific change which has happened. I understand that I've got the version and i can diff w/ the previous version but i was wondering if we were recording it somewhere else.&lt;/P&gt;</description>
      <pubDate>Wed, 25 Nov 2015 19:58:38 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97677#M11069</guid>
      <dc:creator>orenault</dc:creator>
      <dc:date>2015-11-25T19:58:38Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97678#M11070</link>
      <description>&lt;P&gt;&lt;A rel="user" href="https://community.cloudera.com/users/270/orenault.html" nodeid="270"&gt;@Olivier Renault&lt;/A&gt; I don't think we have a separate audit tool or recording of the changes available, however a short Python script should solve this problem.&lt;/P&gt;&lt;P&gt;I just created a short example (quick and dirty solution, needs some tweaking! :P), take a look at this &lt;A target="_blank" href="https://github.com/mr-jstraub/ambari-audit-config"&gt;https://github.com/mr-jstraub/ambari-audit-config&lt;/A&gt;&lt;/P&gt;&lt;P&gt;The repo contains an &lt;EM&gt;audit.py&lt;/EM&gt; script that you can use as follows:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Example (audit hive-site to shell): &lt;/STRONG&gt;&lt;/P&gt;&lt;PRE&gt;python audit.py --target horton01.myhost.com:8080 --cluster bigdata --user admin --config hive-site&lt;/PRE&gt;&lt;P&gt;&lt;STRONG&gt;Example (audit hive-site to hive-site_audit.log) &lt;/STRONG&gt;&lt;/P&gt;&lt;PRE&gt;python audit.py --target horton01.myhost.com:8080 --cluster bigdata --user admin --config hive-site --output hive-site_audit.log&lt;/PRE&gt;&lt;P&gt;&lt;STRONG&gt;Result&lt;/STRONG&gt;:&lt;/P&gt;&lt;PRE&gt;hive-site: version 1 - ADDED - javax.jdo.option.ConnectionDriverName - com.mysql.jdbc.Driver
hive-site: version 1 - ADDED - hive.fetch.task.aggr - false
hive-site: version 1 - ADDED - hive.execution.engine - tez
hive-site: version 1 - ADDED - hive.tez.java.opts - -server -Djava.net.preferIPv4Stack=true -XX:NewRatio=8 -XX:+UseNUMA -XX:+UseG1GC -XX:+ResizeTLAB -XX:+PrintGCDetails -verbose:gc -XX:+PrintGCTimeStamps
hive-site: version 1 - ADDED - hive.vectorized.groupby.maxentries - 100000
hive-site: version 1 - ADDED - hive.server2.table.type.mapping - CLASSIC
...
...
...
hive-site: version 1 - ADDED - hive.compactor.check.interval - 300L
hive-site: version 1 - ADDED - hive.compactor.delta.pct.threshold - 0.1f
hive-site: version 2 - CHANGED - javax.jdo.option.ConnectionURL - jdbc:mysql://horton03.myhost.com/hive?createDatabaseIfNotExist=true =&amp;gt; jdbc:mysql://horton03.myhost.com:3306/hive?createDatabaseIfNotExist=true
hive-site: version 2 - CHANGED - hive.zookeeper.quorum - horton03.myhost.com:2181,horton02.myhost.com:2181,horton01.myhost.com:2181 =&amp;gt; horton02.myhost.com:2181,horton03.myhost.com:2181,horton01.myhost.com:2181
hive-site: version 2 - CHANGED - hive.cluster.delegation.token.store.zookeeper.connectString - horton03.myhost.com:2181,horton02.myhost.com:2181,horton01.myhost.com:2181 =&amp;gt; horton02.myhost.com:2181,horton03.myhost.com:2181,horton01.myhost.com:2181
hive-site: version 3 - CHANGED - javax.jdo.option.ConnectionURL - jdbc:mysql://horton03.myhost.com:3306/hive?createDatabaseIfNotExist=true =&amp;gt; jdbc:mysql://horton03.myhost.com/hive?createDatabaseIfNotExist=true
hive-site: version 4 - ADDED - atlas.cluster.name - default
hive-site: version 4 - CHANGED - hive.exec.post.hooks - org.apache.hadoop.hive.ql.hooks.ATSHook =&amp;gt; org.apache.hadoop.hive.ql.hooks.ATSHook,org.apache.atlas.hive.hook.HiveHook
hive-site: version 4 - CHANGED - hive.metastore.sasl.enabled - false =&amp;gt; true
hive-site: version 4 - CHANGED - hive.server2.authentication.spnego.principal - /etc/security/keytabs/spnego.service.keytab =&amp;gt; HTTP/_HOST@EXAMPLE.COM
hive-site: version 4 - CHANGED - hive.server2.authentication.spnego.keytab - HTTP/_HOST@EXAMPLE.COM =&amp;gt; /etc/security/keytabs/spnego.service.keytab
hive-site: version 4 - ADDED - hive.server2.authentication.kerberos.keytab - /etc/security/keytabs/hive.service.keytab
hive-site: version 4 - CHANGED - hive.zookeeper.quorum - horton02.myhost.com:2181,horton03.myhost.com:2181,horton01.myhost.com:2181 =&amp;gt; horton03.myhost.com:2181,horton02.myhost.com:2181,horton01.myhost.com:2181
hive-site: version 4 - ADDED - hive.server2.authentication.kerberos.principal - hive/_HOST@EXAMPLE.COM
hive-site: version 4 - ADDED - atlas.rest.address - &lt;A href="http://horton03.myhost.com:21000" target="_blank"&gt;http://horton03.myhost.com:21000&lt;/A&gt;
hive-site: version 4 - CHANGED - hive.cluster.delegation.token.store.zookeeper.connectString - horton02.myhost.com:2181,horton03.myhost.com:2181,horton01.myhost.com:2181 =&amp;gt; horton03.myhost.com:2181,horton02.myhost.com:2181,horton01.myhost.com:2181
hive-site: version 4 - CHANGED - hive.server2.authentication - NONE =&amp;gt; KERBEROS
hive-site: version 5 - CHANGED - atlas.cluster.name - default =&amp;gt; bigdata
hive-site: version 6 - ADDED - my.prop.test - blub
&lt;/PRE&gt;&lt;P&gt;I still need to add the username, however I haven't found it for every config version. Does anyone know if I can retrieve the username of the person that changed the configuration?&lt;/P&gt;&lt;P&gt;Hope that helps &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Update&lt;/STRONG&gt;: Found the usernames, but I need to map config type (hive-site, hive-env,...) to service name (HIVE).....bit tricky..... &lt;/P&gt;&lt;P&gt;&lt;A href="http://horton01.myhost.com.com:8080/api/v1/clusters/bigdata/configurations/service_config_versions?service_name=HIVE&amp;amp;fields=service_config_version,user,hosts,service_name,service_config_version_note,stack_id,is_cluster_compatible&amp;amp;minimal_response=true" target="_blank"&gt;http://horton01.myhost.com.com:8080/api/v1/clusters/bigdata/configurations/service_config_versions?service_name=HIVE&amp;amp;fields=service_config_version,user,hosts,service_name,service_config_version_note,stack_id,is_cluster_compatible&amp;amp;minimal_response=true&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 26 Nov 2015 06:54:42 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97678#M11070</guid>
      <dc:creator>jstraub</dc:creator>
      <dc:date>2015-11-26T06:54:42Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97679#M11071</link>
      <description>&lt;P&gt;Great help, thanks a lot &lt;/P&gt;</description>
      <pubDate>Thu, 26 Nov 2015 14:25:10 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97679#M11071</guid>
      <dc:creator>orenault</dc:creator>
      <dc:date>2015-11-26T14:25:10Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97680#M11072</link>
      <description>&lt;P&gt;Awesome stuff!&lt;/P&gt;</description>
      <pubDate>Thu, 26 Nov 2015 14:40:07 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97680#M11072</guid>
      <dc:creator>abajwa</dc:creator>
      <dc:date>2015-11-26T14:40:07Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97681#M11073</link>
      <description>&lt;P&gt;thanks &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; &lt;/P&gt;</description>
      <pubDate>Thu, 26 Nov 2015 14:45:24 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97681#M11073</guid>
      <dc:creator>jstraub</dc:creator>
      <dc:date>2015-11-26T14:45:24Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97682#M11074</link>
      <description>&lt;P&gt;&lt;A rel="user" href="https://community.cloudera.com/users/113/jstraub.html" nodeid="113"&gt;@Jonas Straub&lt;/A&gt; nice!!! &lt;/P&gt;</description>
      <pubDate>Thu, 26 Nov 2015 18:43:04 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97682#M11074</guid>
      <dc:creator>nsabharwal</dc:creator>
      <dc:date>2015-11-26T18:43:04Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97683#M11075</link>
      <description>&lt;P&gt;&lt;A rel="user" href="https://community.cloudera.com/users/113/jstraub.html" nodeid="113"&gt;@Jonas Straub&lt;/A&gt; - Cool stuff!!&lt;/P&gt;</description>
      <pubDate>Sat, 28 Nov 2015 00:13:18 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97683#M11075</guid>
      <dc:creator>KuldeepK</dc:creator>
      <dc:date>2015-11-28T00:13:18Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97684#M11076</link>
      <description>&lt;P&gt;Looks useful, but exactly which python binary is this intended to work with?  It fails immediately with a complaint about not being able to find the 'request' package.  I grepped the /usr/hdp tree, but cannot find a 'request.py' module.&lt;/P&gt;</description>
      <pubDate>Mon, 15 Feb 2016 22:46:34 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97684#M11076</guid>
      <dc:creator>hirschs</dc:creator>
      <dc:date>2016-02-15T22:46:34Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97685#M11077</link>
      <description>&lt;P&gt;&lt;A rel="user" href="https://community.cloudera.com/users/2747/hirschs.html" nodeid="2747"&gt;@Steven Hirsch&lt;/A&gt;  &lt;A rel="user" href="https://community.cloudera.com/users/113/jstraub.html" nodeid="113"&gt;@Jonas Straub&lt;/A&gt;&lt;/P&gt;&lt;P&gt;[root@phdns01 ~]# find / -name audit.py &lt;/P&gt;&lt;P&gt;/usr/lib64/python2.6/site-packages/audit.py&lt;/P&gt;&lt;P&gt;/usr/lib64/python2.6/site-packages/sepolgen/audit.py&lt;/P&gt;&lt;P&gt;[root@phdns01 ~]# &lt;/P&gt;&lt;P&gt;[root@phdns01 ~]# find / -name request.py &lt;/P&gt;&lt;P&gt;/usr/lib/python2.6/site-packages/pip/_vendor/requests/packages/urllib3/request.py&lt;/P&gt;&lt;P&gt;/usr/lib/python2.6/site-packages/pip/_vendor/requests/packages/urllib3/util/request.py&lt;/P&gt;&lt;P&gt;/usr/lib/python2.6/site-packages/urllib3/request.py&lt;/P&gt;&lt;P&gt;/usr/lib/python2.6/site-packages/urllib3/util/request.py&lt;/P&gt;&lt;P&gt;/usr/lib/python2.6/site-packages/rbtools/api/request.py&lt;/P&gt;&lt;P&gt;/usr/lib/python2.6/site-packages/boto/ec2/autoscale/request.py&lt;/P&gt;&lt;P&gt;/usr/lib64/python2.6/site-packages/mercurial/hgweb/request.py&lt;/P&gt;&lt;P&gt;[root@phdns01 ~]# &lt;/P&gt;</description>
      <pubDate>Mon, 15 Feb 2016 22:55:31 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97685#M11077</guid>
      <dc:creator>nsabharwal</dc:creator>
      <dc:date>2016-02-15T22:55:31Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97686#M11078</link>
      <description>&lt;P&gt;Ah - thanks.  I am far from an expert on Python and did not realize this was a non-Hadoop package.  A quick 'yum install python-requests' did the trick.&lt;/P&gt;&lt;P&gt;FYI: I'm not sure if you're implying that 'audit.py' should be present on the system, but it certainly isn't here.  I grabbed it from GitHub.&lt;/P&gt;&lt;P&gt;This is a very valuable utilitity, and would be even more so if it had the ability to crawl all configuration files and generate a master listing.  My proximate problem is how to effectively clone a running configuration to a new cluster.  I'm surprised to find so little discussion of this task.  Perhaps I'm missing something obvious, but exporting and copying configurations does not correct the myriad of machine names and IP addresses that will certainly be inappropriate in a new setting.  Ambari badly needs the ability to generate bulk &lt;STRONG&gt;delta&lt;/STRONG&gt; files (differences from defaults at install time) that can be imported "smartly" into a new cluster - e.g. spotting anything that looks like a URL or port address and prompting for manual intervention.&lt;/P&gt;</description>
      <pubDate>Mon, 15 Feb 2016 23:09:56 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97686#M11078</guid>
      <dc:creator>hirschs</dc:creator>
      <dc:date>2016-02-15T23:09:56Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97687#M11079</link>
      <description>&lt;P&gt;&lt;A rel="user" href="https://community.cloudera.com/users/2747/hirschs.html" nodeid="2747"&gt;@Steven Hirsch&lt;/A&gt;&lt;/P&gt;&lt;P&gt;The python script is using the following modules:&lt;/P&gt;&lt;PRE&gt;requests
json
getpass
logging
sys
getopt
&lt;/PRE&gt;&lt;P&gt;On most of the systems you only have to install getpass and requests.&lt;/P&gt;&lt;P&gt;Requests is not python script, its a complete package that makes it easier to submit API requests, see this page &lt;A href="http://docs.python-requests.org/en/master/"&gt;http://docs.python-requests.org/en/master/&lt;/A&gt; (You can install it with "pip install requests")&lt;/P&gt;&lt;P&gt;Let me know if you need any help with the script, I am happy to help and improve the script &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 16 Feb 2016 03:43:51 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97687#M11079</guid>
      <dc:creator>jstraub</dc:creator>
      <dc:date>2016-02-16T03:43:51Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97688#M11080</link>
      <description>&lt;P&gt;Thanks, Jonas.  As I mentioned in my last post, I'm in search of a way to generate a set of deltas that can propagate my tuning and tweaks to a new cluster.  I try to keep notes, but there have been many occasions where I was in the midst of troubleshooting and failed to write down what I did.  Exporting configuration in bulk isn't really what's needed to propagate diffs to a new cluster, since it will have machine names (and perhaps port addresses) that won't apply to the new target.  Your script looks promising for a starting point, but I'd have to flesh it out with a framework that traverses all configuration files at a minimum.  From a quick look it also appears that the change tracking on shell environment files will require a lot of manual work, since there's no attempt at differencing - the entire file is dumped. &lt;/P&gt;</description>
      <pubDate>Tue, 16 Feb 2016 04:00:11 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97688#M11080</guid>
      <dc:creator>hirschs</dc:creator>
      <dc:date>2016-02-16T04:00:11Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97689#M11081</link>
      <description>&lt;P&gt;Yeah the script is really a starting point to do ambari audits. It sounds like you need more like an export/import functionality, I have worked on something similar in the past. Or are you looking for a way to export the config deltas from two clusters an compare them?&lt;/P&gt;&lt;P&gt;How would the export of configuration deltas work? Export all adjusted configurations, but ignore configurations that have a hostname, ip or clustername automatically? Or do you just export all delta configurations, select the configuration values you want for the new cluster and import the selected values?&lt;/P&gt;</description>
      <pubDate>Tue, 16 Feb 2016 04:28:52 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97689#M11081</guid>
      <dc:creator>jstraub</dc:creator>
      <dc:date>2016-02-16T04:28:52Z</dc:date>
    </item>
    <item>
      <title>Re: Ambari Audit log</title>
      <link>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97690#M11082</link>
      <description>&lt;P&gt;The behavior I'm looking for is something like this:&lt;/P&gt;&lt;P&gt;Export all deltas for all configuration files beyond settings that are built-in defaults for Hortonworks installation.  I believe this would be defined as version numbers &amp;gt; 1 (is that correct?)&lt;/P&gt;&lt;P&gt;Import these into a newly-built cluster and be prompted for manual intervention when a delta includes a machine name, IP address or port (the latter can probably be determined by a regex match on the property name).&lt;/P&gt;&lt;P&gt;As an audit tool, the presentation of environment (shell) scripts should be in the form of unified diffs rather than a dump of the entire file at each revision.&lt;/P&gt;&lt;P&gt;Just a few ideas off the top of my head.  There's no way this process can be totally automated, but I think it's possible to get very close.&lt;/P&gt;</description>
      <pubDate>Tue, 16 Feb 2016 06:02:45 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Archives-of-Support-Questions/Ambari-Audit-log/m-p/97690#M11082</guid>
      <dc:creator>hirschs</dc:creator>
      <dc:date>2016-02-16T06:02:45Z</dc:date>
    </item>
  </channel>
</rss>

