Deployment Support

The Agent Installer requires microservices configuration performed by AppDynamics.

The AppDynamics Agent Installer simplifies deployment to instrument your applications faster. You can manage applications instrumented with the Agent Installer with minimal code changes in Monitoring Settings.

The Agent Installer:

  • Deploys Java and Machine Agents, and is compatible with Linux 

  • Automatically instruments applications 
  • Assigns unique names to tiers and nodes

You can deploy other agents using the Getting Started Wizard. 

Agent Installer Overview

The Agent Installer works with these items:

  • Agent Installer - Executable installer inside the appdynamics-zero-agent-<version>.zip. file (representing the Agent Installer Platform). The Agent Installer installs the Agent Installer Platform with Java, and Machine Agents on a system. You access the installer from the Controller UI.
  • Decorator - Library responsible for automatically instrumenting new processes with AppDynamics APM agents. The library auto-instruments the application and auto-names tiers and nodes for the Controller.
  • Agent Installer Platform - Software bundle that manages the Decorator, Java Agent, and Machine Agent. Enables automatic instrumentation and reports the status of various processes to the Controller UI. Collective term for the decorator, agent daemon, agent binaries.
  • Downloader - Script (zero-agent.sh) that downloads individual zip files containing the Java and Machine (if applicable) Agents, and Agent Installer Platform.

Agent Installer Requirements

The Agent Installer requires the following components, permissions, and supported environments. 

AppDynamics Components

  • The Agent Installer requires SaaS Controller => 20.6.0. 
  • You also need sufficient APM licenses to use the Java and Machine Agents. No additional license is required for the Agent Installer Platform.  

Configure and Unblock Your Firewall

You may need to configure your firewall rules to allow outgoing traffic to certain URLs including:

  • Access to your AppDynamics Controller: <customername>.saas.appdyanamics.com/* to allow APM traffic.

  • Access to the AppDynamics download files site: download-files.appdynamics.com  to download the agent binaries.

Agent Installer Permission

To configure access and roles, you must either be the AppDynamics Account owner, or have Administrator permissions.

To use the Agent Installer, you need Install Agent account-level permission and at least one of the following:

    • Any default role (except for the Analytics Administrator role)
    • Any application-level permission
    • Execute Workflow account-level permission

Install Agent permission is not added to any default role. See Roles and Permissions.

Supported Environments

This table lists the Agent Installer supported environments. JVM and Application Server requirements only apply if you install the Java Agent. The Agent Installer does not support Windows installations.

Agent Installer Supported Environments
Operating System

Linux (64 bit). Fully tested flavors:

  • CentOS 7, 8
  • Rhel 7, 8
  • Ubuntu 18.04
  • Fedora 31
  • Debian 10

Other Linux operating systems and versions should work but are not certified by AppDynamics. 

JVM
  • Open => JDK 1.6
  • Oracle => JDK 1.7
  • IBM JDK => 1.6 
Application Server
  • Apache Tomcat
  • Jboss Wildfly
  • GlassFish
  • Websphere
  • Weblogic

See Java Supported Environments and Machine Agent Requirements and Supported Environments for version compatibility. 

Agent and Process Limitations

This table lists the active agent registrations, process, and process group limitations for the Agent Installer:

AgentMaximum Per-Account Limit
Active agent registrations1000
ProcessMaximum Per-Account Limit
Managed processes10,000
Unmanaged processes10,000
Managed processes in a single installation100
Unmanaged processes in a single installation100
Process GroupMaximum Per-Account Limit
Managed process groups1000
Unmanaged process groups1000
Managed process groups in a single installation100
Unmanaged process groups in a single installation100

Available Agents with the Agent Installer

The Agent Installer deploys the Agent Installer Platform, which downloads monitoring agents to your machine. You can install: 

  • Java Agent >= 4.5.19
  • Machine Agent >= 20.3.0

Use the Agent Installer to Deploy an Agent

To use the Agent Installer to deploy an agent:

  1. From the Controller UI, select Home > Agent Installer.
  2. From the Specify Application to Deploy to dropdown, select an existing application, or select New application and enter its name.  

    Application names cannot contain a single quotation mark (').

  3. Download and run the Agent Installer using either an express installation or a custom installation method.

Express Installation Method

  1. The Express installation method is selected as the default. With minimal effort, you can download and install the latest version of all available agents.  
  2. Copy and run the first command to download the latest available agents.  

  3. Select script icon (top right corner of the second command) to copy and run the second command to install the agents. Additionally, you can select Show command to reveal the full command with your access key.

  4. Restart the application processes you want to monitor. 
  5. Click Next to continue with the instrumentation. 

After you finish installing the agents, you are redirected to the Monitoring Settings tab to view instrumented tiers and nodes. 

Custom Installation Method

  1. Select Custom installation
  2. Select the Java or Machine Agent(s) you want to install. 

    You must select at least one agent to proceed with the installation.

  3. The default version displays next to the selected agent(s). You can edit the version from the corresponding dropdown. A command based on the agent(s) you selected is generated. 

  4. Copy and run the command into your terminal or automated tools. 
  5. Determine how to run the Agent Installer by setting user permissions:
    • Select Instrument processes for all system users (requires sudo access) to run the Agent Installer with sudo permission and enable the Agent Installer Platform for all users on the host.

    • Select Instrument processes for an individual user to run the Agent Installer without sudo permission and enable the Agent Installer Platform for the current user only. 
      See Sudo vs. Non-Sudo Access for more information. 

  6. After confirming the user installation permissions, select script icon (top right corner of the command) to copy and run the command. To reveal the full command with your access key, select Show command.

    When you run the command on a designated host, the agent files download onto that host only. To install agents on multiple hosts, select Run the Agent Installer on Multiple Hosts.

  7. Restart the application processes you want to monitor. 

  8. Click Next to continue with the instrumentation.

After you finish installing the agents, you are redirected to the Monitoring Settings tab to view instrumented tiers and nodes. 

Sudo Versus Non-Sudo Access

You can run the Agent Installer with or without sudo permission.

AppDynamics recommends using the sudo command to install the agents for all users in your system. 


This table describes the differences between sudo and non-sudo installations:


sudo Installation

Non-sudo Installation

DescriptionInstalls the agents on all supported processes for all users in your system.Installs the agents for the current user only.
Automatic Instrumentation ProcessBy default, integrates with systemd to ensure the agents always run. See Customize the Agent Installer to override this behavior.Auto-instruments processes that are started by the installing user, running under a Linux shell such as bash.

Instrument systemd-Managed Processes in a Non-sudo Environment

To enable the instrumentation of a systemd-managed application process in non-sudo Agent Installer Platform installations, the profile of the systemd service responsible used to load the application process must define the LD_PRELOAD environment variable using the path to the decorator library.

The actual path varies based on the operating system and product installation directory. This example shows an updated Apache Tomcat systemd service profile on CentOS 7:

$ grep LD_PRELOAD /etc/systemd/system/apache-tomcat-7.service Environment=LD_PRELOAD=/home/centos/appdynamics/zeroagent/lib64/libpreload.so 
BASH

After the profile has been updated, you must reload the systemctl daemon and restart the application for the changes to take effect:

$ sudo systemctl daemon-reload 
$ sudo systemctl restart apache-tomcat-7.service
BASH

Run the Agent Installer on Multiple Hosts 

You can download the Agent Installer once and run on multiple hosts. To install the agent bundle across multiple hosts, distribute the binaries to all applicable machines. 

For example, these steps show how to move files across hosts using the tar command. 

  1. Download the agent bundle (see Use the Agent Installer to Deploy an Agent). 
  2. Distribute the Agent Installer to multiple hosts. 
    1. Make sure you are in the same directory in which you downloaded the agent bundle. 
    2. Use the tar command to place the script in a single file:

      tar cvf zero-agent.tar * 
      BASH
    3. Copy the file to multiple hosts:

      scp zero-agent.tar <target host>:<directory>
      BASH
    4. Extract the archived script in the same directory:

      tar xvf zero-agent.tar
      BASH
  3. Complete the Agent Installer deployment using the custom installation method.

Upgrade the Agent Installer

For versions before 21.9.0, to upgrade the Java and Machine Agents (which run through the Agent Installer), you must first uninstall your current agents. In the terminal, navigate to the directory where the Agent Installer Platform is installed and run this command:

languagebash<install-directory>/bin/zeroctl uninstall
CODE

Customize the Agent Installer

See Customize the Agent Installer to modify the agent configuration.