What should the solutions architect do to accomplish this?
Use Auto Scaling with Reserved Instances.
Use Auto Scaling with a scheduled scaling policy.
Use Auto Scaling with the suspend-resume feature.
Use Auto Scaling with a target tracking scaling policy.
Explanations:
Using Auto Scaling with Reserved Instances helps reduce costs but does not directly optimize costs based on variable demand. Reserved Instances require a commitment to usage over a period, which may not align with fluctuating traffic, leading to potential over-provisioning.
Scheduled scaling policies are useful for predictable traffic patterns but do not adapt to real-time demand changes. This could lead to either under-provisioning during unexpected spikes or over-provisioning during low-demand periods.
The suspend-resume feature temporarily pauses Auto Scaling activities, which does not address cost optimization or performance during variable demand. It may lead to missed opportunities to adjust capacity dynamically, resulting in potential over-provisioning.
Target tracking scaling policies automatically adjust the number of EC2 instances based on real-time demand metrics (e.g., CPU utilization or request count). This ensures that resources are efficiently utilized and costs are optimized without impacting performance, as it scales up or down according to actual demand.