This topic describes how to set up AppDynamics monitoring in multiple data centers for failover scenarios using AppDynamics App Agent for Java and Standalone Machine Agent. You configure AppDynamics so that you can monitor your application under normal circumstances and preserve your production-level baselines so you can continue monitoring in case of failover.
The most valuable time to have AppDynamics monitoring and alerting enabled is right after a failover, as this is the most likely time that significant problems have occurred. The procedure that we recommend sets up AppDynamics to use production-level baselines for your application after failover even when the failover node has no significant load history.
You accomplish this by performing the following tasks:
- Create the AppDynamics business application in each data center, using the same AppDynamics configuration settings in each application. Configure all nodes in one data center to point to the application for that data center.
- In case of failover of production load to another data center, flip the node configuration to point the nodes to the alternate application.
Configure Applications for Production and Backup Data Centers
Set up two data centers with exactly the same structure in terms of tiers, nodes and business transactions. One data center is for production, the other for backup.
Configure the App Agents for Java for both applications to use the same Controller.
In addition, configure the Application Name, Tier Name, Node Name, and Unique Host ID properties for every app agent and every standalone machine agent in both data centers. The Unique Host ID property provides identification for a node when you use the same node name for multiple nodes on the same physical machine. It is absolutely required to enable the model described here. For information on how to set it, see Unique Host ID Property.
To configure the app agents
1. Configure the Controller Host property and Controller Port property for the app and standalone machine agents so that these settings are the identical for all the agents in both data centers. This sets the agents in both data centers to use the same Controller.
2. Configure the app agent and the standalone machine agent Application Name, Tier Name, Node Name, and Unique Host ID properties for the application that you will deploy at the production datacenter and at the backup datacenter.
The Application Name and Unique Host ID properties must have different settings on the production and backup data centers. AppDynamics recommends that you use a string, such as "Prod", to identify one application as the production application and another string such as "Backup" to identify the other as the backup application. Whatever convention you use, it is absolutely necessary for the Unique Host ID properties to have different values on the production and backup servers. It does not matter whether the Tier Name and Node Name properties are different or the same in both data centers.
The configuration below suggests an appropriate naming scheme.
Flip Nodes During Datacenter Failover
If data center failover occurs:
1. Rename the Application name and Unique Host ID properties in the agent configurations in the production application to point to the backup application and vice-versa.
2. Restart the servers.
To rename the properties
1. Rename the Application Name and Unique Host ID properties of the app and standalone machine agents for the application on the backup datacenter to the names that were originally configured for the application at the production datacenter.
2. Reconfigure the Application Name and Unique Host ID properties of the app and standalone machine agents for the application on the production datacenter to the names that were originally configured for the application at the backup datacenter.
Now your app agent and standalone machine agent configurations should look like this:
To restart the servers
1. Stop each standalone machine agent process and re-start it so that it will pick up its new properties.
2. Restart each application server.
This will restart the app agents with their new properties.
3. Verify that the agents that were originally sending data to the backup application are now sending the new load data to the production application and that the agents that were originally sending data to the production application are sending new load data to the backup application.