This page lists the application environments and versions supported by the Machine Agent. Any environments or versions that are not listed are not supported.
Machine Agent Supported Platforms
Supported platforms and environments for the Machine Agent depend on the metric data collection extension and the machine's OS. See Machine Agent Metric Collection. Machine Agent >= 21.4.0 collects
diskstats from Linux kernels versions >= 4.18.
The Azul JRE is included as a component in the AppDynamics products and modules. In response to how often Oracle produces and distributes JRE/JDK 8, AppDynamics replaced Oracle JRE with Azul JRE in the 20.5.0 Machine Agent.
The Machine Agent requires a Java Virtual Machine (JVM). Downloads for Linux, Windows, and Solaris include the Azul JRE.
The Machine Agent includes the following bundled JREs:
- Linux: JRE 11 as Zulu 11.54, which corresponds to JDK Version 11.0.14
- Windows and Solaris: JRE 8 as Zulu 8.60, which corresponds to JDK Version 8u322
- AIX: Machine Agent without JRE (Use the JRE 1.8 specific to AIX)
If you upgrade the Linux Machine Agent to 21.1.0, then you must also upgrade all extensions to their latest versions to support Machine Agent 21.1.0.
- To run the Machine Agent on other platforms (such as AIX or HP-UX), use the unbundled Machine Agent ZIP without the JRE. For these platforms, you must install JRE 1.8 on the Machine Agent host.
- If you are using a 64-bit Operating System, use only a 64-bit JRE.
A 64-bit long has a maximum and minimum value of 9223372036854775807 and -9223372036854775808, respectively. To handle large values for metrics, run the Machine Agent using a 64-bit JDK.
JDK/JRE that is bundled with Machine Agent will work only if it meets the compatibility matrix requirements (JDK/JRE version, OS, architecture) listed here: https://www.azul.com/downloads/?version=java-8-lts&os=rhel&architecture=x86-64-bit&package=jre
If bundled JDK/JRE is not compatible with OS and architecture, then we suggest that you install the machine agent supported OS and architecture compatible JDK/JRE to run Machine Agent.
Linux and Solaris Machine Agents require Bash >= 3.1.
Linux systems must include the
This table provides instructions on how to install the library on some common flavors of Linux operating systems.
|Red Hat and CentOS|
|Fedora||Install the library |
|Debian||Use a package manager such as |
|Architecture x64 |
|SPARC (64-bit)||POWER (64-bit)|
|Linux / ARM64 / AARCH64||Yes||No||No|
AWS Graviton v2 (gp2)
Linux / CentOS
Linux / Debian
|Linux / Fedora||Yes||No||No|
|Linux / openSUSE Leap||Yes||No||No||42.3|
|Linux / Red Hat Enterprise Linux||Yes||No||No|
|Linux / SUSE Linux Enterprise||Yes||No||No||12|
Linux / Ubuntu
Windows Server 2012 R2
|Yes||No||No||Windows Server 2016|
|Yes||No||No||Windows Server 2019|
These other platforms (supported by JRE 1.8), should also be compatible with the Machine Agent. However, AppDynamics has not fully tested them.
- Oracle JRE 1.8
- IBM SDK, Java Technology Edition, Version 8
- HP JDK/JRE 8
The bundled version of the Machine Agent has been tested successfully on machines based on Power Architecture processors, including PowerPC processors. Server Visibility is only supported on AIX when using the unbundled Machine Agent ZIP without the JRE. When Server Visibility is required, AppDynamics recommends to use the unbundled Machine Agent version.
Hardware and Sizing Requirements
- Agent: One additional GB of RAM.
- Controller: Although we recommend that you install the AppDynamics Controller on a dedicated server, in some cases the Machine Agent can co-exist with the Controller on the same system. The exact number of Machine Agents that can be supported depends on whether other agents are reporting to the same Controller and whether the Machine Agents have Server Visibility enabled (more metrics are generated under Server Visibility). See Controller System Requirements.
JVM Memory Requirements
The lightweight Machine Agent consumes minimal resources of your computer.
To accommodate the Machine Agent, AppDynamics recommends these additional heap and PermGen space sizes:
Maximum heap size (-Xmx): 256 MB
Maximum PermGen heap size (-XX:MaxPermSize): 20 MB
By default, the JVM maximum heap size is set to 256 MB. To override this setting, you can set this flag through the
JAVA_OPTS environment variable on your system. For example, if you enter:
export JAVA_OPTS="-Xms20m -Xmx128m" on Linux, this sets the initial heap size to 20 MB and the max heap size to 128 MB.
The exact CPU or memory overhead added by the agent can vary based on the extensions used and whether the extensions are Java. Java extensions require more heap space; the amount required depends on how you code the extension. If you start adding extensions, you should increase the maximum heap space to 256 MB or 512 MB. Additionally, you may need to increase the size of the initial memory allocation. Monitor the memory consumption of the agent to ensure that there are sufficient resources allocated to it. You can also enable Garbage Collection logging on the JVM to fine tune the heap size for the extensions.
These are example settings to increase the initial heap size:
- Linux and Unix systems:
cscript <machine_agent_home>\machine-agent.vbs -Xms64m
Federal Information Processing Standards (FIPS) Compliance
The Machine Agent >= 22.3.0 is FIPS 140-2 compliant.
To use the FIPS-compliant BCFKS truststore for the Machine Agent:
- Provide the following JVM arguments:
- Add the following security provider class in the
java.securityfile for the JRE used by the Machine Agent:
security.provider.<desired preference order>=org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider
<desired preference order>with your desired preference order.