Stress the app with AWS Systems Manager

AWS Systems Manager provides you safe, secure remote management of your instances at scale without logging into your servers, replacing the need for bastion hosts, SSH, or remote PowerShell. It provides a simple way of automating common administrative tasks across groups of instances such as registry edits, user management, and software and patch installations. Through integration with AWS Identity and Access Management (IAM), you can apply granular permissions to control the actions users can perform on instances. All actions taken with Systems Manager are recorded by AWS CloudTrail, allowing you to audit changes throughout your environment.

You will now emulate CPU stress on the instances in your automatic scaling group by issuing a remote command to each instance.

  1. Review ssm-stress.json to understand the options. There are no changes to be made. Then go ahead and send the command:

    aws ssm send-command --cli-input-json file://ssm-stress.json
    
  2. Browse to the AWS Systems Manager console to monitor the status of your run commands.

  3. Browse to the CloudWatch console to monitor the status of your alarms configured by the target tracking policy.

  4. Browse to the Auto Scaling console and watch the activity history. Notice that in a few minutes, it will begin to scale up the instances according to the CloudWatch alarms the target tracking policy has configured for you (check the Activity History tab and the Instances tab).

  5. Browse to the AWS CodeDeploy console, make sure your region is selected in the upper right-hand corner dropdown, and notice that CodeDeploy will automatically deploy the application to new instances launched by the auto scaling group.

    The CodeDeploy console will not default to your current region. Please make sure to click on Select a Region in the upper right-hand corner and select your region in the dropdown.