On Thu, Feb 23, 2012 at 8:34 AM, Willy Tarreau <[email protected]> wrote: > On Sat, Feb 04, 2012 at 03:44:45PM +0100, Patrick Mézard wrote: >> Le 04/02/12 15:01, Baptiste a écrit : >> > Hi everybody, >> > >> > Please find in attachment a patch which provides IMAP health checking. >> > >> > Note that it provides also a clean application logout :) >> > >> > it applies on HAProxy HEAD git. >> > >> > I've tested it on my courier IMAP server and it works as expected. >> > You can test it with the simple conf below: >> > listen imap >> > bind 0.0.0.0:1143 >> > mode tcp >> > option imapchk >> > server imapserver <IP>:143 check >> > >> > Your feedback are welcome. >> >> Some remarks about the documentation : >> - It would be great if Willy could pronounce on the options naming: *chk / >> *-check / *-chk > > I agree with Patrick here. We're trying to get rid of shortened names which > are too confusing even if shorter to type. Baptiste, could you please rename > it "imap-check" so that it follows the new naming convention ? > > (...) >> Sidenote: it would be great to unify all the health checks descriptions. All >> of them describe the check with more or less details, then sometimes add >> consideration about logging and whatnots. > > Yes, I think we should have a full section dedicated to health checks and > tracking in the doc. This would also reduce cross-references. Anyone volunteer > for contributing this ? We need to address the following points in the check > section : > > - health checks : introduction / why performing health checks. Some of > this is already present in other sections. > - describe the 4 (?) server states : UP, DOWN, NOLB, MAINT and their > transistions > - describe the slowstart mechanism > - describe the disable-on-404 mechanism which introduces the NOLB state > - describe the server tracking mechanism and possibilities > - explain how timeout connect and timeout check influence the checks > - describe the impacts of the global "spread-checks" setting > - explain how a health check uses "source" and "port" parameters to > establish a connection > - reminder that checks are per-process > - enumerate all the currently supported health checks methods with their > parameters > > Right now, I *think* that all the text exists at other places in the doc > and has to be moved. There will obviously have to be some glue to tie all > this together, and to place reference to this section into places where > the text ws stolen (at least to give pointers for full descriptions of > some options). What is really missing right now are examples for all > concepts and methods, but with a dedicated section it would be much more > suited to provide them. > > If someone is interested in doing this work, it would be really great and > I would be happy to help with it. > > Thanks, > Willy >
Hi Willy, As discussed yesterday evening, I'll take care of the following: 1. rewrite health check documentation in HAProxy 2. patch haproxy to rename all health checks to <protocol>-check (old name will be kept for backward compatibility) 3. patch haproxy to allow a health check to send a logout string (usefull for POP and IMAP at least) 4. patch haproxy to add a POP3 health check 5. patch haproxy to add a IMAP4 health check cheers

