Service Configuration
medium

Questão de Service Configuration #019e3a4f

Enunciado da Questão
Service Configuration
#service mesh
#linkerd
#traffic management
Médio

Which of the following is a lightweight tool that manages traffic flows between services, enforces access policies, and aggregates telemetry data, all without requiring changes to application code?

A

NetworkPolicy

B

Linkerd

Correta
C

kube-proxy

D

Nginx

Explicação Oficial / Explicações da Comunidade

The correct answer is Linkerd, a lightweight service mesh that manages traffic flows between services, enforces access policies, and aggregates telemetry data without requiring changes to application code.

How it Works

Linkerd operates as a transparent proxy sidecar injected into each service pod. It intercepts all incoming and outgoing traffic, applying routing rules, retries, timeouts, and access policies defined in custom resource definitions (CRDs). It collects metrics like latency, success rates, and request volumes, which are exposed via Prometheus endpoints. All of this happens at the network layer, so application code remains unchanged.

Why the Correct Answer is Right

  • Linkerd is explicitly designed as a lightweight service mesh. It uses a Rust-based proxy (linkerd-proxy) for high performance and low resource overhead. It provides traffic splitting, fault injection, and mTLS encryption without code modifications.

Why the Incorrect Answers are Wrong

  • NetworkPolicy is a Kubernetes resource that controls pod-to-pod communication using network rules, but it does not manage traffic flows between services (e.g., load balancing, retries), enforce access policies beyond network-level rules, or aggregate telemetry data. It operates at the network layer only.
  • kube-proxy is a Kubernetes component that handles service-to-pod load balancing using iptables or IPVS rules. It does not enforce access policies (like mTLS or authorization) nor aggregate telemetry data. It is not a service mesh.
  • Nginx is a web server, reverse proxy, and load balancer. While it can be used as an API gateway or ingress controller, it is not a service mesh. It requires manual configuration and code changes to integrate with services, and it does not provide built-in telemetry aggregation or policy enforcement across a service mesh.