Redis is a widely used in memory data store which can be used as a database. It belongs to NoSQL Databases and fits to use cases where a simple datastructures fit.
The source code and default configuration of the Building Block is available in our code.sysEleven.de. Infos on release notes and new features please follow Release notes redis-ha
Redis consists of 5 Pods:
2 x HAProxy
3 x Redis HA Server
Add the directory syseleven-redis-ha
to your control repository. Add a .gitlab-ci.yml
to the directory with the following content:
include:
- project: syseleven/building-blocks/helmfiles/redis-ha
file: JobDevelopment.yaml
ref: 1.32.0
- project: syseleven/building-blocks/helmfiles/redis-ha
file: JobStaging.yaml
ref: 1.32.0
- project: syseleven/building-blocks/helmfiles/redis-ha
file: JobProduction.yaml
ref: 1.32.0
Remove environments you are not using by removing their include.
For a production-grade setup, it is highly recommended to define a maxmemory limit for Redis and resource limit for the pod.
In our experience the formula maxmemory * 125% <= limits
can be used for a stable configuration.
syseleven-redis-ha/values-redis-ha.yaml
redis:
config:
maxmemory: 1024MB
resources:
limits:
memory: 1280Mi
See Scaling Redis for upstream documentation.
This building block consists of multiple components. Each of the components can and must be scaled individually.
Please find more infos on release notes and new features Release notes Redis-HA