Setting Up a Service Mesh with Linkerd
Linkerd is a lightweight, security-focused service mesh for Kubernetes. It provides mutual TLS, observability, and traffic management without complex configuration, making it ideal for Breeze-hosted clusters.
Install the Linkerd CLI
curl -fsL https://run.linkerd.io/install | sh
export PATH=$HOME/.linkerd2/bin:$PATH
linkerd version
Pre-Installation Check
linkerd check --pre
This validates that your cluster meets all prerequisites before installation.
Install Linkerd on Your Cluster
linkerd install --crds | kubectl apply -f -
linkerd install | kubectl apply -f -
linkerd check
Install the Viz Extension
The viz extension provides the dashboard and metrics:
linkerd viz install | kubectl apply -f -
linkerd viz check
linkerd viz dashboard &
Mesh Your Applications
Inject the Linkerd proxy into your deployments:
kubectl get deploy -n my-app -o yaml | linkerd inject - | kubectl apply -f -
Or annotate the namespace for automatic injection:
kubectl annotate namespace my-app linkerd.io/inject=enabled
Key Benefits
- Automatic mTLS -- encrypts all pod-to-pod traffic by default
- Golden Metrics -- success rate, latency, and throughput per service
- Traffic Splitting -- canary deployments with percentage-based routing
- Retries and Timeouts -- configurable per-route reliability policies
Linkerd's minimal resource footprint makes it suitable for clusters of any size running on your Breeze infrastructure.