Correct Answer: B, DTo achieve high availability for the application running on EC2 instances in a single Availability Zone, it is necessary to distribute the load across multiple Availability Zones and ensure that resources can automatically scale in response to demand. Configuring a Network Load Balancer (NLB) is effective in this scenario because NLBs operate at the transport layer (OSI Layer 4) and are well-suited for handling TCP traffic, which is the specified layer in the question. Additionally, creating an Auto Scaling group and configuring it to use multiple Availability Zones ensures that new instances can be launched in another AZ if one becomes unavailable, enhancing the fault tolerance and high availability of the application without overcomplicating or incurring unnecessary costs.