{
  "id": "sizing-on-kubernetes",
  "title": "Size and scale a Redis Enterprise cluster deployment on Kubernetes",
  "url": "https://redis.io/docs/latest/operate/kubernetes/7.8.4/recommendations/sizing-on-kubernetes/",
  "summary": "This section provides information about sizing and scaling Redis Enterprise in a Kubernetes deployment.",
  "content": "The following article reviews the mechanism and methods available for sizing\nand scaling a Redis Enterprise cluster deployment.\n\nFor minimum and recommended sizing, always follow the sizing guidelines\ndetailed in the [Redis Enterprise hardware requirements]().\n\n## Sizing and scaling cluster nodes\n\n### Setting the number of cluster nodes\n\nDefine the number of cluster nodes in redis-enterprise-cluster.yaml file.\n\n    spec:\n\n        nodes: 3\n\nThe number of nodes in the cluster must be an uneven number\nequal to or greater than 3. Refer to the article [Highly Available Redis](https://redislabs.com/redis-enterprise/technology/highly-available-redis/)\nfor a detailed explanation on this topic.\n\nSet the number of cluster nodes during deployment\nby editing the redis-enterprise-cluster.yaml file and\napplying the file by running:\n\n    kubectl apply -f redis-enterprise-cluster.yaml\n\n### Scaling out\n\nTo scale out a Redis Enterprise Cluster deployment, increase the number of nodes\nin the spec. For example, to scale the cluster out from 3 nodes to 5 nodes,\nedit the redis-enterprise-cluster.yaml file with the following:\n\n    spec:\n\n        nodes: 5\n\nTo apply the new cluster configuration run:\n\n    kubectl apply -f redis-enterprise-cluster.yaml\n\n Decreasing the number of nodes is not supported.\n\n### Sizing compute resources\n\nTo set the compute resources required for each node,\nuse the redisEnterpriseNodeResources spec field.\n\nUnder redisEnterpriseNodeResources spec, set the following fields\naccording to the provided guidelines.\n\n- limits – specifies the maximum compute resources for a Redis node\n- requests – specifies the minimum compute resources for a Redis node\n\nFor example:\n\n    redisEnterpriseNodeResources:\n\n        limits:\n\n        cpu: \"2000m\"\n\n        memory: 4Gi\n\n        requests:\n\n        cpu: \"2000m\"\n\n        memory: 4Gi\n\nThe default values, if unspecified, are 2 cores (2000m) and 4GB (4Gi).\n\nSet the compute resources for cluster nodes during deployment\nby editing the redis-enterprise-cluster.yaml file and\napplying the file by running:\n\n    kubectl apply -f redis-enterprise-cluster.yaml\n\n### Scaling up node compute resources\n\nTo scale up nodes in an existing Redis Enterprise Cluster deployment,\nadjust the cpu and memory parameters in the spec. For example,\nto scale nodes up to the recommended amount of compute resources,\nedit the redis-enterprise-cluster.yaml file with the following:\n\nredisEnterpriseNodeResources:\n\n    limits:\n\n        cpu: \"8000m\"\n\n        memory: 30Gi\n\n    requests\n\n        cpu: \"8000m\"\n\n        memory: 30Gi\n\nThen, apply the file by running:\n\n    kubectl apply -f redis-enterprise-cluster.yaml\n\n\nWhen adjusting compute resources, make sure the ratio of persistent volume size and the new memory size are in accordance to the [Hardware\nrequirements](). \n\nPersistent volume claims can be expanded, but not reduced after creation. See [Expand PersistentVolumeClaim (PVC)]() for details.\n\n",
  "tags": ["docs","operate","kubernetes"],
  "last_updated": "2026-04-08T12:21:52-07:00"
}

