GitHub puppet-keepalived
Puppet Module to manage Keepalived

Repo Checks ( 15 of 20 successfull )
Metadata Valid
No translation
passed
Correct Puppet Version Range
Supported Puppet version range is %{PUPPET_SUPPORT_RANGE}
passed
With Puppet Version Range
Puppet version range is present in requirements in metadata.json
passed
With Operatingsystem Support
No translation
passed
Operatingsystems
No translation
passed
Supports Only Current Debian
No translation
failed
Supports Latest Debian
No translation
passed
Supports Only Current Ubuntu
No translation
failed
Supports Latest Ubuntu
No translation
failed
Supports Only Current Redhat
No translation
passed
Supports Latest Redhat
No translation
failed
Supports Only Current Centos
No translation
passed
Supports Latest Centos
No translation
failed
In Modulesync Repo
Is listed as a module managed using modulesync_config
passed
Synced
Has a .msync.yml file
passed
Latest Modulesync
Has been synchronized with the latest tagged version of modulesync_config
passed
Has Modulesync
Is present in voxpupuli/modulesync_config/managed_modules.yml
passed
Released
Is in modulesync_config and in forge releases.
passed
Valid Sync File
If a (optional) sync file is present, it must not contain a `.travis.yml` entry.
passed
Reference Dot Md
The repository has a REFERENCE.md. It needs to be generated / puppet-strings documentation is missing.
passed

Open Pull Requests

Limit virtual ip address duplicate
needs-tests

Limiting duplicate ip address in virtual_ipaddress hash

Open PR in GitHub
Add missing vrule fields

Pull Request (PR) description

I've added all the missing possible fields for keepalived::vrrp::instance::vrule as per ip-rule(8), since they can all be used.

Also, dev was wrong.

This Pull Request (PR) fixes the following issues

n/a

Open PR in GitHub
Add support for track_interface option to vrrp_sync_group
enhancement

Pull Request (PR) description

Add support for the track_interface option of a vrrp sync group.

This Pull Request (PR) fixes the following issues

None

Open PR in GitHub
Extend and modify virtual rule options

Pull Request (PR) description

This pull request extends & modifies the virtual_rules options.
The idea is to try to stick close to the iproute options (see ip-rule manpage).
Currently for some options aliases are used, which is confusing.

Summary of the changes:

  • Adds the oif and priority options
  • Replaces the (undocumented) dev option with its iif alias
  • Replaces the lookup option with its table alias

The tests are also extended to incorporate all possible options.

This Pull Request (PR) fixes the following issues

None

Open PR in GitHub
Add support for sorry_server_lvs_method
merge-conflicts
needs-docs
needs-tests

This option is available in more recent versions of keepalived.

Open PR in GitHub
Realize exported Vrrp:Script resources
enhancement
merge-conflicts
needs-rebase
needs-work

Added option to collect exported vrrp::script resources (similar to how lvs::virtualserver collects exported lvs::realserver resources) so that the real_servers can export check scripts that contain identifying information (such as IP address, etc).

The $collectexported param is defaulted to false to avoid changing the current behavior though an empty trackscript{} block doesn't appear to cause any issues when added to the config so it may be preferable to default it to true to mimic the virtualserver/realserver functionality.

Open PR in GitHub
Add compatibility for Alpine Linux
enhancement
merge-conflicts
needs-work

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

Enable managment of keepalived on Alpine Linux

This Pull Request (PR) fixes the following issues

<!--
Replace this comment with the list of issues or n/a.
Use format:
Fixes #123
Fixes #124
-->

Open PR in GitHub
WIP - feature completeness with 2.1.5

Pull Request (PR) description

feature-completness-with-2.1.5 tries to make puppet-keealived feature complete in a sense that all options keepalievd 2.1.5 provides, can be set via this puppet module.

This Pull Request (PR) fixes the following issues

Currently a lot of options are missing :/

State of the Pull Request

This is currently and at the moment Work In Progress. I just wanted to push early to have the change to get early feedback, too.

So far global_defs should be completely covered. Only a few options are missing in spec. Anyone reading this is invited to give me a pair of eyes and provide some hints how to cover the missing ones!

I had a talk with @ghoneycutt and he gave me the /ok/ to just do a large commit, as I do not change features, but just adding new options. As you can see in global_defs some options are now set to undef as they only reflect the implicit default state of keepalived. I'm not quiet sure if this is just some old stuff or if keepalived actually switched that in the last 3(?) years...

In the next days I want to try to do the same with vrrp_instance. As I have no clue about LVS, I will quietly ignore this for now. I maybe will continue with vrrp_script then...

Anyway I have some "questions" aka I'm unsure about it, and like to get feedback:
* I've set all params of global_defs to have a Data Type; I tried to reflect documentation from keepaliveds manpage as good as I could. Could someone have a look and give me a "go ahead"/continue or a "please stop and do it that way"?
* Should the test in spec cover allowed vaues of an option? Like if when an Integer can only be set between 0 and 99, or where does this go?
* How do I write a spec for situations with like nftables: it could be just set, (with puppet via true, but in the config without parameter) and it could also have one parameter or two, if the user wants to specify the chain.

Closing note for now:
I've ordered all options as they appear in keepaliveds documentation to make it easier to compare the state of "feature completeness".

Thanks.

Open PR in GitHub
add global option vrrp_min_garp

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

This adds the option vrrp_min_garp to the global options.

Open PR in GitHub
Add support for promote_secondaries option

Pull Request (PR) description

promote_secondaries is a boolean flag at the vrrp instance level that allows you to remove an address without removing the other addresses in the same CIDR. See https://keepalived.org/manpage.html

Open PR in GitHub
add support for garp_master_repeat and garp_interval
needs-tests
enhancement
merge-conflicts

This PR adds support for garpmasterrepeat (keepalived::vrrp::instance) and garp_interval (global)

Open PR in GitHub
doc: fix examples in README
tests-fail

Since https://github.com/voxpupuli/puppet-keepalived/commit/5ce7c9e14e3993765908f1fa062c3dbc0c9fcc84, we are using the Integer data type to define the VRRP instance priority and the router id.
Examples should use Integer as well.

Open PR in GitHub