Skip to content

Migrate Backend to HA Redis minds/infrastructure/infrastructure#46

Zack Wynne requested to merge infra/redis-ha-46 into master

Ticket(s) / Related Merge Requests

Issue: minds/infrastructure/infrastructure#46 (closed)

Summary of Changes

This MR introduces support for using the engine with a highly available Redis cluster. This allows for us to use a single hostname for HA proxy and serve the Redis master and slave on different ports, while allowing for the old structure to be used as well.

Testing Considerations

Sandbox is currently using the new Redis deployment, you can view the Redis pods in the caching namespace:

kubectl get po -n caching

You can also run the Helm tests in order to ensure that the NetworkPolicy resources are working correctly for the engine. Note that the runners tests will fail in sandbox.

helm test infra-redis-ha-46

Deployment Considerations

This change requires modifications to the structure of the redis section within our settings.php. As we share a ConfigMap across environments, we will likely need to deploy a temporary revision and direct staging and canary at this revision. Finally, we can make another MR on the Helm chart to migrate fully.

After we're happy that the new Redis is functioning as expected, we should come back and migrate fully to the new structure.

Regression Scope

Caching

Platform Affected (web, mobile, etc)

Both

Developer Testing Completed

Tested using the engine in sandbox with the new Redis

Screenshots / Screen Recording

N/A

Does this impact

  • Localization
  • Dark/light mode
  • Guest mode

Definition of Done Checklist

  • The Acceptance Criteria has been met
  • Code is tested: Testing includes unit/spec, E2E/automated and manual testing
  • Merge requests description has been filled out
Edited by Zack Wynne

Merge request reports