High I/O wait with Dovecot POP3
Frido Otten
fridi at dds.nl
Wed Oct 22 13:15:14 UTC 2014
Hello,
In the past we've had 4 loadbalanced servers configured with courier
pop3 and dovecot handling respectively POP3 and IMAP connections. These
4 servers have a shared NFS storage on a Netapp FAS3220 controller with
SAS disks. This setup is handling 50 POP3 sessions per second without
any problems.
Now we're installing 6 new loadbalanced servers to do the same job on
the same storage, but using Dovecot to handle the POP3 sessions instead
of Courier. The IMAP sessions are already handled by those 6 new
servers, but we're encountering high iowait issues when using POP3 on
those servers.
I've applied the hints from http://wiki2.dovecot.org/NFS but this had no
improvement.
The 6 new servers are quad core Intel(R) Xeon(R) CPU X3323 @ 2.50GHz,
with 4 GB RAM connected with gigabit ethernet connection to the storage.
The 4 old servers are single core (w/o HT) P4 2,8 GHz with 1 GB RAM.
# dovecot --version
2.1.7
# /usr/sbin/dovecot -n
# 2.1.7: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-5-686-bigmem i686 Debian 6.0.10 ext4
auth_cache_negative_ttl = 0
auth_cache_size = 8 k
auth_mechanisms = plain digest-md5 cram-md5 login
base_dir = /var/run/imap/
dict {
acl = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}
disable_plaintext_auth = no
login_greeting = Dovecot MX.
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c
mail_fsync = always
mail_location = maildir:/var/spool/mail/%1u/%1.1u/%u
mail_nfs_index = yes
mail_nfs_storage = yes
maildir_stat_dirs = yes
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables body enotify
environment mailbox date ihave
mmap_disable = yes
namespace {
inbox = yes
location =
prefix =
separator = .
type = private
}
namespace {
list = children
location =
maildir:/var/spool/mail/%%1u/%%1.1u/%%u/:INDEX=/var/spool/mail/%1u/%1.1u/%u/shared/%%u
prefix = shared.%%u.
separator = .
subscriptions = no
type = shared
}
passdb {
args = /etc/dovecot/dovecot-sql-auth.conf
driver = sql
}
plugin {
acl = vfile
acl_shared_dict = proxy::acl
quota = maildir
quota_rule2 = Trash:storage=+25M
}
protocols = imap
service anvil {
client_limit = 4614
}
service auth {
client_limit = 2560
executable = /usr/lib/dovecot/auth
unix_listener auth-master {
mode = 0600
user = exim
}
user = dovecot
}
service dict {
unix_listener dict {
group = exim
mode = 0660
user = exim
}
}
service imap-login {
chroot = login
client_limit = 2048
executable = /usr/lib/dovecot/imap-login
inet_listener imap {
address = *, ::
port = 143
}
inet_listener imaps {
address = *, ::
port = 993
}
process_limit = 2048
process_min_avail = 3
service_count = 0
user = dovecot
vsz_limit = 128 M
}
service imap {
executable = /usr/lib/dovecot/imap
process_limit = 2048
}
service managesieve-login {
chroot = login
client_limit = 2048
process_limit = 2048
process_min_avail = 3
service_count = 0
user = dovecot
vsz_limit = 128 M
}
service managesieve {
process_limit = 2048
}
service pop3-login {
chroot = login
client_limit = 512
inet_listener pop3 {
address = 1.2.3.4
port = 110
}
inet_listener pop3s {
address = 1.2.3.4
port = 0
}
process_limit = 512
process_min_avail = 3
service_count = 0
user = dovecot
vsz_limit = 128 M
}
service pop3 {
process_limit = 2560
}
ssl_cert = </etc/ssl/certs/wildcardcertificate.crt
ssl_key = </etc/ssl/private/wildcardcertificate.key
syslog_facility = local7
userdb {
driver = prefetch
}
userdb {
args = /etc/dovecot/dovecot-sql-auth.conf
driver = sql
}
protocol imap {
mail_plugins = quota imap_quota acl imap_acl
}
protocol pop3 {
pop3_uidl_format = %v.%u
}
protocol lda {
auth_socket_path = /var/run/imap/auth-master
info_log_path = /var/log/dovecot-deliver.log
log_path = /var/log/dovecot-deliver.log
mail_plugins = sieve quota
postmaster_address = Mailer-Daemon at mx.domain.nl
rejection_reason = Your message with subject "%s" was automatically
rejected:%n%r
sendmail_path = /usr/sbin/exim
}
Best regards,
Frido
More information about the dovecot
mailing list