Skip to content

(feat) Deploy replicas on separate node / zones / regions #74

@RysoBeco

Description

@RysoBeco

The operator currently creates set of pods taking into consideration affinity, toleration and other standard k8s scheduling related features. Unfortunately there is no simple way to avoid deploying master and replica on same node / zone or region. It limits replica usability for many use cases.

Operator could check Valkey topology and assign role (shard & master/replica role) before pod scheduling and add custom filter to k8s scheduler.

Spec could look like this:

spec:
  shards: 3
  replicas: 2
  replicaSpreadConstraints:
    - topologyKey: zone
      maxReplicas: 2
    - topologyKey: node
      maxReplicas: 1

Diagram below illustrates how would valkey-operator schedule last pod created in the above example.

Image

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions