Director to keep redirecting users to the same server even it is down
Hello,
why the director always proxying IMAP connections to the same backend even if it is down?
Also the director is showing the node as up although I have stopped the dovecot service on it: doveadm director status mail server ip tag vhosts state state changed users Node1 100 up - 2 Node2 100 up - 3
on the director here is: doveconf -n # 2.3.21 (47349e2482): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.21 (f6cd4b8e) # OS: Linux 6.8.0-1018-aws x86_64 Ubuntu 24.04.1 LTS # Hostname: auth_debug = yes auth_debug_passwords = yes auth_mechanisms = plain login auth_socket_path = director-userdb auth_verbose = yes director_mail_servers = Node1 Node2 director_servers = dir1 dir2 info_log_path = /var/log/dovecot.log listen = * lmtp_proxy = yes log_path = /var/log/dovecot.log mail_gid = vmail mail_privileged_group = mail mail_uid = vmail namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { args = /etc/dovecot/dovecot-openldap-proxy.conf.ext default_fields = proxy=y driver = ldap } protocols = imap pop3 lmtp service auth { inet_listener { port = 12345 } } service director { fifo_listener login/proxy-notify { mode = 0600 user = $default_login_user } inet_listener { port = 9090 } unix_listener director-admin { mode = 0600 } unix_listener director-userdb { mode = 0600 } unix_listener login/director { mode = 0666 } } service imap-login { executable = imap-login director inet_listener imap { port = 0 } inet_listener imaps { port = 993 ssl = yes } } service ipc { unix_listener ipc { user = dovecot } } service lmtp { inet_listener lmtp { port = 24 } } service pop3-login { executable = pop3-login director inet_listener pop3 { port = 0 } inet_listener pop3s { port = 995 ssl = yes } } service submission-login { inet_listener submission { port = 587 } } ssl_cert = </etc/dovecot/ssl/fullchain.pem ssl_client_ca_dir = /etc/ssl/certs ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it protocol lmtp { auth_socket_path = director-userdb }
There is nothing in director itself that sets backends up or down, you need to use something like poolmon to do this.
Aki
On 27/11/2024 12:22 EET abdelhaq.jalboush--- via dovecot <dovecot@dovecot.org> wrote:
Hello,
why the director always proxying IMAP connections to the same backend even if it is down?
Also the director is showing the node as up although I have stopped the dovecot service on it: doveadm director status mail server ip tag vhosts state state changed users Node1 100 up - 2 Node2 100 up - 3
on the director here is: doveconf -n # 2.3.21 (47349e2482): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.21 (f6cd4b8e) # OS: Linux 6.8.0-1018-aws x86_64 Ubuntu 24.04.1 LTS # Hostname: auth_debug = yes auth_debug_passwords = yes auth_mechanisms = plain login auth_socket_path = director-userdb auth_verbose = yes director_mail_servers = Node1 Node2 director_servers = dir1 dir2 info_log_path = /var/log/dovecot.log listen = * lmtp_proxy = yes log_path = /var/log/dovecot.log mail_gid = vmail mail_privileged_group = mail mail_uid = vmail namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { args = /etc/dovecot/dovecot-openldap-proxy.conf.ext default_fields = proxy=y driver = ldap } protocols = imap pop3 lmtp service auth { inet_listener { port = 12345 } } service director { fifo_listener login/proxy-notify { mode = 0600 user = $default_login_user } inet_listener { port = 9090 } unix_listener director-admin { mode = 0600 } unix_listener director-userdb { mode = 0600 } unix_listener login/director { mode = 0666 } } service imap-login { executable = imap-login director inet_listener imap { port = 0 } inet_listener imaps { port = 993 ssl = yes } } service ipc { unix_listener ipc { user = dovecot } } service lmtp { inet_listener lmtp { port = 24 } } service pop3-login { executable = pop3-login director inet_listener pop3 { port = 0 } inet_listener pop3s { port = 995 ssl = yes } } service submission-login { inet_listener submission { port = 587 } } ssl_cert = </etc/dovecot/ssl/fullchain.pem ssl_client_ca_dir = /etc/ssl/certs ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it protocol lmtp { auth_socket_path = director-userdb }
dovecot mailing list -- dovecot@dovecot.org To unsubscribe send an email to dovecot-leave@dovecot.org
Thank you Aki, much appreciated. Can I skip the director in my config and rely on network load balancer balancer sticky session? As I know in the release the director is no more there, what is the alternative for it?
Best Regards Abdelhaq 00971526009177
On Thu, 28 Nov 2024 at 1:16 PM Aki Tuomi <aki.tuomi@open-xchange.com> wrote:
There is nothing in director itself that sets backends up or down, you need to use something like poolmon to do this.
Aki
On 27/11/2024 12:22 EET abdelhaq.jalboush--- via dovecot < dovecot@dovecot.org> wrote:
Hello,
why the director always proxying IMAP connections to the same backend even if it is down?
Also the director is showing the node as up although I have stopped the dovecot service on it: doveadm director status mail server ip tag vhosts state state changed users Node1 100 up - 2 Node2 100 up - 3
on the director here is: doveconf -n # 2.3.21 (47349e2482): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.21 (f6cd4b8e) # OS: Linux 6.8.0-1018-aws x86_64 Ubuntu 24.04.1 LTS # Hostname: auth_debug = yes auth_debug_passwords = yes auth_mechanisms = plain login auth_socket_path = director-userdb auth_verbose = yes director_mail_servers = Node1 Node2 director_servers = dir1 dir2 info_log_path = /var/log/dovecot.log listen = * lmtp_proxy = yes log_path = /var/log/dovecot.log mail_gid = vmail mail_privileged_group = mail mail_uid = vmail namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { args = /etc/dovecot/dovecot-openldap-proxy.conf.ext default_fields = proxy=y driver = ldap } protocols = imap pop3 lmtp service auth { inet_listener { port = 12345 } } service director { fifo_listener login/proxy-notify { mode = 0600 user = $default_login_user } inet_listener { port = 9090 } unix_listener director-admin { mode = 0600 } unix_listener director-userdb { mode = 0600 } unix_listener login/director { mode = 0666 } } service imap-login { executable = imap-login director inet_listener imap { port = 0 } inet_listener imaps { port = 993 ssl = yes } } service ipc { unix_listener ipc { user = dovecot } } service lmtp { inet_listener lmtp { port = 24 } } service pop3-login { executable = pop3-login director inet_listener pop3 { port = 0 } inet_listener pop3s { port = 995 ssl = yes } } service submission-login { inet_listener submission { port = 587 } } ssl_cert = </etc/dovecot/ssl/fullchain.pem ssl_client_ca_dir = /etc/ssl/certs ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it protocol lmtp { auth_socket_path = director-userdb }
dovecot mailing list -- dovecot@dovecot.org To unsubscribe send an email to dovecot-leave@dovecot.org
participants (3)
-
Abdelhaq Jalboush
-
abdelhaq.jalboush@gmail.com
-
Aki Tuomi