auth client limit versus service count of mail processes
Christian Balzer
chibi at gol.com
Tue Nov 29 13:07:28 UTC 2016
On Tue, 29 Nov 2016 14:30:37 +0200 Timo Sirainen wrote:
> On 29 Nov 2016, at 2.57, Christian Balzer <chibi at gol.com> wrote:
> >
> > service imap {
> > # Most of the memory goes to mmap()ing files. You may need to increase this
> > # limit if you have huge mailboxes.
> > #vsz_limit = $default_vsz_limit
> > vsz_limit = 512M
> >
> > # Max. number of IMAP processes (connections)
> > #process_limit = 1024
> > process_limit = 524288
> > }
> ..
> > But adding a "service_count = 100" line (any value larger than 1 really) to
> > the imap section we get the dreaded:
> > ---
> > Nov 28 17:05:40 mbx09 dovecot: config: Warning: service auth { client_limit=16384} is lower than required under max. load (528384)
> > ---
> >
> > 1. Where's the difference in Dovecot's logic between a mail service that
> > has a service count of 1 versus one with >1?
>
> With service_count=1 it disconnects from auth immediately after logging in. With service_count>0 the auth connection is kept open for the entire existence of the imap process. This is mainly because after dropping privileges it wouldn't be able to connect to the auth-master socket again. In theory if the socket permissions were changed, it could keep reconnecting to auth-master and not keep connections open all the time.
>
Alright then, that's what I was suspecting.
Too bad, but totally understandable.
> > 2. Any way to get the process recycling for IMAP going w/o setting the fd
> > limit to a ridiculous amount?
>
>
> How about shrinking the imap process_limit? I highly doubt you can actually run 500k imap processes per server and have it still working. The largest I've ever heard people running has been 50k processes per server.
>
Well, that's the limit these servers could theoretically take IOPS wise,
other things like memory might curtail that earlier.
Also this is the fail-over level of this cluster pair, a single node
normally would only have to handle half of this.
Incidentally these 2 servers are currently running about 45k IMAP
processes each and the most busy process is (unsurprisingly) dovecot, the
master.
But that's only using about 20% of one core and the system is currently
operating with the on-demand CPU governor, so that core is only at half
speed typically.
It's a pure SSD system, I/O utilization tends to peak around 3% and
averages less than 1%.
Memory is still half "free" (page cache) and an upgrade of that is planned.
So from where I'm standing 100k per server (200k in fail-over) at the least
should be achievable easily.
Guess cranking up the fd limit it is then, still got 10 million spares
after all.
Thanks for the feedback,
Christian
--
Christian Balzer Network/Systems Engineer
chibi at gol.com Global OnLine Japan/Rakuten Communications
http://www.gol.com/
More information about the dovecot
mailing list