You are here
AWS Auto Scaling Monitoring
AWS Auto Scaling is a web service designed to launch or terminate Amazon EC2 instances based on user-defined policies, schedules, and health checks. Application Auto Scaling automatically scales supported AWS services with an experience similar to Auto Scaling for EC2 resources.
What Can You Monitor
Opsview Monitor's AWS AutoScaling Opspack provides all the latest metrics to track group instance performance. Service checks included in the Opspack help you identify how your autoscaling group is growing or shrinking. Utilize status data from Cloudwatch to show how many instances are pending, in service or in stand by. If you wish to gain further insight about each instance, make sure to use the EC2 Opspack for performance data such as CPU, disk reads/writes and network in/out.
Note: This Opspack knows when it was last run, so when testing the results in the troubleshoot section, you will need to wait a couple of minutes each time you recheck the results. The time frame that is searched for is based around the last time the Opspack ran, so running it too quickly will result in no data being found and the service check going into an unknown.
Service Checks
Service Check | Description |
---|---|
AWS/AutoScaling.GroupMinSize | The minimum size of the Auto Scaling group. |
AWS/AutoScaling.GroupMaxSize | The maximum size of the Auto Scaling group. |
AWS/AutoScaling.GroupDesiredCapacity | The number of instances that the Auto Scaling group attempts to maintain. |
AWS/AutoScaling.GroupInServiceInstances | The number of instances that are running as part of the Auto Scaling group. This metric does not include instances that are pending or terminating. |
AWS/AutoScaling.GroupPendingInstances | The number of instances that are pending. A pending instance is not yet in service. This metric does not include instances that are in service or terminating. |
AWS/AutoScaling.GroupStandbyInstances | The number of instances that are in a Standby state. Instances in this state are still running, but are not actively in service. |
AWS/AutoScaling.GroupTerminatingInstances | The number of instances that are in the process of terminating. This metric does not include instances that are in service or pending. |
AWS/AutoScaling.GroupTotalInstances | The total number of instances in the Auto Scaling group. This metric identifies the number of instances that are in service, pending, and terminating. |
AWS Auto Scaling Monitoring Prerequisites
To be able to monitor AWS CloudWatch services, you need to add your AWS credentials to your Opsview Monitor server.
Create a temporary aws_credentials.cfg
file with the following contents:
[default]
aws_access_key_id = "Your Access Key Id"
aws_secret_access_key = "Your Secret Key Id"
Then run the following command as the opsview
user to import this file:
/opt/opsview/orchestrator/bin/orchestratorimportscripts etc-plugins cloud-aws /path/to/aws_credentials.cfg
After an Apply Changes has been run, this will be distributed to the live location on all Opsview collectors.
The default live location for this file is /opt/opsview/monitoringscripts/etc/plugins/cloud-aws/aws_credentials.cfg
. If you are not using the default location, you will need to assign your full path to the variable: AWS_CLOUDWATCH_AUTHENTICATION
.
Setup and Configuration
To configure and utilize this Opspack, you need to add the 'Cloud - AWS - AutoScaling CloudWatch' Opspack to the host running the AutoScaling software.
Step 1: Add the Host Template
Add the Cloud - AWS - AutoScaling CloudWatch Host Template to your Opsview Monitor host. Add the Primary Hostname/IP. This can be the Public DNS (IPV4) or IPV4 Public IP from the Description tab of an EC2 instance in the EC2 Console in AWS.
For more information, refer to Opsview Knowledge Center - Adding Host Templates to Hosts.
Step 2: Add and configure variables required for this host
Variable | Description |
---|---|
AWS_CLOUDWATCH_AUTHENTICATION | Authentication details for CloudWatch. The Value is not used and therefore can be set to anything. Either override the File Path with the location of your credentials file, or override the Access Key and Secret Key arguments (this approach is recommended as the values will be encrypted). Optionally, override the Region (default: eu-west-1) with the location of your instance if you are not using the default region. |
AWS_CLOUDWATCH_ROLE_ARN | This optional variable is the Amazon Resource Name (ARN) of the role to be used for the service checks. Override the Access ARN with the ARN of the role. The account should have AssumeRole(STS) for this ARN. |
AWS_AUTOSCALING_GROUP_NAME | The AutoScaling Group name from AWS. |
For more information, refer to Opsview Knowledge Center - Adding Variables to Hosts.