Your team has deployed a microservices application on Google Kubernetes Engine (GKE) with multiple services communicating via internal ClusterIP services. You notice that some requests between services are failing intermittently with 'connection refused' errors. The services are defined with readiness probes. What is the most likely cause?
Trap 1: The services are not exposed via a VPC peering connection to the…
ClusterIP services are internal to the cluster and do not require VPC peering.
Trap 2: The services are using NodePort instead of LoadBalancer type,…
NodePort works but is not the cause of connection refused; it's a valid type for internal access.
Trap 3: The services are not associated with an Ingress resource.
Ingress is for external HTTP(S) traffic; internal services don't need it.
- A
The readiness probes are not passing, causing the service endpoints to be removed.
Failing readiness probes cause the pod to be removed from service endpoints, leading to connection refused.
- B
The services are not exposed via a VPC peering connection to the client's VPC.
Why wrong: ClusterIP services are internal to the cluster and do not require VPC peering.
- C
The services are using NodePort instead of LoadBalancer type, causing port conflicts.
Why wrong: NodePort works but is not the cause of connection refused; it's a valid type for internal access.
- D
The services are not associated with an Ingress resource.
Why wrong: Ingress is for external HTTP(S) traffic; internal services don't need it.