On this page: Search Universal Agent topics:
On this page:
Search Universal Agent topics:
The Universal Agent provides a central management point for administering runtime agents for diverse application environments and eases the management of large environments. The Universal Agent automates the tasks of installing, running, and maintaining AppDynamics runtime agents, such as the Machine Agent and Java Agent.
After you set up the Universal Agent, you can update the versions of the runtime agents by putting new distributions in the repository and updating the configuration with the new version. To further ease agent management in large and dynamic environment, the Universal Agent configuration supports remote JVM attachment and dynamic node naming. This topic describes how to set up and use the Universal Agent.
The Universal Agent enables you to run and manage AppDynamics runtime agents by using a single configuration file, called a rulebook. The rulebook determines whether the Universal Agent installs, starts, and stops runtime agents. By default, the Universal Agent runs in controller mode and applies a shared rulebook stored and served by the Controller. Alternatively, you can run the Universal Agent in local mode, in which it uses a rulebook (stored in the Universal Agent home directory) that is specific to the instance of the agent. See Universal Agent Rulebooks for more details on operation modes.
When the Universal Agent finds a new rule for a runtime agent in the rulebook, it retrieves the runtime agent from a common repository, installs the agent as a local monitor, and starts the agent. You can manage multiple runtime agents on a single host, which allows for having different versions of the runtime agents for each JVM or for each host in your environment.
The Universal Agent is available on Linux and Windows and supports deployment and management of the following runtime agents:
Some Universal Agent features (such as automatic JVM attachment and dynamic rulebook value propagation) have additional requirements and limitations, which are discussed in the feature documentation.
To use the Universal Agent you need to do the following tasks:
The following procedures walk you through the three set-up tasks for a simple scenario using a single Linux-based application server with an on-premises Controller. On Linux, these steps require
sudo access to the application server machine, because the Universal Agent is installed as a service.
When following these steps, adjust the values in the commands for your specific Controller, user, account, and so on.
This procedure sets up a Controller source repository.
<controller_home>/agent_binariesdirectory. This serves as your Controller source repository for the runtime agent binaries.
Get the account key for your Controller:
From the application server machine, get the Universal Agent distribution. You can use the following cURL command to get the Universal Agent from the Controller repository.
Replace the controller user, account, password, Controller host address and port with values for your system. The user should be an account in the Controller UI that has Universal Agent administration permissions. Replace account_access_key with your own key.
By default, the script installs the agent in
/opt/appdynamics/universal-agent/. You can change that using the
-target argument, but the steps (below) for creating your rulebooks assume the default installation location,
From the application server machine (where the Universal Agent is installed) Execute a REST API command against your Controller to add a single default rulebook.
Replace controller-user, controller-account, controller-password, controller-host, and controller-port with the values for your Controller.
In the JSON rules, line indentation is important. Make sure that any new rules match the indentation style in the existing rules.
Check the status of the Universal Agent as reported to the Controller using the REST API,
universalagent/v1/user/agents/summary. For instance, using cURL, enter the following command:
Replace the username, password, and Controller address with values appropriate for your environment. The response should list the running agents with the version number and applied rulebook for each.