Replication

ivan at jurisic.org ivan at jurisic.org
Mon Sep 5 14:34:15 UTC 2022



Make file 90-replication.com on primary and secudary mail server laik in 
example (change ip - or put hostname and password)

# Create 90-replication.conf

nano /etc/dovecot/conf.d/90-replication.conf

plugin {
   mail_replica = tcp:ip:12345
}

service replicator {
   process_min_avail = 1

   unix_listener replicator-doveadm {
     mode = 0600
     user = vmail
   }
}

service aggregator {
   fifo_listener replication-notify-fifo {
     user = vmail
     group = vmail
     mode = 0666
   }
   unix_listener replication-notify {
     user = vmail
     group = vmail
     mode = 0666
   }
}

service doveadm {
   inet_listener {
     port = 12345
     ssl = no
   }
}

doveadm_password = YourPassword

Dana 05.09.2022 12:15, Silvio Siefke je napisao(la):

> Hello,
> 
> I try the replication of two Dovecot servers, but some errors always
> appear. Maybe someone here has an idea what's going wrong.
> As an MTA I use OpenSMTPD.
> 
> Thank You
> Silvio
> 
> dovecot -n on MX 1
> # 2.3.13 (89f716dc2): /etc/dovecot/dovecot.conf
> # Pigeonhole version 0.5.13 (cdd19fe3)
> # OS: Linux 5.10.0-16-amd64 x86_64 Debian 11.4
> # Hostname: asia.sisi-systems.ovh
> auth_mechanisms = plain login
> doveadm_password = # hidden, use -P to show it
> doveadm_port = 20000
> mail_gid = vmail
> mail_location = maildir:~/Maildir
> mail_plugins = " notify replication"
> mail_privileged_group = vmail
> mail_uid = vmail
> 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 index ihave duplicate mime foreverypart 
> extracttext imapsieve vnd.dovecot.imapsieve
> namespace inbox {
> inbox = yes
> location =
> mailbox Drafts {
> auto = subscribe
> special_use = \Drafts
> }
> mailbox Sent {
> auto = subscribe
> special_use = \Sent
> }
> mailbox Spam {
> auto = subscribe
> special_use = \Junk
> }
> mailbox Trash {
> auto = subscribe
> special_use = \Trash
> }
> prefix =
> }
> passdb {
> args = scheme=SHA512-CRYPT username_format=%u /etc/dovecot/users
> driver = passwd-file
> }
> plugin {
> imapsieve_mailbox1_before = 
> file:/var/vmail/sieve/global/learn-spam.sieve
> imapsieve_mailbox1_causes = COPY
> imapsieve_mailbox1_name = Spam
> imapsieve_mailbox2_before = 
> file:/var/vmail/sieve/global/learn-ham.sieve
> imapsieve_mailbox2_causes = COPY
> imapsieve_mailbox2_from = Spam
> imapsieve_mailbox2_name = *
> mail_replica = tcp:192.168.1.112
> quota = maildir:User quota
> quota_exceeded_message = Benutzer %u hat das Speichervolumen 
> überschritten. / User %u has exhausted allowed storage space.
> replication_sync_timeout = 2
> sieve = 
> file:/var/vmail/sieve/%d/%n/scripts;active=/var/vmail/sieve/%d/%n/active-script.sieve
> sieve_before = /var/vmail/sieve/global/spam-global.sieve
> sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.environment
> sieve_pipe_bin_dir = /usr/lib/dovecot/sieve-pipe
> sieve_plugins = sieve_imapsieve sieve_extprograms
> }
> protocols = lmtp imap pop3 sieve
> service aggregator {
> fifo_listener replication-notify-fifo {
> user = vmail
> }
> unix_listener replication-notify {
> user = vmail
> }
> }
> service doveadm {
> inet_listener {
> port = 20000
> }
> }
> service imap-login {
> inet_listener imap {
> port = 143
> }
> }
> service lmtp {
> unix_listener lmtp {
> group = vmail
> user = vmail
> }
> }
> service managesieve-login {
> inet_listener sieve {
> port = 4190
> }
> }
> service pop3-login {
> inet_listener pop3 {
> port = 110
> }
> inet_listener pop3s {
> port = 995
> ssl = yes
> }
> }
> service replicator {
> process_min_avail = 1
> unix_listener replicator-doveadm {
> mode = 0600
> user = vmail
> }
> }
> ssl = required
> ssl_cert = </etc/lego/certificates/imap.sisi-systems.ovh.crt
> ssl_cipher_list = 
> ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
> ssl_client_ca_dir = /etc/ssl/certs
> ssl_dh = # hidden, use -P to show it
> ssl_key = # hidden, use -P to show it
> ssl_min_protocol = TLSv1.2
> userdb {
> args = username_format=%u /etc/dovecot/users
> driver = passwd-file
> override_fields = uid=vmail gid=vmail home=/home/vmail/%d/%n
> }
> protocol imap {
> imap_idle_notify_interval = 29 mins
> mail_max_userip_connections = 20
> mail_plugins = " notify replication quota imap_quota imap_sieve"
> }
> protocol lmtp {
> mail_plugins = " notify replication sieve notify push_notification"
> postmaster_address = network at sisi-systems.ovh
> }
> protocol pop3 {
> mail_max_userip_connections = 10
> mail_plugins = " notify replication"
> }
> 
> dovecot -n on MX 2
> # 2.3.13 (89f716dc2): /etc/dovecot/dovecot.conf
> # Pigeonhole version 0.5.13 (cdd19fe3)
> # OS: Linux 5.10.0-15-amd64 x86_64 Debian 11.4
> # Hostname: bulgaria.sisi-systems.ovh
> auth_mechanisms = plain login
> doveadm_password = # hidden, use -P to show it
> doveadm_port = 20000
> mail_gid = vmail
> mail_location = maildir:~/Maildir
> mail_plugins = " notify replication"
> mail_privileged_group = vmail
> mail_uid = vmail
> 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 index ihave duplicate mime foreverypart 
> extracttext imapsieve vnd.dovecot.imapsieve
> namespace inbox {
> inbox = yes
> location =
> mailbox Drafts {
> auto = subscribe
> special_use = \Drafts
> }
> mailbox Sent {
> auto = subscribe
> special_use = \Sent
> }
> mailbox Spam {
> auto = subscribe
> special_use = \Junk
> }
> mailbox Trash {
> auto = subscribe
> special_use = \Trash
> }
> prefix =
> }
> passdb {
> args = scheme=SHA512-CRYPT username_format=%u /etc/dovecot/users
> driver = passwd-file
> }
> plugin {
> imapsieve_mailbox1_before = 
> file:/var/vmail/sieve/global/learn-spam.sieve
> imapsieve_mailbox1_causes = COPY
> imapsieve_mailbox1_name = Spam
> imapsieve_mailbox2_before = 
> file:/var/vmail/sieve/global/learn-ham.sieve
> imapsieve_mailbox2_causes = COPY
> imapsieve_mailbox2_from = Spam
> imapsieve_mailbox2_name = *
> mail_replica = tcp:192.168.1.102
> quota = maildir:User quota
> quota_exceeded_message = Benutzer %u hat das Speichervolumen 
> überschritten. / User %u has exhausted allowed storage space.
> replication_sync_timeout = 2
> sieve = 
> file:/var/vmail/sieve/%d/%n/scripts;active=/var/vmail/sieve/%d/%n/active-script.sieve
> sieve_before = /var/vmail/sieve/global/spam-global.sieve
> sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.environment
> sieve_pipe_bin_dir = /usr/lib/dovecot/sieve-pipe
> sieve_plugins = sieve_imapsieve sieve_extprograms
> }
> protocols = lmtp imap pop3 sieve
> service aggregator {
> fifo_listener replication-notify-fifo {
> user = vmail
> }
> unix_listener replication-notify {
> user = vmail
> }
> }
> service doveadm {
> inet_listener {
> port = 20000
> }
> }
> service imap-login {
> inet_listener imap {
> port = 143
> }
> }
> service lmtp {
> unix_listener lmtp {
> group = vmail
> user = vmail
> }
> }
> service managesieve-login {
> inet_listener sieve {
> port = 4190
> }
> }
> service pop3-login {
> inet_listener pop3 {
> port = 110
> }
> inet_listener pop3s {
> port = 995
> ssl = yes
> }
> }
> service replicator {
> process_min_avail = 1
> unix_listener replicator-doveadm {
> mode = 0600
> user = vmail
> }
> }
> ssl = required
> ssl_cert = </etc/lego/certificates/imap.sisi-systems.ovh.crt
> ssl_cipher_list = 
> ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
> ssl_client_ca_dir = /etc/ssl/certs
> ssl_dh = # hidden, use -P to show it
> ssl_key = # hidden, use -P to show it
> ssl_min_protocol = TLSv1.2
> userdb {
> args = username_format=%u /etc/dovecot/users
> driver = passwd-file
> override_fields = uid=vmail gid=vmail home=/home/vmail/%d/%n
> }
> protocol imap {
> imap_idle_notify_interval = 29 mins
> mail_max_userip_connections = 20
> mail_plugins = " notify replication quota imap_quota imap_sieve"
> }
> protocol lmtp {
> mail_plugins = " notify replication sieve notify push_notification"
> postmaster_address = network at sisi-systems.ovh
> }
> protocol pop3 {
> mail_max_userip_connections = 10
> mail_plugins = " notify replication"
> }
> 
> Log MX 1 (asia)
> Sep  5 18:02:12 asia dovecot: replicator: Fatal: master: 
> service(replicator): child 706077 killed with signal 6 (core dumps 
> disabled - https://dovecot.org/bugreport.html#coredumps)
> Sep  5 18:02:18 asia dovecot: replicator: Panic: data stack: Out of 
> memory when allocating 268435496 bytes
> Sep  5 18:02:18 asia dovecot: replicator: Error: Raw backtrace: 
> /usr/lib/dovecot/libdovecot.so.0(backtrace_append+0x42) 
> [0x7f27434e84e2] -> 
> /usr/lib/dovecot/libdovecot.so.0(backtrace_get+0x1e) [0x7f27434e85fe] 
> -> /usr/lib/dovecot/libdovecot.so.0(+0xfc49b) [0x7f27434f449b] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0xfc531) [0x7f27434f4531] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0x53aee) [0x7f274344baee] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0x53435) [0x7f274344b435] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0xf5d88) [0x7f27434edd88] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0x11b818) [0x7f2743513818] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0xf25f2) [0x7f27434ea5f2] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0xf26a9) [0x7f27434ea6a9] -> 
> /usr/lib/dovecot/libdovecot.so.0(buffer_write+0x1e) [0x7f27434ea8be] -> 
> dovecot/replicator(replicator_queue_push+0x14a) [0x5633c8c4eb1a] -> 
> dovecot/replicator(+0x5296) [0x5633c8c4e296] -> 
> dovecot/replicator(+0x493e) [0x5633c8c4d93e] -> 
> dovecot/replicator(+0x4b1c) [0x5633c8c4db1c] -> 
> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x69) [0x7f2743509f59] 
> -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x132) 
> [0x7f274350b592] -> 
> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x50) 
> [0x7f274350a000] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x40) 
> [0x7f274350a1c0] -> 
> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x13) 
> [0x7f27434804e3] -> dovecot/replicator(main+0x18d) [0x5633c8c4ccad] -> 
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea) 
> [0x7f2743254d0a] -> dovecot/replicator(_start+0x2a) [0x5633c8c4cd6a]
> Sep  5 18:02:18 asia dovecot: replicator: Fatal: master: 
> service(replicator): child 706082 killed with signal 6 (core dumps 
> disabled - https://dovecot.org/bugreport.html#coredumps)
> 
> Log MX 2 (bulgaria)
> Sep  5 13:02:05 bulgaria dovecot: replicator: Panic: data stack: Out of 
> memory when allocating 268435496 bytes
> Sep  5 13:02:05 bulgaria dovecot: replicator: Error: Raw backtrace: 
> /usr/lib/dovecot/libdovecot.so.0(backtrace_append+0x42) 
> [0x7f813fa394e2] -> 
> /usr/lib/dovecot/libdovecot.so.0(backtrace_get+0x1e) [0x7f813fa395fe] 
> -> /usr/lib/dovecot/libdovecot.so.0(+0xfc49b) [0x7f813fa4549b] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0xfc531) [0x7f813fa45531] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0x53aee) [0x7f813f99caee] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0x53435) [0x7f813f99c435] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0xf5d88) [0x7f813fa3ed88] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0x11b818) [0x7f813fa64818] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0xf25f2) [0x7f813fa3b5f2] -> 
> /usr/lib/dovecot/libdovecot.so.0(+0xf26a9) [0x7f813fa3b6a9] -> 
> /usr/lib/dovecot/libdovecot.so.0(buffer_write+0x1e) [0x7f813fa3b8be] -> 
> dovecot/replicator(replicator_queue_push+0x14a) [0x5646d37c5b1a] -> 
> dovecot/replicator(+0x5296) [0x5646d37c5296] -> 
> dovecot/replicator(+0x493e) [0x5646d37c493e] -> 
> dovecot/replicator(+0x4b1c) [0x5646d37c4b1c] -> 
> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x69) [0x7f813fa5af59] 
> -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x132) 
> [0x7f813fa5c592] -> 
> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x50) 
> [0x7f813fa5b000] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x40) 
> [0x7f813fa5b1c0] -> 
> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x13) 
> [0x7f813f9d14e3] -> dovecot/replicator(main+0x18d) [0x5646d37c3cad] -> 
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea) 
> [0x7f813f7a5d0a] -> dovecot/replicator(_start+0x2a) [0x5646d37c3d6a]
> Sep  5 13:02:05 bulgaria dovecot: replicator: Fatal: master: 
> service(replicator): child 144867 killed with signal 6 (core dumps 
> disabled - https://dovecot.org/bugreport.html#coredumps)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://dovecot.org/pipermail/dovecot/attachments/20220905/63fc4404/attachment-0001.htm>


More information about the dovecot mailing list