Hi,

2015-11-29 10:30 GMT+01:00 Aleksandar Lazic <[email protected]>:

> Dear Olivier
>
> Am 27-11-2015 17:18, schrieb Olivier:
>
>> Hello everyone !
>>
>> I'm a huge fan of HAProxy. In my mind, this is a great toolbox. Like all
>> toolbox, to use it at 100%, you need good examples.
>> HAProxy blog is a great start. There are some code snippets in
>> documentation too. But a long time ago (in a galaxy not so far away),
>> there was a dedicated guide on this matter, that has been forgotten :
>> The architecture guide. Yes, here:
>> http://www.haproxy.org/download/1.3/doc/architecture.txt
>>
>> It gives many examples that are great to start with, but :
>> - it was written 10 years ago !
>> - absolutely not up to date (regarding keep-alive for example)
>> - real word has changed since
>> - it is not compatible with HTML doc
>>
>
> Full ack.
>
> With 1.6 now out, it is now time to rewrite this guide from scratch. The
>> first features I could think of are:
>> - having general details on how a good config should be organized (I was
>> personnaly confused by backend, frontend, listen, bind ...)
>> - examples compatible with latest version, with workarounds if not
>> backward compatible)
>> - keep good ol' txt format, but make it HTML compatible, so that tools
>> like haproxy-dconv can make it readable (and nice)
>> - avoid paraphrasing the official doc. We really want to focus on real
>> world examples that can be applied immediately and easily, and point to
>> the documentation on keywords.
>>
>> I volunteer to provide a generic plan, and I'm sure many people around
>> will be glad to provide some really good examples. We all have different
>> experiences of HAProxy and different use, so we really want to show that
>> many things are possible (and sometimes, there are different ways to
>> solve one problem too. It can be great to show this with pros and cons
>> for each !).
>>
>> To avoid any long and non-productive discussion, here is my plan to
>> success :
>> * let's agree on a very generic plan
>> * then, use one mailing-list thread for each part. People that feel at
>> ease with one part can help without being burried through dozens of
>> emails
>>
>
> Sounds good.
>
> Here is draft 0.1 :
>>
>> 1) Introduction
>>     a) Introduction on HAProxy config file
>>        how it is organized (sections)
>>        99% backward compatible through 1.x branch
>>     b) How to check a config file
>>        focus on check mode, how to read warnings, ...
>>     c) Efficient reloading of HAProxy (hot reload)
>>
>> 2) Simple HTTP load balancing
>>     a) Simple HTTP Load balancing
>>        round robin
>>        cookies
>>        source balancing
>>
> b) session stickiness
>   .) L4
>   .) L? (ssl which layer is SSL?!)
>   .) L7
>   .)  with peers
>
> 3) Adding High-Availability
>>     a) With keepalived
>>     b) wih another L4 load balancer (Alteon ?)
>>     c) other implementations ?
>>
> d) distributed ssl load example
>
> 4) HTTPS examples
>>     a) Generic HTTP/HTTPS config
>>
> b) Secure recommendations (pfs, ecc, ...)
>
>
>> 5) Load balancing other protocols
>>     a) Generic TCP protocols
>>     b) Exchange load balancing real world example
>>
>> 6) Security hardening
>>     a) chroot
>>     b) protecting stats block
>>
> c) conatinering (docker, ...)
>
> 7) DDOS fighting
>>     a) Level 4 limits
>>     b) Level 7 limits
>>
>> 8) Using HAProxy command line
>>     maintenance mode, manipulating backends, ssl-related commands ...
>>
>> 9) Multi-site load-balancing with local pref
>>     (see example in current architecture.txt)
>>
>> 10) Advanced tuning
>>     a) client-side
>>     b) server-side
>>     c) OS tuning
>>     d) Hardware tuning
>>
>> All constructive comments are of course welcome. I'm aware this is quite
>> a large task, but I'm sure it can be done :)
>>
>
> Cheers
> aleks
>

Thanks for your feedback. I also want to focus on how to write a config
file with nbproc > 1 and points to focus on. I'll see where I can put this
in my plan.

Do you have any more feedback ? Anyone ? I'll have some time to start
working on it tomorrow, so if you want to share your point of view, now is
the time.

Olivier

Reply via email to