Welcome, if you would like to post a comment please register.
We also encourage you to explore all things Zimbra with our team and members of the community.
Seting up Zimbra for testing a possible new email environment for the company.
I got a problem on my VM which is running Zimbra .
Every 1 minute I got a cpu spike of around 70% to 80% 24hrs a day and I don't know why. Looks lika a JAVA process is responsible for this when I watch TOP output. I would like to get rid of this!
changes that did not help:
- 'Sleep time between subsequent mailbox purges' from 1 minute to 1 hour
I had to make a couple of changes before the CPU usage dropped. I am running Zimbra in a VM for a handful of email accounts so the CPU spikes were disappointing since my other VMs basically idle all day.
1) As commented on above the zmprov is a java process which taxes the CPU. This will bring down the CPU usage, however if you change the values down the road you will need to edit zmlogprocess to reflect them.
Code:
vim /opt/zimbra/libexec/zmlogprocess
#my $rawRetention = `${zimbra_home}/bin/zmprov -l gacf | egrep '^zimbraLogRawLifetime' | sed -e 's/zimbraLogRawLifetime: //'`;
my $rawRetention = "31d";
#my $summaryRetention = `${zimbra_home}/bin/zmprov -l gacf | egrep '^zimbraLogSummaryLifetime' | sed -e 's/zimbraLogSummaryLifetime: //'
my $summaryRetention = "730d";
2) zmstatuslog is a java process that prints the status into the log file. From what I understand the admin gui grabs this info from the log file to show the current service status. I don't see the point to have this run every two minutes and changed it to five minutes.
3) zmmtaconfig has a watchdog process that will run every sixty seconds and restart services if they have crashed. I haven't had the services crash so I changed the value to five minutes. If you care about uptime should a service crash you shouldn't change this. However depending on when the service crashed it could be restarted sooner than five minutes.
original
Code:
su - zimbra
zmlocalconfig -e zmmtaconfig_interval=""
changed
Code:
su - zimbra
zmlocalconfig -e zmmtaconfig_interval=300
are there any accounts having filters as **** in it if so there is a bug in zimbra whcih causese cpu spike and a filter that was causing some kind of recursion problem in the server.
i do this on VM or Physical servers. zmmtaconfig_interval is high as we dont need to check if services are failing and we need to restart.
zimbraLogRawLifetime dont need more than 7 days of logdata and more than 30 days of summry.
Thanks for your reply. Your solution got rid of the spikes. Thanks! Can you tell me more spesific what disadvantages this solution gives us? I understand that services will be checked less frequently but I want more information please
And why does it spike like this in the first place? Bug?