Chapter 2. Installing VoltDB

Documentation

VoltDB Home » Documentation » Using VoltDB

Chapter 2. Installing VoltDB

VoltDB is available in both open source and commercial editions. The open source, or community, edition provides all the transactional performance benefits of VoltDB, plus basic durability and availability. The commercial editions provide additional features needed to support production environments, such as complete durability, dynamic scaling, and WAN replication.

Depending on which version you choose, the VoltDB software comes as either pre-built distributions or as source code. This chapter explains the system requirements for running VoltDB, how to install and upgrade the software, and what resources are provided in the kit.

2.1. Operating System and Software Requirements

The following are the requirements for developing and running VoltDB applications.

Table 2.1. Operating System and Software Requirements

Operating System

VoltDB requires a 64-bit Linux-based operating system. Kits are built and qualified on the following platforms:

  • CentOS version 7.0 and later, or version 8.0 and later

  • Red Hat (RHEL) version 7.0 and later, or version 8.0 and later

  • Ubuntu versions 14.04, 16.04, and 18.04

  • Macintosh OS X 10.9 and later (for development only)

CPU
  • Dual core1 x86_64 processor

  • 64 bit

  • 1.6 GHz

Memory4 Gbytes2
Java3

VoltDB Server: Java 8 or Java 11

Java and JDBC Client: Java 8 or Java 11

Required Software

Time synchronization service, such as NTP or chrony4

Python 2.6 or later (2.7 is recommended)

Recommended Software

Eclipse 3.x (or other Java IDE)

Footnotes:

  1. Dual core processors are a minimum requirement. Four or eight physical cores are recommended for optimal performance.

  2. Memory requirements are very specific to the storage needs of the application and the number of nodes in the cluster. However, 4 Gigabytes should be considered a minimum configuration.

  3. VoltDB supports JDKs from OpenJDK or Oracle.

  4. Time synchronization services minimize the time difference between nodes in a database cluster, which is critical for VoltDB. All nodes of the cluster should be configured to synchronize against the same time server. Using a single local server is recommended, but not required.