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 6.6 or later, including 7.0 and later Red Hat (RHEL) version 6.6 or later, including 7.0 and later Ubuntu versions 14.04 and 16.04
Development builds are also available for Macintosh OS X 10.9 and
later1. |
CPU | |
Memory | 4 Gbytes3 |
Java4 | VoltDB Server: Java 8 Java and JDBC Client: Java 7 or 8 |
Required Software | NTP5 Python 2.6 or later release of 2.x |
Recommended Software | Eclipse 3.x (or other Java IDE) |
Footnotes: CentOS 6.6, CentOS 7.0, RHEL 6.6, RHEL 7.0, and Ubuntu 14.04 and 16.04 are the only officially supported
operating systems for VoltDB. However, VoltDB is tested on several other POSIX-compliant and Linux-based 64-bit
operating systems, including Macintosh OS X 10.9. Dual core processors are a minimum requirement. Four or eight physical cores are recommended for optimal
performance. 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. VoltDB supports JDKs from OpenJDK or Oracle/Sun. NTP minimizes time differences between nodes in a database cluster, which is critical for VoltDB. All
nodes of the cluster should be configured to synchronize against the same NTP server. Using a single local NTP
server is recommended, but not required.
|