On this page:

Your Rating:
6 rates

This page lists the Synthetic Server requirements, offers sizing guidance, and shows you how to use configuration to modify the default settings.

AppDynamics Platform Requirements

To deploy the Synthetic Server, you will need to have the following AppDynamics platforms installed:

  • Controller (4.5.0+) 
  • Events Service (4.5.0+) 
  • EUM Server (4.5.0+) - See Upgrade the EUM Server if you need to upgrade.
  • Synthetic Private Agent (4.5.4+) 

Certain Synthetic Server features—specifically, Synthetic Sessions Analytics, features of Application Analytics that extend the functionality of Synthetic Sessions—require access to the AppDynamics Events Service. 

Hardware Requirements

These requirements assume that the Synthetic Server is installed on a separate machine. If other AppDynamics platforms are installed on the same machine, the requirements (particularly for memory) could vary greatly and require many more resources.

  • Storage: 50 GB free disk space
  • Memory: 8 GB memory 
  • CPU: 64-bit CPU with at least 2 cores 
  • Network bandwidth: 10 Mbps 

NTP should be enabled on both the EUM Server host and the Controller machine. The machine clocks need to be able to synchronize.

Scaling Requirements

You are required to have one EUM account for each on-premises deployment of the Synthetic Server. The machine hosting the Synthetic Server should be able to support 100 concurrent Synthetic Agents or 10 locations with 10 Synthetic Agents per location.

If you need the Synthetic Server to support more than 100 concurrent Synthetic Agents, see Increase the Synthetic Agent Support.

Operating System Support

The Synthetic Server is supported on the following operating systems:

Linux (64 bit)

  • RHEL 6.x and 7.x
  • CentOS 6 and 7
  • Ubuntu 14 and 16
  • SUSE 12

 You can use the following file systems for machines that run Linux:

  • ZFS
  • EXT4
  • XFS 

On-premises deployments on Linux are only supported on Intel architecture.

Network Requirements

The network settings on the operating system need to be tuned for high-performance data transfers. Incorrectly tuned network settings can manifest themselves as stability issues.

The following command listing demonstrates tuning suggestions for Linux operating systems. As shown, AppDynamics recommends a TCP/FIN timeout setting of 10 seconds (the default is typically 60), the TCP connection keepalive time to 1800 seconds (reduced from 7200, typically), and disabling TCP window scale, TCP SACK, and TCP timestamps.

echo 5 > /proc/sys/net/ipv4/tcp_fin_timeout 
echo 1800 >/proc/sys/net/ipv4/tcp_keepalive_time 
echo 0 >/proc/sys/net/ipv4/tcp_window_scaling 
echo 0 >/proc/sys/net/ipv4/tcp_sack 
echo 0 >/proc/sys/net/ipv4/tcp_timestamps

The commands demonstrate how to configure the network settings in the /proc system. To ensure the settings persist across system reboots, be sure to configure the equivalent settings in the etc/sysctl.conf, or the network stack configuration file appropriate for your operating system. 

Software Requirements

The Synthetic Server requires the following software to run and function correctly. You are required to have outbound internet access to install Python, pip, and flake8.

SoftwareRequired VersionDescription

The Synthetic Server requires JDK 8 to run services such as Synthetic Scheduler and Synthetic Shepherd.

You need to set the environmental variable JAVA_HOME to the home directory of the JDK.


The Synthetic Server relies on Python to validate scripts.

pip9+Python uses pip to install software. The installer will use pip to install the correct version of flake8. If you need to manually install flake8, see the instructions in the flake8 row below.

This is a Python utility used to lint scripts. The installer will use pip to install the correct version of flake8.

If you need to manually install it, run the following:

pip install flake8==2.6.2

The Synthetic Server requires the libaio library to be on the system. This library facilitates asynchronous I/O operations on the system.

See How to Install libaio for instructions.

How to Install libaio 

Install libaio on the host machine if it does not already have it installed. You may require outbound internet access if you don't have a locally hosted repository.

The following table provides instructions on how to install libaio for some common flavors of the Linux operating system. Note, if you have a NUMA based architecture, then you are required to install the numactl package.

Linux Flavor
Red Hat and CentOS

Use yum to install the library, such as:

  • yum install libaio
  • yum install numactl

Install the library RPM from the Fedora website:

  • yum install libaio
  • yum install numactl

Use apt-get, such as:

  • sudo apt-get install libaio1
  • sudo apt-get install numactl
DebianUse a package manager such as APT to install the library (as described for the Ubuntu instructions above).

  • No labels