Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge cluster support #68

Open
wants to merge 35 commits into
base: main
Choose a base branch
from

Conversation

fhitchen
Copy link
Contributor

@fhitchen fhitchen commented May 31, 2024

Overview

When I originally contributed this plugin, I thought I had merged the cluster-support branch, looks like I messed this up and it never got into the main branch.

I have now done that as well as added support for primary-secondary and sentinel Redis installations, much more common in production usage than a single Redis server. The change also includes support for persisting credentials to the running servers so that if they crash the credentials are preserved when the Redis server is restarted. Also added is support for the default Redis TLS encryption mode which is mutual TLS.
The upgrade of the Radix package from V3 to V4 made the addition of the different installation easier as the developer had unified access to each of the different installation types.

For anyone using the existing plugin to manage a single Redis server, the only difference would be the need to change the initialization parameter from host= to primary_host and port= to primary_port=. The existing user will have the the ability to also select mutual-TLS authentication with the Redis server as well as the ability to persist the credentials to the Redis server.

I have also added Terraform resources to create all of the various Redis server installation types so that it is easy to test against them. Note they rely on docker bridge networking and will only allow you to test on a Linux server. If needed they can be enhanced to support other development platform through the addition of a HAPROXY server to handle the NAT translations etc.

I believe that these changes are needed as the existing plugin does not support the more complex and highly available Redis installation that you would want to manage with Vault in production.

I have not looked at the impact this has on the Spring Cloud Vault integration. [TBD]

Related Issues/Pull Requests

@fhitchen fhitchen marked this pull request as draft June 9, 2024 22:10
@fhitchen fhitchen marked this pull request as ready for review June 9, 2024 22:17
@fhitchen fhitchen marked this pull request as draft June 17, 2024 14:09
@fhitchen fhitchen marked this pull request as draft June 17, 2024 14:09
@fhitchen fhitchen marked this pull request as ready for review June 17, 2024 14:11
@fhitchen fhitchen marked this pull request as draft September 18, 2024 14:33
@fhitchen fhitchen marked this pull request as ready for review September 18, 2024 15:13
@Floppy012
Copy link

Is there any ETA on this? Would be very useful to have this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants