Question

Difficulty: HardHigh-Performing and Elastic Compute Solutions

A research institution is deploying a seismic data processing workload on AWS that requires high-performance computing (HPC) nodes. The nodes must exchange data frequently using Message Passing Interface (MPI) with node-to-node latency of less than 10 μs10\ \mu\text{s}. The workload is deployed on a fleet of memory-optimized Amazon EC2 instances managed by an Auto Scaling group. The Auto Scaling group registers the instances with a Network Load Balancer (NLB) that routes control plane traffic on port 90009000. However, the application's internal status and health-reporting service runs on a separate monitoring daemon on port 80818081. Which configuration combination should a solutions architect implement to ensure both optimal compute performance and accurate health monitoring of the instances?

  1. A
    Deploy the EC2 instances in a partition placement group. Configure the NLB target group health checks to use port 80818081.
  2. Deploy the EC2 instances in a cluster placement group. Configure the NLB target group health checks to use port 80818081.Answer
  3. C
    Deploy the EC2 instances in a cluster placement group. Configure the NLB target group health checks to use port 90009000.
  4. D
    Deploy the EC2 instances in a spread placement group. Configure the NLB target group health checks to use port 90009000.

Answer

Deploy the EC2 instances in a cluster placement group and configure the NLB target group health checks to use port 80818081.
To achieve low-latency, high-throughput node-to-node communication required for MPI workloads, instances must be placed in close proximity. A cluster placement group packs instances close together within a single Availability Zone, enabling low-latency network performance. Additionally, because the application's health status is reported on port 80818081 instead of the traffic port 90009000, the NLB target group health checks must be explicitly configured to query port 80818081. Otherwise, the load balancer will query the wrong port and fail to monitor the instance status correctly.

Step-by-Step Solution

1
Analyze the network requirements of the compute workload.
The workload uses MPI and requires low-latency, high-performance node-to-node communication (less than 10 μs10\ \mu\text{s} latency).
Identifying the networking profile helps select the appropriate EC2 placement strategy.
2
Select the correct EC2 placement group type.
Choose a cluster placement group because it packs instances close together within a single Availability Zone, which minimizes latency and maximizes network performance.
Spread and partition placement groups are designed for fault isolation and introduce latency that is incompatible with tightly-coupled MPI requirements.
3
Identify the ports used for application traffic and health checks.
Application traffic is routed to port 90009000, while the health and status reporting daemon runs on port 80818081.
The load balancer needs to route user traffic and perform health probes on their respective correct ports.
4
Configure the target group health check settings.
Set the target group health check port to port 80818081 instead of using the default traffic port (90009000).
Probing port 90009000 would check the traffic listener instead of the health-reporting daemon, which results in inaccurate health status reporting.

Key Concept

Tightly-coupled high-performance compute placement and custom health check port routing in AWS SAA architectures.
Rate this question