Skip to main content

Planning a Deployment

In order to use Aerospike Server successfully in either development or production environments, be aware of these system requirements.

The Aerospike server runs on most major 64-bit Linux distributions – CentOS (Red Hat), Ubuntu, and Debian. It is distributed in standard RPM and DEB packages appropriate to the installation environment. The Aerospike server is routinely tested on the following distributions:

  • CentOS CentOS 7 (RHEL 7) & RHEL 8
  • Debian 8 (removed in Server 6.0), 9, 10, and 11 (introduced in Server 6.0)
  • Ubuntu 18.04 and 20.04

The recommended minimum system requirements for Aerospike to function properly are:

  • 64-bit Linux
  • 2 GB of RAM

Although 2 GB of RAM is the recommended minimum (sufficient for development), you will want to ensure you have sufficient amount of RAM for the amount of data you intend to store.

If you are planning for a production deployment, we recommend you review the deployment planning guide below.

Deployment Planning

The recommended minimum system requirements are sufficient for a development environment, but not for a production environment. For production deployments, see the following steps to ensure your production environment is successfully deployed.

Estimating the Size of your Data

Before you begin, determine answers to the following fundamental questions about what you want to store. To size the hardware correctly, you must make a rough estimate of the data.

  • How many records will you have? For example, how many user profiles are you expecting?
  • How much data do you plan to store in each record?
note

Aerospike allows you to add more storage later, but because hardware is relatively inexpensive, it's a good idea to start with a rough estimate of what you'll need.
There is a current limitation of individual devices and files in Aerospike. These must not be configured larger than 2 TiB.

Determining the Type of Storage

Aerospike allows you to store your data:

  • In memory (without persistence)
  • In memory (with persistence; data is backed up on disk)
  • On flash (SSD) storage (with indexes in memory)
caution

After you set the storage method, you may not be able to change it later without losing data.

Determining the Number of Namespaces

The Aerospike Database stores data in namespaces. Each namespace is configured according to its storage requirements. Many Aerospike installations use a single namespace with all data being handled in the same storage media. But for example, if you want to have one group of data in memory and another group of data on SSD, you will need to configure two namespaces.

caution

Adding a new namespace requires a full cluster restart.

Capacity Planning

For assistance on how to properly size your deployment, including memory and storage requirements, see the Capacity Planning Guide. You may skip this step if you are unsure of your capacity requirements or just want to try out the database.

Capacity Planning Guide

Server Hardware

For assistance with determining the proper hardware, see the Server Hardware Requirements

Server Hardware Requirements

Flash Storage

For assistance with determining the right Flash storage, see the Flash Storage Guide

Flash Storage Guide

Network

For assistance with sizing and configuring your network, see the Network Guide

Network Guide

note

The Aerospike Sales Engineering team is available to help you size your hardware and determine that your proposed hardware configuration is suitable for your project. Contact us for help with sizing your hardware.

If you are installing Aerospike for evaluation:

  • For evaluation purposes, you may find it simpler to run a test database using DRAM. Depending on your SSD, the setup process can take some time. In addition, we don't recommend that you overprovision SSDs that are virtual drives on a laptop.
  • Be careful of using Amazon to evaluate performance. Amazon is a shared platform and network latency can vary depending on traffic to other sites that are sharing the server. If you are looking to use Amazon only for evaluating, you should know that Amazon is not a suitable choice for those that will deploy on bare metal.
  • If using a VM for testing, note that a VM adds latency to any storage, especially SSDs. As a result, you won't get maximal performance. Production servers typically don't run inside a VM, so this is usually only an issue when testing/evaluating.