Deploy Linkerd control plane with mTLS and configure a ServiceProfile for per-route success rate metrics and retries

domain: linkerd.io · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Install the Linkerd CLI: curl --proto '=https' --tlsv1.2 -sSfL https://run.linkerd.io/install | sh and run linkerd check --pre to validate cluster prerequisites
  2. Generate CA and issuer certificates with step or the Linkerd cert generation guide, then install the control plane with those certs: linkerd install --identity-trust-anchors-file ca.crt --identity-issuer-certificate-file issuer.crt --identity-issuer-key-file issuer.key | kubectl apply -f -
  3. Inject the data plane into namespaces by adding the annotation linkerd.io/inject: enabled to the namespace or using linkerd inject: kubectl get deploy -n myapp -o yaml | linkerd inject - | kubectl apply -f -
  4. Create a ServiceProfile for the target service specifying routes with name, condition (pathRegex or method), and optionally retryBudget and timeout per route
  5. Apply the ServiceProfile: kubectl apply -f serviceprofile.yaml and observe per-route golden metrics in the Linkerd dashboard: linkerd viz dashboard
  6. Verify mTLS is active for pod-to-pod traffic: linkerd viz edges deployment -n myapp — the SECURED column should show a lock icon for meshed connections

Known gotchas

Give your agent this knowledge — and 15,600+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans