Documentation - Redise Pack

A guide to Redise Pack installation, operation and administration

open all | close all

Hardware & software requirements

Hardware requirements

Development environment hardware requirements

If you are looking to do development, test or experimentation with Redise Pack (RP), you can use non-production hardware (e.g. laptops, desktop, small VM/instance, etc.).

Item Description Minimum Requirements Recommended
# of nodes per cluster One node is fine, but to utilize the advanced cluster features at least two nodes is required. 1 node 2+
RAM The amount of RAM for the node. At least 2GB 4GB
Storage The amount of storage space for the node. At least 10GB of free space 20GB

This minimal setup is meant for simple development and minimal functional testing, not for any kind of load, failure or failover testing. With two or fewer nodes in a cluster, a quorum cannot be attained in the event of failure. For that kind of testing or anything more serious, please see the production environment requirements.

Production environment hardware requirements

The table below explains the minimum and the recommended hardware requirements for a production system:

Item Description Minimum Requirements Recommended
# of nodes per cluster At least 3 nodes are needed in order to support a reliable, highly available deployment that handles process failure, node failure and network split events in a consistent manner. 3 nodes >=3 nodes; must be odd number of nodes to maintain quorum
# of cores per node RP is based on a multi-tenant architecture and can run multiple Redis processes (or shards) on the same core without significant performance degradation.

Once the CPU load of a node has reached a certain threshold, RP will try to migrate “noisy” shards to a different node in the cluster and will send an alert to the operator.

If your application is designed to impose a lot of load on your Redis database, ensure that you have at least one available core for each shard of your database.

Additional recommendations:

  1. If some of the cluster nodes are utilizing more than 80% of the CPU, you should look at migrating busy resources to less busy nodes.
  2. If all the cluster nodes are utilizing over 80% of the CPU, scale-out the cluster by adding a node.
4 cores >=8 cores
RAM Defining your RAM size should be part of the capacity planning for your Redis usage. Since Redis uses a relatively large amount of buffers (i.e. for slave communication, for the client communication and for pub/sub commands) the operator should take extra care to leave at least 20% of the RAM “unused”.

Additional recommendations:

  1. If some of the cluster nodes are utilizing more than 80% of the CPU, you should look at migrating busy resources to less busy nodes.
  2. If all the cluster nodes are utilizing over 80% of the CPU, scale-out the cluster by adding a node.
  3. Do not run other memory consuming systems on the same machine that is used as an RP node.
15GB >=30GB
Storage For better I/O performance, RP enables two storage systems to be connected to each node in the cluster (as described below). It is also highly recommended that you use SSD-based storage to avoid performance issues when persisting data to disk.

If RP Flash functionality is to be used, the size of the Flash storage must be at least ten times (10x) the size of the RAM storage. For additional details, refer to Redise Flash.

Ephemeral Storage Used for storing replication files (RDB format) and cluster log files.

For additional details, refer to Persistent and ephemeral storage.

2x node’s RAM size >=4x node’s RAM size
Persistent Storage Used for storing snapshot (RDB format) and AOF files over a persistent storage media, which (unlike ephemeral storage) is not deleted in cases of node failure.

For additional details, refer to Persistent and ephemeral storage.

Examples of persistent storage devices:

  • AWS Elastic Block Storage (EBS)
  • Azure Data Disk
3x node’s RAM size >=6x node’s RAM size For extreme ‘write’ scenarios, refer to the Disk size requirements for extreme write scenarios section to determine the right Persistent Storage size.
Network Redis Labs recommends running RP over a low-latency high-throughput network, wherein each NIC can support a few hundred thousand packets per second.

That said, RP could still perform very well over a single 1Gbps interface network that is used for processing application requests, inter-cluster communication and storage access.

1G >=10G

Software requirements

Server

The following operating systems are supported:

  • Ubuntu 14.04, 16.04, 64 bit, Server or Desktop. The Server version is recommended for production deployments.
  • CentOS / RHEL 6.5, 6.6, 6.7 64 bit. Requires at least “Minimal Install” configuration.
  • CentOS / RHEL 7.0, 7.1, 7.2, 7.3 64 bit. Requires at least “Minimal Install” configuration. For additional considerations, refer to CentOS / RHEL 7 firewall configuration.
  • Oracle Linux 6.5, 64 bit.
  • Amazon Linux, 64 bit.

No other applications should be running on the same server that is running RP. The RP software’s resource consumption assumes that all RAM on the server is exclusively allocated to the OS and RP; thus, other applications running on the same server can interfere with RP’s proper functioning.

Client

The following web browsers are supported:

  • On Windows 10:
    • Edge version 20 and up
    • Firefox version 44 and up
    • Chrome version 48 and up
    • Opera version 35 and up
  • On Windows 8.1:
    • Internet Explorer version 11 and up
    • Chrome version 48 and up
    • Firefox version 44 and up
  • On OS X:
    • Firefox version 43 and up
    • Chrome version 48 and up
    • Opera version 35 and up
  • On Ubuntu 14.04:
    • Firefox version 44 and up
    • Chrome version 49 and up
    • Opera 35 and up