Problem
High IO waits on a mail server and suspects the dovecot-postlogin.py
process as the cause.
Analysis
The program mentioned above does nothing more than set a few environment variables and determine the groups of a user. So here only IO-Load could be generated by the LDAP server during the group query. But then the slapd process should also appear under CPU usage.
It is much more likely that with intensive use by many users (the mail directory contains approx. 600GB of emails!) the accesses to the disks simply lead to a high load.
Solution
Observance of the performance guide:
https://docs.software-univention.de/performance-guide-4.2.html#dovecot::highperformance
- Make more storage available
- Optimize underlying storage on ESXi (ZFS, SSD, etc)
- Optimize file system (check ext4 optimizations (possibly data=writeback))
- Possibly use XFS file system
- Optimize Dovecot
Switch to a different mailbox format (see https://www.heinlein-support.de/sites/default/files/Dovecot-mdbox-Mailperformance_0.pdf)
Dovecot can save the mail directories in compressed form. (See Wiki has been closed).