AppDynamics controller is the brain that processes the data sent from various agents to give deeper insights about the application performance.
In this post I’ll walk you through the installation procedure of controller on Windows. Here are the steps:
1. Choose the controller performance profile
Appdynamics defines multiple profiles based on the load the controller has to support. Primarily the number of nodes define the performance profile.
A node is the basic unit of the application environment monitored by an AppDynamics application agent or machine agent.
An application monitoring agent, or app agent, monitors the performance of your application. A machine agent monitors the performance of the hardware, operating system and network on which the application agents are installed.
Application agents are installed on:
- Windows .NET applications (IIS applications, standalone executables, or Windows services)
- PHP Runtime Instances
- Node.js processes
Machine agents are installed on virtual or physical operating systems.
More about nodes, tier and business applications later. Right now get to know how many nodes the application has and accordingly choose the performance profile using the following table.
2. Ensure the hardware requirements for the performance profile
Once the performance profile has chosen, use the following table to gauze the hardware requirements and OS choices.
I’ve chosen the demo profile and my PC configuration includes 3.2GHz CPU + 10GB RAM + 500 GB disk space. In that the ‘C’ drive is on a 100GB partition which is sufficient for the demo profile. And OS is Windows 8.
Your configuration may vary. But keep a buffer of storage should the need arise.
3. Download the controller and obtain the license file
Now create an account & download the controller from AppDynamics. The Appdynamics licensing model is based on the number of nodes you want to instrument. Compare Appdynamics Pro and Lite here. With Lite you can use AppDynamics for lifetime but the resolution will be only for 24 hours. Pro has an hourly resolution for one year! You can always upgrade to Pro from Lite whenever you want. Contact your nearest Appdynamics distributor for getting the license.
I’m using the Lite version in a testing environment.
4. Install and configure the controller
The controller binary loads the install4j wizard which will lead you step by step through the installation. Click next.
You’ll now be presented with the license terms to use AppDynamics controller.
You should read and understood before accepting it. I read it and here are the important points to pay attention to:
- You’re prohibited to sell, share, transfer or generate income from the software.
- You shouldn’t copy the software onto any public or distributed network. However you can do so in internal and secure cloud computing environment.
- You’re not supposed to decompile, disassemble or reverse engineer any portion of the software. Unless with a written authorization from AppDynamics, any attempt to discover the source code or operational mechanisms of the software is strongly discouraged.
- Modification or creation of derivative works based on the software is against the license agreement.
- Interestingly, you’re forbidden to use any third party software and publish the results of any benchmarking tests run on any third party software.
One thing that made me happy in the EULA content is this:
“AppDynamics uses random staggering on Agent data communication to the Software platform so traffic is spread evenly to minimize bursts and spikes of network traffic from End User’s data center to the Software platform.”
Once you accept the license agreement, a small window will pop up asking your consent to collect the usage information from the software. Depending on your privacy concern you can choose either yes or no.
Next step is to select the destination directory for binaries and other files. The default location is C:\AppDynamics\Controller. Unless you have a specific reason don’t change the default destination directory.
Now the installer validates the user input which will take few moments.
Next the wizard will ask you to enter the Appdynamics controller database root user’s password. Make a mental note of this because you need the password to upgrade the controller in future.
Now is the time to specify the controller connection settings. These are the settings the controller components will use for their communication needs.
Again keep the default settings unless you’ve special requirements. Following table lists the default ports of various services.
Connection information validation lasts for a few minutes.
Next is the controller tenancy mode configuration. You can choose either single tenancy or multi-tenancy. With multi-tenancy you can create multiple user accounts and authorize specific accounts to manage specific applications. In single tenancy mode all applications are managed by a single account we will create now. If you’re unsure of which mode to select, choose the single tenancy mode and you can also change to multi-tenancy later.
What follows next is the controller root user’s password configuration. Controller root user is the one who creates and manages user accounts in multi-tenant mode. Plus the same password is used to administer the controller Appserver. Make a mental note this password as well.
Next step is to set up the admin user which is the initial administrator for the controller. You need these credentials when first logging in to the controller UI. And this user is manages everything in single tenancy mode.
Next step is to select the performance profile depending on the maximum number of expected instrumented nodes and applications, which you’ve decided earlier in step 1. I’m in a lab environment with only one application. Hence the demo profile.
Next choose the Controller data directory for MySQL and Events service. Defaults are “C:\AppDynamics\Controller\db\data” & “C:\AppDynamics\Controller\events_service” respectively for MySQL DB and Events service.
The last step is to configure the controller for High Availability. Since I’m in a lab environment I’ve chosen the Not Applicable option. You may have to select the primary or secondary controller if you plan to have HA.
Prepare a cup of coffee during the time the controller gets installed, as it will take a while depending on the system configuration.
First all the files get extracted to the respective directories and the database is initialized and started followed by controller startup.
When done, the appdynamics controller setup wizard provides a convenient hyperlink to login to the controller.
Click the link and login using the credentials of admin user we set before.
The controller home page appears as you logged in.
Important notices may appear before the appearance of login page. Read them. If license.lic file not found, you’re not able to access the home page. In that case Appdynamics notifies you. All you need is to copy the license.lic file to the Appdynamics’ install directory (C:\AppDynamics\Controller).