[Dovecot] Is Dovecot Director stable for production??

Aliet Santiesteban Sifontes alietsantiesteban at gmail.com
Sun Nov 14 02:30:25 EET 2010


>We tough the point of have a clustered file system would be to be able to
write with many >serves at same time, inscreassing  high availibialyti,
cause any node would be able to >crash or anything like it.

Yes, and also high performance since you can have many nodes doing paralell
tasks, in this case email processing

>Migh thing about let one node just to write emails when it comes and other
just to use >imap and pop.. might do some help.

Not exactly, this will not fix your issue with the cluster filesystem, since
in this case node writer and node pop imaps will share the same  cluster
filesystem, so it might ocurr that the smtp node writes to the same
directory-file(or same file at your filesystem level) that is accessing the
pop imap servers and this is what you must avoid in clustered filesystems.

to explain better you can keep using your cluster deployment you just must
add after the LVS the Dovecot Director:

Cient <--> Linux IPVS <--> Dovecot Directors Servers <--> Dovecot writing in
OCFS2

This not means that you will loose high availability, since you can use a
script to check the health of your ocfs2 backend, and if one fails you just
removed from director pool, in my case I'm testing this

Piranha LVS for load balancing connections in rhel

Directors(two nodes)
Running Dovecot lmtp, pop,imap, managesieve

GFS2 Cluster Backend- Running Dovecot( three nodes)
 - tcp lmtp for mail delivery
 - imap,pop, sieve etc

All our incoming emails after leaving our filter gateways goes to our postix
deliveries servers wich talks to a lmtp service configured in the lvs, wich
selects the best director to serve the lmtp request, the director makes a
persistency of the user mailbox with one node our use an existing one and do
the delivery of lmtp in the backend server, if one backend fails a script
removes from director pools and the director use another node as final
destination, similar ocurr with imap pop etc.
You can also do some tunning of your filesystem, use noatime, nodiratime etc
at mount, check first for supported options in your filesystem.

best regards

2010/11/13 Henrique Fernandes <sf.rique at gmail.com>

> We are using
>
> Cient <--> Linux IPVS <--> Dovecot writing in OCFS2
>
> When we were testing the OCFS2 with did much beter job than it is doins
> right now. We not sure yet if it is the OCFS2 or other thing, still trying
> to figure out, that is why i asked if Robert is having any issues.
>
> We tough the point of have a clustered file system would be to be able to
> write with many serves at same time, inscreassing  high availibialyti, cause
> any node would be able to crash or anything like it.
>
> Migh thing about let one node just to write emails when it comes and other
> just to use imap and pop.. might do some help.
>
> Thanks!
>
> Any problem configuring dovecot besides diretor i would be glad to help
>
>
>
> []'sf.rique
>
>
> On Sat, Nov 13, 2010 at 9:50 PM, Aliet Santiesteban Sifontes <
> alietsantiesteban at gmail.com> wrote:
>
>> >Aliet, have you thought about is is better to use ipvs or dovecot
>> diretord
>> to do de job ?  I >mean does anyone know ? if it is let me know so i can
>> configure also here.
>>
>> The problem with clustered filesystems is locking and cache, I have not
>> worked with OCFS2 I believe they use DLM as GFS, but in the case of GFS1
>> and
>> GFS2 you must try to keep user persistency with one node, that's why you
>> need dovecot director, linux lvs can do persistency but with connections
>> and
>> client ip source not with user mailboxes, that's the job of dovecot
>> director
>> I guess, so you must:
>>
>> Cient <--> Linux IPVS <--> Dovecot directors Servers <--> Backend Email
>> Cluster
>>
>> IPVS for ip persistency and load balance and Dovecot Director for mailbox
>> node persistency and also load balance, this should in theory improve your
>> cluster filesystem performance, since one node will access always the same
>> area of your cluster filesystem, if you have many different nodes
>> accessingthe same directory in a cluster filesystem, I mean doing
>>
>> read, write, delete
>> etc operations of many small files this will terrible decrease your io
>> performance because of dlm, imagine a mail server where this happens in
>> ratios of thousands maybe millions of times with many small files, then
>> you
>> cluster filesystem will eventually halt...
>>
>> best regards
>>
>> 2010/11/13 Henrique Fernandes <sf.rique at gmail.com>
>>
>> > Robert, does't you have problens with performance  ? What mail storage
>> do
>> > you use, maildir mbox or other one? do you use any particular config to
>> > seeting up your OCFS2 cluster?
>> >
>> > I am using in prodution  ldiretord and heartbeat with balancing 2
>> servers
>> > with dovecot 2.07 and have another server in the cluster for maillist.
>> >
>> > But i am having lots of problens with IO wait.  I am in really troubel
>> > trying to figure out how to manage that. I am not sure if is ocfs2 or my
>> > swicth or the storage it self. We still trying to figure out this. Are
>> you
>> > with any problem with IO in your cluster ?? thanks
>> >
>> >
>> > Aliet, have you thought about is is better to use ipvs or dovecot
>> diretord
>> > to do de job ?  I mean does anyone know ? if it is let me know so i can
>> > configure also here.
>> >
>> > Thanks
>> >
>> > And i am sorry not help!
>> >
>> >
>> > []'sf.rique
>> >
>> >
>> > On Sat, Nov 13, 2010 at 8:50 PM, Aliet Santiesteban Sifontes <
>> > alietsantiesteban at gmail.com> wrote:
>> >
>> >> Ok, I answer to my self what I did:
>> >>
>> >> In /etc/dovecot/dovecot.conf
>> >>
>> >> protocols = imap pop3 lmtp sieve
>> >>
>> >> In /etc/dovecot/conf.d/10-auth.con
>> >>
>> >> disable_plaintext_auth = no
>> >>
>> >> Removed comment to
>> >> !include auth-static.conf.ext
>> >>
>> >> In /etc/dovecot/conf.d/auth-static.conf.ext
>> >>
>> >> passdb {
>> >>  driver = static
>> >>  args = proxy=y nopassword=y
>> >> }
>> >>
>> >> In /etc/dovecot/conf.d/10-master.conf to fix perms
>> >>
>> >> service auth {
>> >> ...
>> >>    mode = 0600
>> >>    user = dovecot
>> >>
>> >> ...
>> >>
>> >> In /etc/dovecot/conf.d/20-lmtp.conf
>> >>
>> >> lmtp_proxy = yes
>> >>
>> >> In /etc/dovecot/conf.d/10-director.conf
>> >>
>> >> director_servers = 172.29.9.25 172.29.9.26
>> >>
>> >> director_mail_servers = 172.29.9.10 172.29.9.11
>> >>
>> >> director_user_expire = 15 min
>> >>
>> >> service director {
>> >>  unix_listener login/director {
>> >>    mode = 0666
>> >>  }
>> >>  fifo_listener login/proxy-notify {
>> >>    mode = 0666
>> >>  }
>> >>  unix_listener director-userdb {
>> >>    mode = 0600
>> >>  }
>> >>  inet_listener {
>> >>    port = 4000
>> >>  }
>> >> }
>> >>
>> >> service imap-login {
>> >>  executable = imap-login director
>> >> }
>> >> service pop3-login {
>> >>  executable = pop3-login director
>> >> }
>> >>
>> >> # Enable director for LMTP proxying:
>> >> protocol lmtp {
>> >>  auth_socket_path = director-userdb
>> >>  passdb {
>> >>    driver = static
>> >>    args = proxy=y nopassword=y port=24
>> >>  }
>> >> }
>> >>
>> >>
>> >> Both backend configured and working using ldap, with this director
>> config
>> >> is
>> >> working but I still have a problem...
>> >> if I run command
>> >>
>> >> doveadm director map I get
>> >>
>> >> user                                              mail server ip expire
>> >> time
>> >> <unknown>                                         172.29.9.11
>> >>  2010-11-13
>> >> 17:43:31
>> >>
>> >> lmtp, imap and pop director working but in the list the user appears as
>> >> unknown, how tofix this??
>> >> any ideas??
>> >>
>> >> 2010/11/13 Aliet Santiesteban Sifontes <alietsantiesteban at gmail.com>
>> >>
>> >> > Today I will try Dovecot Director for a setup using a Cluster Backend
>> >> with
>> >> > GFS2 on rhel5, my question is if is Director stable for use in
>> >> production
>> >> > for large sites, I know is mainly designed for NFS but I believe it
>> will
>> >> do
>> >> > the job also for a cluster filesystem like GFS2 and should solve the
>> >> mail
>> >> > persistence problem with a node and locking issues.
>> >> > I plan to add a layer behind a load balancer to do the stuff, I will
>> >> > appreciate if you guys can point me to best practices in configuring
>> the
>> >> > director, or how the thing works since is new for me, I have seen the
>> >> > example conf but I don't have clarity in some of the concepts and the
>> >> wiki
>> >> > is empty.
>> >> > I use 2.0.6, thank's for a great job with dovecot.
>> >> > best regards, Aliet
>> >> >
>> >>
>> >
>> >
>>
>
>


More information about the dovecot mailing list