On this page:

This topic describes how to install the AppDynamics Universal Agent on Linux systems. 

About the Linux Installation

To install the Universal Agent on Linux, you use the installation script, install.sh. The script accepts configuration parameters in various forms: 

  • As settings in the conf/universalagent.yaml file. (If you download the Universal Agent from the Controller, this file may be preconfigured for your environment.)
  • As command-line arguments you enter when invoking the install script. 
  • As settings in a parameter file named by the -p argument.

If the installer does not find the Controller host or port settings in one of these sources, it prompts you for the values at the command line. 

The following steps illustrate a simple installation scenario. The procedure assumes you already have an AppDynamics Controller installed and running. When installation is completed, the installation process leaves the Universal Agent running on the target machine. 

Install the Universal Agent on Linux

  1. Download the Universal Agent ZIP file to the machine where you want to deploy runtime agents.

    • To download from the controller source repository, use the following command. Substitute the placeholders with your username, account name and password, as indicated. Also replace <controller_host> with your controller hostname or IP address and <controller_port> with the primary listening port for your Controller.

      curl -u <user_name>@<account_name>:<password> \
      -X POST \
      -d 'action=downloadAgent&agentVersion=4.4.0.0&agentName=universalagent&classifier=64bit-linux' \
      -o ua4.4.0.0.zip 'http://<controller_host>:<controller_port>/controller/FileDownloadServlet'
    • If you are not using the Controller repository, you can directly copy the Universal Agent binary onto the machine where you want to deploy runtime agents.

  2. Extract the contents to the agent installation directory. This directory is referred to as <universal_agent_home> in these instructions.

    unzip ua4.4.0.0.zip 
  3. Specify the initial configuration settings for the Universal Agent. For instance, to configure the settings in the Universal Agent configuration file, follow these steps:  

    1. Navigate to the conf directory and open universalagent.yaml for editing. This file contains the configuration properties for the Universal Agent.

    2. Configure the settings with values that correspond to your Controller environment. The Universal Agent, and unless otherwise configured, the deployed runtime agents, use this information to connect to your Controller: 

      • controller_host: The hostname or IP address for the Controller. 

      • controller_port: The primary listening port for the Controller. If not specified, the Universal Agent uses port 80 or 443 (with SSL enabled), by default. 

      • account_name and account_access_key: The name and access key for the Controller account where the agents should report data. You can get the Account Name and Access Key from the License Management page. 

    3. If you want your agent to be registered with a given name, un-comment the name tag under the agent section and provide a value such as:

      name: your_agent_name

      If you do not provide an agent name, the name of the agent defaults to the hostname of the machine.

      Note that .yaml files use a fixed indentation scheme. Therefore, be careful that all the sections are indented correctly. Make sure that the sections controller and agent are indented correctly with the right number of spaces (not tabs). For example, if you un-comment account_name, account_access_key under controller section, you need to add a space to make it align with the other tags.

      Do not use tabs in universalagent.yaml. The YAML loader used by the agent does not support tabs.

  4. Specify the repository location. This is either the file location or network location where the Universal Agent gets the app agents to install. If using a local repository, see Runtime Agent Repository for instructions on setting up the repository. 

  5. Review and set any other properties in the configuration file applicable to your environment, as indicated by the inline comments.
  6. Run the install script to install the Universal Agent into a Linux or Unix system. 

    sudo ./ua4.5.0.0/bin/install.sh

    The Universal Agent starts immediately when installation is complete. It is registered as an automatically started service, so the Universal Agent starts automatically upon system reboots.

Linux Install Script Format

The syntax to run the install script is the following:

install.sh [ -p <param file>] [ --controller_host <controller host>] [ --controller_port <controller port>] [ --account_name <account name>] [ --account_access_key <account access key>] [ --target <target directory>]

The following sections describe each setting:

-p <param_file>

Optional. This optional argument specifies the full or partial path name of a text file that contains all of the arguments supported by the script.

When specified, the file must contain the same keywords and values specified on the install.sh command. For readability, these can be contained on multiple lines.  For example:

Example param file

--controller_host localhost
--controller_port 8080
CODE

A value specified on the command-line of install.sh, overrides a value specified in the file referenced by the -p argument.

--controller_host <value>

Required. AppDynamics Controller host name.

--controller_port <value>

Required. AppDynamics Controller port number.

--account_name <value>

Required. Name of the account under which the Universal Agent will report to the Controller. If you are running a single-tenant Controller, use the name of the default, built-in account, customer1.

--account_access_key <value>

Required. Account access key for the Universal Agent to authenticate with the Controller.

--target <value>

Optional. Specifies the target directory where the Universal Agent is installed. Default is /opt.

--no_service

Optional. Specifies that the ua daemon should not be defined as a service. In this case, you must manually start the ua daemon.

Example

In this example, the Controller host and account access key are found in paramfile.txt

ua4.5.0.0/bin/install.sh -p paramfile.txt --controller_port 8081 --account_name customer1

Sample contents of the paramfile.txt are: 

--controller_host localhost --controller_port 8080 --account_access_key 'abcdef$ghi'

The Controller port value specified in this file is ignored, because '-controller_port 8081' is specified on the command invocation.

Start and Stop the Universal Agent Linux Service

When the install script completes successfully, the Universal Agent is defined as a system service. You can start and stop it using Linux service commands.

In a systemd environment, use the following commands to start, stop, and restart the service:

  • systemctl start appdynamics-universal-agent
  • systemctl stop appdynamics-universal-agent
  • systemctl restart appdynamics-universal-agent

In a non-systemd environment, use the following commands:

  • service appdynamics-universal-agent start
  • service appdynamics-universal-agent stop
  • service appdynamics-universal-agent restart

Uninstall the Universal Agent

To uninstall the agent, as a sudo user run the CLI command passing the uninstall switch, as follows: 

./ua --uninstall