A financial analytics company runs an I/O-intensive reporting application on a Compute Engine Regional Managed Instance Group (MIG) behind an External HTTP(S) Load Balancer. During sudden high-volume processing events, backend instances experience severe memory saturation and active connection pool exhaustion, leading to dropped client requests while CPU utilization stays consistently below 25%. Furthermore, during a recent brief upstream database latency spike, the load balancer marked all backend instances as unhealthy simultaneously because the health check probes an endpoint that performs a live query on the database. Which architectural modification best resolves both the autoscaling failure and the cascading health check failure?
- Configure MIG autoscaling using Custom Cloud Monitoring metrics for memory utilization and database connection pool saturation, and point the load balancer health check to a lightweight local application status endpoint that does not probe downstream database dependencies.Cevap
- BLower the target CPU utilization threshold for the MIG autoscaler from 60% to 15%, and point the load balancer health check to a lightweight local application status endpoint that does not probe downstream database dependencies.
- CConfigure MIG autoscaling using Custom Cloud Monitoring metrics for memory utilization and database connection pool saturation, while increasing the load balancer health check check interval and timeout settings for the deep database query endpoint.
- DMigrate the compute workload to a Google Kubernetes Engine (GKE) Autopilot cluster equipped with Horizontal Pod Autoscaling (HPA) based on standard CPU metrics, and configure the ingress health check to probe the database query endpoint.
Cevap
Configure MIG autoscaling using Custom Cloud Monitoring metrics for memory utilization and database connection pool saturation, and point the load balancer health check to a lightweight local application status endpoint that does not probe downstream database dependencies.
The correct solution addresses both root causes directly. For I/O-bound applications that exhaust memory or connection pools without increasing CPU load, MIG autoscaling must be configured using custom metrics published to Cloud Monitoring. Additionally, load balancer health checks should probe a shallow, local HTTP endpoint on the application server (evaluating local process health) rather than querying backend databases, preventing transient database latency from causing cascading instance removals.
Adım Adım Çözüm
Anahtar Kavram
Designing High Availability Autoscaling and Health Checking for I/O-Bound Workloads