[Dovecot] Problem with running two dovecot instances on the same server
Alexandr Sabitov
alexandr.sabitov at netregistry.com.au
Thu Jul 26 05:27:17 EEST 2012
Hello All,
Have anyone met the problem I am struggling with at the moment ?
The problem is when I run two instances of dovecot 2.1.8 which are one
for proxy-director and another one is a regular one on the same server
then I have big amount of strange entries in the /var/log/mail.err:
Jul 26 11:51:20 dovecot-test-1 dovecot: director: Error: Empty server list
Jul 26 11:51:20 dovecot-test-1 dovecot: director: Fatal: Invalid value
for director_mail_servers setting
Jul 26 11:51:20 dovecot-test-1 dovecot: master: Error:
service(director): command startup failed, throttling for 60 secs
Jul 26 11:52:20 dovecot-test-1 dovecot: director: Error: Empty server list
Jul 26 11:52:20 dovecot-test-1 dovecot: director: Fatal: Invalid value
for director_mail_servers setting
Jul 26 11:52:20 dovecot-test-1 dovecot: master: Error:
service(director): command startup failed, throttling for 60 secs
That's for sure set->director_mail_servers variable in main_preinit of
./src/director/main.c
But after dumping it it turns out that ppid of the process which failed
to use main_preinit function is a "regular" dovecot not the proxy one.
When main_preinit is used by dovecot-proxy then
set->director_mail_servers = ip address of a mail server and it is all good
but if main_preinit is used by dovecot then set->director_mail_servers
= empty and I get fatal errors in logs.
So here is a question: How come that "non-proxy" dovecot requests
director_mail_servers variable and writes fatal error in the logs if it
doesn't find it ?
Thank you very much for any assistance!
Please find my configs:
DOVECOT:
root at dovecot-test-1:~/software/dovecot/dovecot-2.1.8#
/usr/local/dovecot/sbin/dovecot -n
# 2.1.8: /usr/local/dovecot/etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.5
auth_mechanisms = plain digest-md5 cram-md5 apop
auth_verbose = yes
base_dir = /var/run/dovecot/
default_internal_user = webmail
disable_plaintext_auth = no
doveadm_password = secret
listen = 192.168.0.42
mail_fsync = always
mail_location = maildir:~/
mail_nfs_index = yes
mail_nfs_storage = yes
mail_plugins = " quota fts fts_solr"
mmap_disable = yes
passdb {
args = /usr/local/dovecot/etc/dovecot/dovecot-ldap.conf.ext
driver = ldap
}
plugin {
fts = solr
fts_solr = break-imap-search url=http://localhost:8080/solr/
quota = maildir:User quota
}
service doveadm {
inet_listener {
port = 8282
}
}
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
}
service imap {
executable = imap
}
service lmtp {
inet_listener lmtp {
port = 24
}
}
service pop3-login {
inet_listener pop3 {
port = 110
}
inet_listener pop3s {
port = 995
ssl = yes
}
}
service pop3 {
executable = pop3
}
ssl_cert = </usr/local/dovecot/ssl/dovecot.pem
ssl_key = </usr/local/dovecot/ssl/dovecot.pem
userdb {
args = /usr/local/dovecot/etc/dovecot/dovecot-ldap.conf.ext
driver = ldap
}
protocol imap {
mail_plugins = " quota fts fts_solr imap_quota"
}
DOVECOT-PROXY:
root at dovecot-test-1:~/software/dovecot/dovecot-2.1.8#
/usr/local/dovecot/sbin/dovecot -c
/usr/local/dovecot/etc/dovecot/dovecot-proxy.conf -n
# 2.1.8: /usr/local/dovecot/etc/dovecot/dovecot-proxy.conf
# OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.5
auth_verbose = yes
base_dir = /var/run/dovecot-proxy
default_internal_user = webmail
director_mail_servers = 192.168.0.42
director_servers = 192.168.0.41
disable_plaintext_auth = no
doveadm_password = secret
doveadm_proxy_port = 8282
instance_name = dovecot-proxy
listen = 192.168.0.41
login_greeting = Dovecot Proxy ready.
mail_location = maildir:~/
passdb {
args = proxy=y nopassword=y
driver = static
}
service auth-worker {
user = webmail
}
service auth {
client_limit = 2400
}
service director {
fifo_listener login/proxy-notify {
mode = 0666
}
inet_listener {
port = 8181
}
unix_listener director-userdb {
mode = 0600
}
unix_listener login/director {
mode = 0666
}
}
service doveadm {
inet_listener {
port = 8282
}
}
service imap-login {
executable = imap-login director
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
}
service imap {
service_count = 0
}
service lmtp {
inet_listener lmtp {
port = 24
}
}
service pop3-login {
executable = pop3-login director
inet_listener pop3 {
port = 110
}
inet_listener pop3s {
port = 995
ssl = yes
}
}
service pop3 {
service_count = 0
}
ssl_cert = </usr/local/dovecot/ssl/dovecot.pem
ssl_key = </usr/local/dovecot/ssl/dovecot.pem
userdb {
args = /usr/local/dovecot/etc/dovecot/dovecot-ldap.conf.ext
driver = ldap
}
protocol imap {
mail_max_userip_connections = 100
}
protocol doveadm {
auth_socket_path = director-userdb
}
--
Regards,
Alexandr Sabitov
More information about the dovecot
mailing list