arioch/puppet-keepalived — pull request #10 by bleach (2013-11-01 10:50:12+00:00)
Title: LVS support, an initial cut

This is the LVS support that we're using in production at Songkick. It only supports virtual IPs, not fwmark and it doesn't support any form of checking other than TCP_CHECK yet.

I've done a reasonable amount of parameter checking - in my experience with keepalived so far, if you give it a config file it doesn't understand it'll fail in non-obvious ways, so I thought it better to fail at puppet run time and avoid breaking a working keepalived.

One thing I'm not really sure about is the readability of the generated config fragments, I've put the virtual server definition inside a group { } - there are various other ways of specifying this, but this one supports having multiple ip/ports bound to it using a separate virtual_server_group block (this isn't implemented yet). We could change the 'group' to 'virtual server group' if desired.