Before you start the installation

Supported platforms

This release of Apama is designed to run on the “Bookworm” (12) release of Debian. It is available for x86-64 and ARMv8.

Although the Apama images are built on Debian, the images can be run on any Linux distribution which supports standard OCI containers.

Note that this version of Apama follows the same release policy as Cumulocity. Customers should use the latest Apama Debian packages or Docker images together with the Cumulocity version currently deployed to the cloud instances. For customers using an “annual release” of Cumulocity, Apama packages and images compatible with in-support Cumulocity releases are available under the same terms as each annual release.

Ways to install Apama

Apama is the engine that powers Streaming Analytics in the Cumulocity platform, and Cumulocity is the primary place where many users will build and deploy their Apama applications.

For development and testing tasks, or for creating custom Apama-based microservices, it is possible to install Apama separately to Cumulocity. The main ways to do this are Docker images, and Debian packages.

Docker images

Cumulocity has a presence on the Amazon ECR Public Gallery image repository. Several images are available for Cumulocity products. Apama offers runtime images to run instances of the correlator application. Apama also offers several buildtime images to be used as part of a multi-stage build to deploy Apama projects, corresponding to the runtime images. See https://gallery.ecr.aws/apama/ for the published images.

Debian

On Debian-based Linux distributions, you can install Apama using the default package management tool. For more information, see Installing Apama using Debian apt.

Additional notes

System clock

Apama requires the system clock to move forwards without large jumps, and never move backwards. This applies only to the underlying clock measuring UTC (Coordinated Universal Time) seconds since 1970; daylight saving time and time zone adjustments will not affect Apama’s timers.

Discontinuities in the system clock can result in disconnections and/or unpredictable application behavior, especially with any application-level timeouts. Virtual machine infrastructure can be particularly vulnerable to such clock issues. Consult your virtual machine vendor’s documentation or support for recommendations on how to correctly handle time for the host operating system you are using and ensuring that the virtual machine host’s clock is correctly synchronized.

Outside of virtual machines, we would strongly recommend using the Network Time Protocol (NTP), and ensuring that system administrators never make manual adjustments to the system clock. NTP’s default configuration is to handle time adjustments by slightly slowing down or speeding up time, avoiding any sudden jumps.

Linux platform notes

To build the samples and develop applications using the C/C++ API, development tools that are not present in the default installation of the supported platforms must be installed. On all supported Linux platforms, the GCC-C++ package and all its dependencies must be installed. These are typically provided on the installation media as part of your distribution.

If you intend to use the compiled runtime, ensure that the binutils package is installed.

Note that the performance of latency-critical applications can be significantly impacted by the choice of the file system where the correlator writes its log files. File systems such as ext3, ext4, NFS, ZFS and GFS2 can have surprisingly poor worst-case latency especially when the system is loaded, so for latency-critical applications we would recommend use of XFS where possible.