Linkerd is an easy to use and lightweight service mesh.
Linkerd provides a data plane that is composed of ultralight Linkerd specialised proxy sidecars. These intelligent proxies control all network traffic in and out of your meshed apps and workloads. The proxies also expose metrics via Prometheus metrics endpoints.
The control plane manages the configuration and aggregated telemetry via the following components:
Controller - Provides api that drives the Linkerd CLI and Dashboard. Provides configuration for proxies.
Tap - Establish real-time watches on requests and responses.
Identity - Provides identity and security capabilities that allow for mTLS between services.
Web - Provides the Linkerd dashboard.
The following architecture diagram demonstrates how the various components within the data plane and control plane interact.
It's important to understand and consider the following areas when evaluating Linkerd for your workloads:
The following design principles guide the Linkerd project:
Keep it Simple - Must be easy to use and understand.
Minimize Resource Requirements - Impose minimal performance and resource cost.
Just Work - Don't break existing applications and don't require complex configuration.
Linkerd provides the following set of capabilities:
Mesh – built in debugging option
Traffic Management – splitting, timeouts, retries, ingress
Security – encryption (mTLS), certificates autorotated every 24 hours
Observability – golden metrics, tap, tracing, service profiles and per route metrics, web dashboard with topology graphs, prometheus, grafana
Linkerd is well suited to and suggested for the following scenarios:
Simple to use with just the essential set of capability requirements
Low latency, low overhead, with focus on observability and simple traffic management
The following documentation describes how you can install Linkerd on Azure Kubernetes Service (AKS):
You can also further explore Linkerd features and architecture: