GitHub puppet-redis
37
37
15
Puppet Module to manage Redis

Metadata Valid
No translation
Correct Puppet Version Range
Supported Puppet version range is %{PUPPET_VERSION_RANGE}
With Puppet Version Range
Puppet version range is present in requirements in metadata.json
With Operatingsystem Support
No translation
Supports Only Current Debian
No translation
Supports Latest Debian
No translation
Supports Only Current Ubuntu
No translation
Supports Latest Ubuntu
No translation
Supports Only Current Centos
No translation
Supports Latest Centos
No translation
In Modulesync Repo
No translation
In Plumbing
Is in plumbing
Has Secrets
Has a .sync.yml file
Synced
Has a .msync.yml file
Latest Modulesync
No translation
Has Modulesync
Is present in voxpupuli/modulesync_config/managed_modules.yml
Released
Is in modulesync_config and in forge releases.
Reference Dot Md
The repository has a REFERENCE.md. It needs to be generated / puppet-strings documentation is missing.

Open Pull Requests

add basic TLS support
enhancement
needs-tests

As of version 6, redis has native TLS support.

This merge request adds support for the most basic parameters of this feature.

Correct config_dir for scl support
bug
needs-tests

Solves issue https://github.com/voxpupuli/puppet-redis/issues/341

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

-->

Pull Request (PR) description
<!--
This solves issue https://github.com/voxpupuli/puppet-redis/issues/341.
The config_dir for sentinal using SCL currently does not work
-->

This Pull Request (PR) fixes the following issues
<!--
Fixes #341
-->

add sentinel multi monitor
backwards-incompatible

Pull Request (PR) description

After multi instance was added we should let redis-sentinel watch over these instances

This Pull Request (PR) add following features and fixes the following issues

  • multi instance support for redis-sentinel

This will close following Issues:
Close #319
Close #223

release 6.2.0
skip-changelog
tests-fail

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

-->

Pull Request (PR) description

<!--
Replace this comment with a description of your pull request.
-->

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
-->

Make augeasproviders_sysctl a soft dependency

augeasproviderscore was already redundant since augeasproviderssysctl already depended on it and wasn't used directly.

Since augeasproviders_sysctl is only used on Red Hat and Debian to set ulimit when using non-systemd platforms (EL6, Debian with manual change from defaults). Those account for a very small number of the deployments so this makes it a soft dependency.

Multi instance fixes

This PR aims to fix remaining issues with multi instance handling :
- Instance shutdown : multiples issues with the existing command
It fails if we use 0 as a port (eg : to disable listening for an unix socket only usage).
It also fails if a password is defined.
I decided to use a SIGTERM like Debian for its default service. (It's still a graceful shutdown : https://redis.io/topics/signals)

  • Socket files removal and permission problems By using the same directory to store sockets and pids, it means stopping or restarting an instance will clear every other instances sockets ! If we use RuntimeDirectoryPreserve=yes, it's still not optimal if our instances are using different users. Each stop or restart will reset the socket owner of every instances. So my solution was to use per instance directories for sockets and pids.
Adding support for Redis6 config and new features

Pull Request (PR) description

This commit introduces the latest config for Redis6 and Sentinel, with new parameters. Additionally, the MemoryPolicy type is introduced with some small adjustments in the rest of the code.

As discussed previously on voxpupuli IRC this is a base commit, and depending on the review I will make changes accordingly.

Make it possible to install sentinel independently
needs-tests

Pull Request (PR) description

This PR introduces the possibility to install redis::sentinel standalone, without redis::server. It comes in handy when you need your sentinels to be for example on a different node than your redis server.

The change itself is a pretty straightforward, I am just adding a require_redis parameter, that makes the requirement of redis class conditional. The default value is true, which includes the redis and it is therefore backward compatible with the current setup.

The only downside of this approach I see currently is that in case someone needs a standalone redis-sentinel from a managed repository, the repository must be added manually as the redis::preinstall is no longer included (as was previously with the redis class)

This Pull Request (PR) fixes the following issues

  • installation of standalone sentinel (no open issue for this one, so far)

Thank you for any input :)

Manage ulimit with systemd::dropin_file and allow it to be unmanaged

This PR changes two things:
- Adds the new parameter ulimit_managed to explicitly enable/disable ulimit
- in systemd unit für instances and
- systemd dropin for default setup
- Use systemd:: service_limits to manage the ulimits for the default setup.
Note: This adds a new dependency to camptocamp/puppet-systemd.
- Use systemd::unit_file for each instance service

Fixes #390

Note: I can split this PR into two/three PRs if desired (or squash the commits together).

Drop Puppet 5, add Puppet 7 support