This guide describes the installation of the MigratoryData server. Before reading this document, it is recommended to read the Architecture Guide for a better understanding of the concepts and to have a more comprehensive background.

Software Requirements

Operating Systems

Written in Java, MigratoryData runs on all major operating systems: Linux, Mac OS, Windows, and potentially on any other operating system having support for OpenJDK Java Runtime Environment (JRE) version 8.

MigratoryData Server comes with 64-bit installers for rpm-based and deb-based Linux distributions. Also, a platform-independent tarball is available.

For production deployments, Linux is the only operating system which is currently supported. The recommended Linux distributions are 64-bit Red Hat Enterprise Linux (RHEL) / CentOS 6 or later, and Debian 7 or later.

OpenJDK

You need to install Java Runtime Environment (JRE) version 8 on your system before you can install and run MigratoryData.

OpenSSL (Optional)

MigratoryData comes with full support for TLS/SSL communication which can be used for most deployments and for all supported platforms.

However, for Linux production deployments with a high number of users, in order to make best use of the available hardware resources, MigratoryData can be configured to use native TLS/SSL communication provided by the OpenSSL library. The integration with OpenSSL is made via the Apache Portable Runtime (APR) library. In this way, the requirement is that you install OpenSSL and APR libraries on your system before you can use the native TLS/SSL communication. To enable the native TLS/SSL communication, add to the configuration file of MigratoryData:

Native.Ssl = true

Hardware Requirements

CPU

In a production environment it is recommended to have a machine with at least 4 CPU cores, but the recommendation can grow to more CPU cores depending on the load of data and how many simultaneous clients will be connected.

For development or small deployments, there are no special requirements concerning CPU; you can use any decent workstation hardware.

RAM

In a production environment it is recommended to have 8 GB or more memory depending on the load of data and how many simultaneous clients will be connected.

For development or small deployments, it is recommended to have at least 512 MB of RAM available.

Platforms

  • Linux (deb)
  • Linux (rpm)
  • Platform independent (Windows, MacOS, Linux)
  • Docker
  • Kubernetes
  • Cloud
    • Azure Kubernetes Service (AKS)
    • Azure Event Hubs

Contents