Warning: This document describes an old release. Check here for the current version.

Service Dependencies

The Nimbus service node interacts with clients and manages backend hypervisor nodes. We strive to make it as simple as possible to install and configure, but there are a few system dependencies and requirements you will need.

Sun Java 1.5 or later

The java and javac commands should be on your path. You can check your Java version with these commands:

$ java -version
$ javac -version

Note that GCJ is not supported.

Python 2.5 or later (but not 3.x)

You can check the version of your system Python with this command:

$ python -V

Note that Nimbus does not support the Python 3 development branch at this time. The most recent compatible Python version is 2.7.

If you cannot safely upgrade the system Python, you can use an alternate location such as /usr/local/bin/python2.5. You will have an opportunity to specify this alternate path during the service node install.

Your Python must have support for sqlite 2, which is often installed separately, in a package called python-sqlite2 (Redhat) or python-pysqlite2 (Debian). The versioning is confusing for this package and the module we actually need is called sqlite3, so the best way to check for availability is with this command. if you don't get an error, you are in good shape.

$ python -c "import sqlite3"

Additionally you must have the sqlite3 command on your path. This can usually be found in a package called sqlite or sqlite3.


Cumulus is bundled with several other Python dependencies, some of which require building from source (C). This requires gcc. If you cannot install gcc, you can get around the requirement by directly installing these Python packages to your system: pyOpenSSL and Twisted 10.0.0.

When going the GCC route you would also need the Python development package (python-dev in Debian) and the OpenSSL development package (libssl-dev in Debian).

Apache Ant 1.6.2 or later

You must also have the propertyfile task available which is usually installed separately from Ant itself. On Redhat-compatible systems this is often a package called ant-nodeps. On Debian/Ubuntu the package is ant-optional. To be sure, you can check for the presence of a library called ant-nodeps.jar in your Ant installation.

If you have all of these dependencies, you can safely move on to the next section, Service Installation.