(note to moderator: i sent this before from the wrong address, hope it doesn't get duplicated)<br>
<br>
Hi,<br>
<br>
we have a few SAP systems on RHEV (so virtualized on KVM) with >= 74<br>
CPUs and >= 400G RAM.<br>
When the system is busy with large SAP jobs, it goes onto its knees with<br>
cpu %system up to 80%, thus making the SAP jobs run twice as long. As<br>
soon as you stop auditd everything returns to normal...<br>
<br>
Facts:<br>
RHEL6 instances on RHEL7 hosts.<br>
the rule set (see below) runs fine on any other system with less cpus<br>
(<64, maybe this is the cut off?). We have smaller systems with this<br>
rule set that rotate the audit file nearly every minute without any<br>
noticable performance hit, these SAP systems rotate once every<br>
20-24hours....<br>
<br>
Anyone has an idea?<br>
<br>
Here's an excerpt from "perf top":<br>
with auditd running:<br>
<br>
Samples: 28M of event 'cpu-clock', Event count (approx.): 236747914918<br>
Overhead Shared Object Symbol<br>
23.13% [kernel] [k] get_task_cred<br>
10.05% [kernel] [k] audit_filter_rules<br>
4.21% [kernel] [k] _spin_unlock_irqrestore<br>
3.30% <a href="http://libdb2e.so">libdb2e.so</a>.1 [.] sqlbfix<br>
2.92% [kernel] [k] finish_task_switch<br>
1.69% disp+work [.] rrol_in<br>
1.69% disp+work [.] rrol_out<br>
0.98% [kernel] [k] run_timer_softirq<br>
0.96% [kernel] [k] rcu_process_gp_end<br>
<br>
<br>
auditd stopped:<br>
<br>
Samples: 3M of event 'cpu-clock', Event count (approx.): 526535382557<br>
Overhead Shared Object Symbol<br>
2.41% disp+work [.] memcmpU16<br>
2.32% disp+work [.] MmxMalloc2<br>
2.25% disp+work [.] ab_Rudi<br>
2.07% disp+work [.] rrol_out<br>
1.98% disp+work [.] rrol_in<br>
1.95% disp+work [.] ab_CompByCmpCntx<br>
1.88% <a href="http://libdb2e.so">libdb2e.so</a>.1 [.] sqlbfix<br>
1.73% disp+work [.] MmxFree2<br>
1.62% [kernel] [k] run_timer_softirq<br>
1.56% [kernel] [k] __do_softirq<br>
1.39% disp+work [.] ab_InitRcDecompress<br>
<br>
These are the audit rules:<br>
auditctl -l<br>
-a always,exit -S all -F path=/etc/environment -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/login.defs -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/rsyslog.conf -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/ssh/sshd_config -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/cron.allow -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/cron.deny -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F dir=/etc/cron.d -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F dir=/etc/cron.daily -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F dir=/etc/cron.hourly -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F dir=/etc/cron.monthly -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F dir=/etc/cron.weekly -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/aliases -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F dir=/etc/alternatives -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/at.allow -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/at.deny -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/audisp/plugins.d/syslog.conf -F perm=wa -F auid>=400 -F key=CRIT_AUDIT<br>
-a always,exit -S all -F path=/etc/audisp/audispd.conf -F perm=wa -F auid>=400 -F key=CRIT_AUDIT<br>
-a always,exit -S all -F path=/etc/audit/auditd.conf -F perm=wa -F auid>=400 -F key=CRIT_AUDIT<br>
-a always,exit -S all -F path=/etc/bashrc -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/crontab -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/shells -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F dir=/etc/default -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/depmod.conf -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F dir=/etc/depmod.d -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/exports -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/group -F perm=wa -F auid>=400 -F key=USER_MGMT<br>
-a always,exit -S all -F path=/etc/passwd -F perm=wa -F auid>=400 -F key=USER_MGMT<br>
-a always,exit -S all -F path=/etc/shadow -F perm=wa -F auid>=400 -F key=USER_MGMT<br>
-a always,exit -S all -F path=/etc/inittab -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F dir=/bin -F perm=wa -F auid>=400 -F key=CRIT_PROG<br>
-a always,exit -S all -F dir=/sbin -F perm=wa -F auid>=400 -F key=CRIT_PROG<br>
-a always,exit -S all -F dir=/usr/bin -F perm=wa -F auid>=400 -F key=CRIT_PROG<br>
-a always,exit -S all -F dir=/usr/sbin -F perm=wa -F auid>=400 -F key=CRIT_PROG<br>
-a always,exit -S all -F dir=/etc/init.d -F perm=wa -F auid>=400 -F key=CRIT_PROG<br>
-a always,exit -S all -F path=/etc/nsswitch.conf -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/ldap.conf -F perm=wa -F auid>=400 -F key=USER_MGMT<br>
-a always,exit -S all -F path=/etc/sssd/sssd.conf -F perm=wa -F auid>=400 -F key=USER_MGMT<br>
-a always,exit -S all -F dir=/var/spool/cron -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/var/spool/atjobs -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/usr/bin/sudo -F perm=x -F auid>=400 -F key=USER_MGMT<br>
-a always,exit -S all -F path=/etc/sudoers -F perm=wa -F auid>=400 -F key=USER_MGMT<br>
-a always,exit -S all -F dir=/etc/sudoers.d -F perm=wa -F auid>=400 -F key=USER_MGMT<br>
-a always,exit -F arch=b64 -S execve -F auid>=500 -F auid<10000 -F key=USER_EXEC<br>
-a always,exit -F arch=b64 -S execve -F auid>=5000000 -F auid!=-1 -F key=USER_EXEC<br>
-a always,exit -S all -F dir=/etc/pam.d -F perm=wa -F auid>=400 -F key=CRIT_PAM<br>
-a always,exit -S all -F dir=/etc/security -F perm=wa -F auid>=400 -F key=CRIT_CONF<br>
-a always,exit -S all -F path=/etc/libaudit.conf -F perm=wa -F auid>=400 -F key=CRIT_AUDIT<br>
-a always,exit -S all -F path=/etc/init.d/auditd -F perm=wa -F auid>=400 -F key=CRIT_AUDIT<br>
-a always,exit -S all -F dir=/appdata/daten/S3_audit -F perm=rwa -F auid>=400 -F auid<10000 -F auid!=-1 -F key=S3DATA<br>
-a always,exit -S all -F dir=/appdata/daten/S3_audit -F perm=rwa -F auid>=5000000 -F auid!=-1 -F key=S3DATA<br>
<br>
<br>
Klaus<br>
-- <br>
Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.