For the list of supported platforms, see Supported Platforms and for other Smart Agent requirements, see Smart Agent.

This document contains references to the AnsibleĀ® documentation. Splunk AppDynamics does not own any rights and assumes no responsibility for the accuracy or completeness of such third-party documentation.


This table outlines the steps to get started with Smart Agent:

  1. Ensure you check the Smart Agent Requirements.
  2. Install Smart Agent
  3. Configure Smart Agent
  4. Start Smart Agent Process
  5. Validate Smart Agent Installation

Install Smart Agent

You can install Smart Agent on the host machines by logging in to each machine. You can download the respective files from the Download Portal to the required host machine.

Agent Management provides Smart Agent CLI that you may use to automate installation of Smart Agent on multiple hosts.

Run the following command to install Smart Agent on the host machine: 

Debian

sudo [env [APPD_USER=<root-user>] [APPD_USER_GROUP=root] [APPD_SMARTAGENT_PYTHON3=<path to python>]] apt install ./appdsmartagent_<version>_amd64.deb
CODE

This installs Smart Agent at the default location  at /opt/appdynamics/appdsmartagent.

Centos/RHEL

sudo [env APPD_USER=<root-user>] [APPD_USER_GROUP=root APPD_SMARTAGENT_PYTHON3=<path to python>]] yum install ./appdsmartagent_<version>_amd64.rpm
CODE

This installs Smart Agent at the default location  at /opt/appdynamics/appdsmartagent.

Smart Agent is supported on RHEL >=8.

Linux zip

Unzip the files at any location, then run the following command:

sudo [env [APPD_USER=<root-user>] [APPD_USER_GROUP=root] [APPD_SMARTAGENT_PYTHON3=<path to python>]] ./install-script.sh 
CODE

Windows 

  1. Unzip the Windows zip file to any location.
  2. Open Command Line as an administrator.
  3. Run appdsmartagent-service.bat. The batch script creates appdsmartagent Windows service, and then runs it.
    After you run this script, the Smart Agent keeps running as a Windows service on the host machine.


To install Smart Agent on multiple hosts, see Automate Smart Agent Installation on Multiple Nodes.

The following table provides the variable details:

Variable NameDescriptionRequiredDefault Value
APPD_USERUser with which Smart Agent Process should run Noroot
APPD_User_GROUPGroup with which Smart Agent Process should run Noroot
APPD_SMARTAGENT_PYTHON3Python3 interpreter to be used by Smart AgentNo

/opt/appdynamics/appdsmartagent/plugins/appdenv/bin/python3

  • When you specify APPD_SMARTAGENT_PYTHON3 for installation, the Python 3 binary is used to create a virtual environment at <smartagent-dir>/plugins/appdenv and move the default python interpreter that comes with Smart Agent (PyPy) to the <smartagent-dir>/plugins/appdenvbak backup folder.
  • This is not required if you are installing Smart Agent for managing Java or Machine Agent.



Configure Smart Agent

You require to configure Smart Agents to register with Controller. Edit the configuration file. See /opt/appdynamics/appdsmartagent/config.ini file if you have downloaded the install files at /opt/appdynamics. 

Basic Configuration

The basic configuration is the required configuration to register Smart Agent with Controller. Ensure that you update the following parameters for the basic Smart Agent configuration:

    • ControllerURL: The URL of the Controller on which you want to establish the connection with the Smart Agent.
    • FMServicePort: The port to which the Smart Agent connects to the FM service (Agent Management). It is 8030 for an on-premises Controller and 443 for a SaaS Controller. 
    • AccountAccessKey: The account access key on the Controller.
    • AccountName: The account name on the Controller to which the Smart Agent will report.

      config.ini

      ControllerURL    =
      ControllerPort   = 443
      FMServicePort  = 8030
      AgentType        =
      AccountAccessKey =
      AccountName      = 
      EnableSSL      = true
      
      [CommonConfig]
      ServiceName           =
      ServiceNamespace      =
      RequestTimeoutSeconds = 0
      AgentName             =
      PollingIntervalInSec  =
      
      [OAuth]
      OAuthID      =
      OAuthSecret  =
      AuthEndpoint =
      TenantID     =
      Scopes       =
      
      [HTTPClientSettings]
      Timeout = 0
      
      [TLSClientSetting]
      Insecure = false
      AgentHTTPProxy  =
      AgentHTTPSProxy =
      AgentNoProxy    =
      
      [TLSSetting]
      CAFile     =
      CertFile   =
      KeyFile    =
      MinVersion = TLS 1.2
      MaxVersion = TLS 1.3
      
      [AutoDiscovery]
      RunAutoDiscovery = false
      AutoInstall = false
      ExcludeLabels = process.cpu.usage,process.memory.usage
      ExcludeProcesses =
      ExcludeUsers =
      AutoDiscoveryTimeInterval = 4h
      
      [AnsibleConfig]
      ExtraVars = create_appdynamics_user=false,add_ansible_install_env_var=false,check_pkg_dependencies=false,download_script=py
      EnvVars = ANSIBLE_STDOUT_CALLBACK=appdynamics.agents.smartagent_callback
      Verbose =
      
      [Telemetry]
      LogLevel=info
      LogFile=
      Profiling=false 
      YML

Advanced Configuration

You can use the following configurations as per your requirement. These are not mandatory parameters. You can also include these configurations after Smart Agent installation, but ensure to restart Smart Agent to apply the configuration.

Proxy Configuration

If you require to configure the proxy settings, specify the following fields under the TLSClientSetting section of the config.ini file.

ParameterDescriptionExample
AgentHTTPProxyspecify this parameter to use the HTTP proxy URL for Smart Agent.

http://localhost:3128

AgentHTTPSProxyspecify this parameter to use the HTTPS proxy URL for Smart Agent.https://myhost:8443
AgentNoProxyspecify this parameter if you do not require to use any proxy for the Smart Agent. The value can be true or falsefalse

The following example is for using the HTTP proxy for the Smart Agent.

[TLSClientSetting]
Insecure = false
AgentHTTPProxy  = http://localhost:3128
AgentHTTPSProxy =
AgentNoProxy    = 
CODE
Log Level Configuration

 You can specify the log level details in the Telemetry section. You can use any of the following log levels:

  • debug
  •  info
  • warn
  • error

The following example is for using the info log level:

[Telemetry]
LogLevel=info
LogFile=
Profiling=false 
CODE


Start Smart Agent Process

Smart Agent is managed as a system service. Use the following command to start the Smart Agent service:

For Linux
$ [sudo]systemctl start smartagent.service 
CODE

To restart or stop the Smart Agent service, you can use the following command:

$ [sudo] systemctl {restart|stop} smartagent.service  
CODE
For Windows

The Smart Agent service starts when you run the appdsmartagent-service.bat file. You can also run the following command using the command line interface:

sc start appdsmartagent
CODE

To stop the service, you can use the following command:

sc stop appdsmartagent
CODE

Validate Smart Agent Installation

Ensure that Smart Agent installation is successful by validating the following steps:

  1. Validate the status of Smart Agent service on the host machine.
  2. Validate the status of Smart Agent registration on the Controller UI.

Status of Smart Agent Service on the Host

Run the following command from the host machine to check the status of Smart Agent service:

Validate

$ [sudo] systemctl status smartagent.service

Validate Status of the Smart Agent Registration on the UI

  1. Navigate to Home > Agent Management > Manage Agents > Smart Agents
  2. The smart agent entry for the host on which it is installed gets displayed in the table.