Skip to content

Provision C2 node pool for Redis

We want to deploy Redis to C2 instances to match our VM setup.

Background: https://gitlab.com/gitlab-com/gl-infra/infrastructure/-/issues/9636.

In redis-chart-sandbox we are using c2-standard-8 instances (source).

Specs:

instance type vCPUs Memory
c2-standard-8 8 vCPUs 32 GiB

We usually size to have a minimum of 4 CPUs (plus a few more for sentinel and system services), and memory at 2x maxmemory (so that we can fit working set into page cache during recovery).

redis-ratelimiting does not need a lot of memory, so in this case we are primarily sizing for CPU. 4 CPUs seems a bit risky with sentinel and daemonsets also taking up resources. Redis itself needs 4 CPUs (main thread + 3 I/O threads). So provisioning 8 seems safer.

We're targeting 1 pod per box.

We should also set pod requests+limits accordingly, and ensure pods are placed in this node pool.

Edited by Igor