This topic describes how to install the AppDynamics Controller in a Windows environment.
For an overview of the Controller and its requirements, including supported operating systems, see Controller System Requirements.
The AppDynamics Controller Installer for Windows
The AppDynamics Controller installer for Windows is an executable binary that you can run in GUI mode, console mode, or in silent mode by passing the installer a response file from the command line.
All software components required for Controller installation are bundled with the installer, so you do not normally need to install additional software to install the Controller.
Pre-installation Checklist for Windows
- For optimum stability and performance, AppDynamics strongly recommends that you install the Controller on a dedicated machine.
- The disk space requirements differ for each of the Controller Performance Profiles. Verify that there is enough disk space for the performance profile that describes your environment.
- Confirm the correct CPU, RAM and Disk I/O capacity for the Controller Performance Profile you plan to install. Run the Disk I/O measurement tests described at To measure available Disk I/O.
- When performing the installation, the installer attempts to start up the system. Depending on system resources or other factors, this can take a considerable amount of time. If startup exceeds the 30 minute default timeout, the installer exits but leaves changes on disk, so that you can troubleshoot the issue. When finished, remove the installation directory manually and restart the installation. Optionally, you can extend the timeout by passing the ad-timeout-in-min command line parameter with the new value in minutes to the installer.
- Open the HTTP port that the Controller will use to communicate with agents and the AppDynamics UI.
- Verify that you have administrative privileges on the Windows machine to launch the Controller installer.
During the installation procedure you configure several accounts for the Controller, including the database account, a root user in the Controller, and an administrator in the Controller. The usernames and password for Controller cannot include the @ character. Also, if this user will be used to authenticate REST calls to the Controller REST API, additional limitations on the use of special characters in usernames apply. See Configure Users for more information.
Guidelines for Running the Controller on Windows
In addition to the general prerequisites listed in Pre-installation Checklist for Windows, several operational guidelines apply to running the AppDynamics Controller on Windows. These guidelines are specifically intended to prevent the possibility of Controller data corruption due to conflicts with other Windows processes.
You can configure your system as described by the guidelines after installing the Controller, but it is important to note what changes your system will need before starting installation.
- After installing the Controller, configure it to run as a Windows service. If you start the Controller manually rather than as a service, Controller processes will be terminated on user logout. Terminating the Controller in this manner can result in corrupted Controller data. For instructions on installing the Controller as a service, see Install the Controller as a Windows Service.
Configure virus scanners on the target machine to ignore the AppDynamics database directory. Code is never executed from the data directory, so it is generally safe to exclude this directory from virus scanning. The default location of the data directory is <Controller_Installation_Directory>\db\data.
- Exclude the Controller data directory (<Controller_Installation_Directory>\db\data) from scanning by Windows Defender. If you are not sure whether Windows Defender is running on the system, check for it in your local Services list. You can either configure the Controller data directory to be excluded in the Windows Defender Control Panel, or disable the service altogether if it is not needed. For details on how to view services and exclude directories in Windows Defender, refer to the documentation for your version of Windows.
Ensure that the Windows indexing service is configured to ignore the Controller data directory (<Controller_Installation_Directory>\db\data):
The data directory does not contain any files that are meaningful to the indexer, so it can be excluded from indexing. To exclude the directory from indexing, you can add the directory to the excluded directories list in the Indexer Control Panel, disable indexing in directory preferences, or stop the indexing service entirely.
To add the directory to the excluded directory list, follow these steps:
- From the Control Panel Indexing Options dialog, click the Modify button.
- In the Indexed Locations dialog, navigate to and select the Controller data directory:
- Clear the check box for the data directory and click OK.
- Configure the Windows Update preferences so that the server is not automatically restarted after an update. To configure the restart policy:
- Open the Local Group Policy Editor window (search for and run the "gpedit" executable).
- Navigate to the Windows Update component. In the tree, you can find it under Local Computer Policy -> Computer Configuration -> Administrative Templates -> Windows Components.
- Double-click on the "No auto-restart..." setting, as shown in the following figure.
- Select the Enabled option and click Apply.
- Never stop the Controller or its individual services (the AppDynamics Application service or AppDynamics Database services) from the task manager. To stop and restart the AppDynamics processes, after setting up the Controller to run as a service, start the command prompt program as administrator and run the scripts for starting and stopping the service, as documented in Install the Controller as a Windows Service.
If you do not follow these guidelines and the database log (<Controller_Installation_Directory>\logs\database.log) contains errors indicating missing .frm or .ibd files, it is possible that the Controller data has become corrupted. In this case, open a help ticket with AppDynamics support.
Download and Launch the Windows Installer
To download and launch the Controller Installer for Windows
- Download the Controller installer for either 32- or 64-bit Windows from the AppDynamics Download Center.
From the Windows Start menu, right-click on the Command Prompt icon and choose Run as administrator.
At the command prompt, navigate to the download directory and run the installer as follows:
In GUI mode:
To run the installer in console mode or against in non-interactive mode (with settings taken from a configuration file), use the -c or -q options, respectively.
For example, to install in console mode:
See Install an On-Premise Controller Silently for information on installing in non-interactive mode.
To install the Controller on Windows
- In the Welcome screen click Next.
The license agreement displays.
- Scroll down to the bottom and accept the license agreement, then click Next.
- Click Yes to grant or No to deny AppDynamics permission to collect usage data statistics from your controller.
The data collected helps AppDynamics improve its products and services.
- Set the path of the Controller installation directory in the Destination directory field, then click Next.
- Enter the password for the database user that the Controller will use to access the database where it stores its data. The installer creates a user account named root in the database with the password you specify.
- In the Application Server Host Name field type the host name (or IP address), or accept the default.
- Verify the port numbers to be used by the Controller. To change a default port, click Edit Ports and enter the new port number.
Note that the installer checks the availability of each port on the target machine before suggesting it. If a default port number is already in use, it chooses the next highest available number for the port. For example, if the usual default port of 8090 for the Controller application server is taken, the installer suggests 8091. You only need to edit a default port number if you know it will cause a future conflict or if you have some other specific reason for choosing another port.
Examine the default configuration of the internal Controller ports and modify the settings as necessary if other services are bound to these ports. Then click Next.
- Verify the displayed configured settings and click Back if you want to change any of them. Click Next to continue.
- Choose single-tenant or multi-tenant mode for the Controller, then click Next.
See Controller Tenant Mode for more information about these modes.
- Enter the password for the root user account in the Controller.
The Controller root user is a special type of administrative account that has global privileges in the Controller. The root user credentials let you access the global AppDynamics administration console, where you can create and manage AppDynamics accounts and configure other Controller-wide settings. See Access the Administration Console for more information about the console.
- Configure initial account settings, as follows:
- If you selected single-tenancy mode, enter the username and password for the administrator of the built-in account.
- If you selected multi-tenancy mode:
- Enter a name for the initial account in the system, along with a username and password for the administrator for the initial account.
- Review and record the settings for the initial account settings and click Next.
You will need to configure the App Agents with this account key and account name to associate the application with a particular account.
- Select the Controller performance profile that matches your requirements, then click Next.
Note that only Demo and Small profile deployments are available for installation on 32-bit systems. When you click Next, the installer checks your system for minimum requirements and warns you if any are not met.
- In the data directory settings, enter the path to the MySQL data directory and to the Elastic Search data directory and then click Next.
The Controller stores configuration and metric data in the directory indicated in the MySQL data directory field. The Elastic Search data directory is used by Database Monitoring features. If you are storing MySQL data outside the default location, say in a separate disk partition, it is likely that the Elastic Search data directory would need to be put in the same location. If you are not sure whether you will use database monitoring, you can keep the default location for now and change the data directory location later, if needed, in the events_service\analytics-processor\conf\analytics-all.properties file.
- Select the high availability configuration for the Controller or Not Applicable if you are not enabling HA for this Controller. Then click Next. For more information see Manage Controller High Availability.
With the initial configuration settings gathered, the installer copies the files to the installation directory and configures the new instance.
Verifying Controller Installation
Wait for the installation status screen to show that the installation is complete. Then the Controller will automatically start.
To verify the success of your installation, do one of the following:
- Click the link to the Controller provided in the installer's "Finish" screen.
Next Steps for Windows
Apply the License File
To access the Controller UI, you need to have a valid license. For a trial installation, the license file (license.lic) is bundled in your download. Otherwise, you may have acquired the license file from AppDynamics. If needed, copy the license file to the Controller installation directory:
After moving a license file to the Controller home, allow up to 5 minutes for the license change to take effect.
Configure the Controller to Run as a Windows Service
By default the Controller is not installed as a Windows service. AppDynamics strongly recommends that the Controller runs as a service on Windows.
See Install the Controller as a Windows Service for information on configuring the installed Controller to run as a service on Windows.
Exclude the Controller Data Directory from Scanning and Indexing
See operational guidelines for information on how to exclude the Controller data directory from scanning by virus detection software or Windows Defender and from indexing by the Windows indexing service.
See Controller Data Backup and Restore.