Amazon Web Services (AWS) EC2 Cloud Connector Extension

Use Case

 

Elastically grow/shrink instances into cloud/virtualized environments. There are four use cases for the connector.

 

First, if the Controller detects that the load on the machine instances hosting an application is too high, the aws-connector-extension may be used to automate creation of new virtual machines to host that application. The end goal is to reduce the load across the application by horizontally scaling up application machine instances.

 

Second, if the Controller detects that the load on the machine instances hosting an application is below some minimum threshold, the aws-connector-extension may be used to terminate virtual machines running that application. The end goal is to save power/usage costs without sacrificing application performance by horizontally scaling down application machine instances.

 

Third, if the Controller detects that a machine instance has terminated unexpectedly when the connector refreshes an application machine state, the aws-connector-extension may be used to create a replacement virtual machine to replace the terminated application machine instance. This is known as our failover feature.

 

Lastly, the aws-connector-extension may be used to stage migration of an application from a physical to virtual infrastructure. Or the aws-connector-extension may be used to add additional virtual capacity to an application to augment a preexisting physical infrastructure hosting the application.

 

Installation

  1. Download and unzip the aws-connector zip file into the <controller install dir>/lib/connectors directory.
  2. Restart the Controller and then log into AppDynamics.
  3. In the upper right corner of the window, click Setup -> My Preferences. In the Advanced Features section, enable Show Cloud Auto-Scaling features if it is not enabled.
  4. In the left navigation pane, click Cloud Auto-Scaling to configure the compute cloud and the image.
    • Click Compute Clouds -> Register Compute Cloud. Fill in the required information (shown in the image below) and then click Register Compute Cloud to save the information.

       

 

    • Click Images -> Register Image. Fill in the required information (shown in the image below) and then click Register Image to save the information.

       

 

    • Select an Image from the list and click on Launch Instance. Fill in the details and then click on Launch Instance button to launch the instance. Make sure you have selected appropriate Instance Type for the AMI specified in the Image. For the list of Instance Type and AMI matrix goto http://aws.amazon.com/amazon-linux-ami/instance-type-matrix .

       

      Note:
      1. When proving "Subnet ID" you can not use "Security Group". You should use "Security Group ID".
      2. "Subnet ID" will be ignored if you dont provide atleast one "Security Group Id".

Contributing

Always feel free to fork and contribute any changes directly via GitHub.

 

Support

For any support questions, please contact AppDynamics Center of Excellence.

 

Version:

1.2

Compatibility:

3.6 and above

Last Update:

2 DEC 2015

 

Release Notes:

  • Version 1.1  (06/25/2014)
    1) Removed typica library and using AWS client library
    2) Fix for Name not specified error
    3) Added option to provide name for the AWS instance
    4) Added all AWS supported regions and instance types
    
  • Version 1.2  (12/02/2015)
    1) Added support to provide SubnetID and Security Group Id
    
  • Version 1.2.1  (01 Dec 2016)
    1) Code changes to make the connector work with 4.3 controller.