Unable to stress Memory On EC2 Instances using AWSFIS-Run-Memory-Stress

0

Hi,

I am attempting to use a FIS experiment template I have created and using the AWSFIS-Run-Memory-Stress SSM document to test the memory on several OS flavours of EC2 instances I have. These are t2.micro based and the Operating Systems I am trying to test are:

  • Amazon Linux 2
  • Amazon Linux 2023
  • RHEL8
  • RHEL9

I am passing in the following parameters to the experiment template:

{"DurationSeconds":"1200","InstallDependencies":"True","Percent":"80"}

Each Instance has a CloudWatch alarm using the mem_used_percent metric that monitor's the Average memory usage over a 15 minute period. My test is to check the Alarm goes into the alarm state when the memory is >= 80 over that time period. The average memory is not getting close to 80%. Even looking the maximum value of this time period I can see it is not getting to 80%

Has anyone used AWSFIS-Run-Memory-Stress SSM that could advise why this might be the case? Or if there is something missing in my setup or something I have overlooked?

From looking at the code for the AWSFIS-Run-Memory-Stress SSM document I can see that it is running the following:

stress-ng --vm 1 --vm-bytes 80% --vm-populate -t 1200s

Side Note: I am using similar experiment templates for CPU and Disk by using the appropriate SSM FIS documents and these are getting me the expected results for my test cases. It is just the memory tests where I am not getting expected results.

Jon
asked a month ago135 views
1 Answer
0

Hello Jon!

For troubleshooting the issue of not reaching the expected 80% memory usage during AWSFIS memory stress tests on EC2 instances, make sure your monitoring tools like CloudWatch Agent are correctly capturing memory metrics. It's also important to check that the baseline memory consumption by the OS and background processes isn't too high before the stress test begins. Adjusting the parameters of stress-ng or trying it directly on an instance might reveal more about its impact on memory usage. Consider the possibility that t2.micro instances may not have sufficient resources for the intensity of your test, so experimenting with instances that have more memory could offer better results. Ensuring that all necessary dependencies for stress-ng and the AWSFIS-Run-Memory-Stress document are installed is crucial. Finally, review your CloudWatch alarms to make sure they're set up to accurately detect the conditions you're testing for.

I'm here to help.

profile picture
answered a month ago
profile picture
EXPERT
reviewed a month ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions