Which combination of actions will meet these requirements?
(Choose two.)
Change the Auto Scaling configuration to replace the instances when they fail the load balancer’s health checks.
Change the target group health check HealthCheckIntervalSeconds parameter to reduce the interval between health checks.
Change the target group health checks from HTTP to TCP to check if the port where the application is listening is reachable.
Enable the available memory consumption metric within the Amazon CloudWatch dashboard for the entire Auto Scaling group. Create an alarm when the memory utilization is high. Associate an Amazon SNS topic to the alarm to receive notifications when the alarm goes off.
Use the Amazon CloudWatch agent to collect the memory utilization of the EC2 instances in the Auto Scaling group. Create an alarm when the memory utilization is high and associate an Amazon SNS topic to receive a notification.
Explanations:
Changing the Auto Scaling configuration to replace instances when they fail the load balancer’s health checks ensures that new instances are launched to replace failing ones, improving resilience.
Reducing the interval between health checks does not address the root cause of the issue, which is an out-of-memory condition. It may increase unnecessary health check failures but not resolve the memory leak.
Changing the health check from HTTP to TCP checks if the port is reachable, but it doesn’t ensure the application is functioning properly, nor does it help with memory leak detection.
CloudWatch by default does not provide memory utilization metrics for EC2 instances, and the Auto Scaling group metric dashboard doesn’t provide detailed memory metrics without custom configurations.
Using the CloudWatch agent to collect detailed memory utilization metrics from EC2 instances enables proactive monitoring of memory usage, with the ability to create alarms and notify stakeholders through SNS when thresholds are exceeded.