When you watch a service mesh crawl under its own traffic, you know it is time to clean house. Metrics scattered, identity glued together by duct tape, TLS certificates expiring quietly in the corner. This is where Linkerd Pulsar earns its place. It combines Linkerd’s lightweight service mesh with Apache Pulsar’s event-driven messaging to make microservice communication secure, observable, and genuinely fast.
Linkerd handles service-to-service communication in Kubernetes. It provides mTLS, load balancing, and transparent retries without code changes. Pulsar brings durable, ordered messaging with a focus on multi-tenancy and geo-replication. The two together let teams push trusted events across production clusters without leaking internal state or credentials.
So what is the workflow behind Linkerd Pulsar? Linkerd establishes cryptographic identity between pods. Pulsar consumes those identities to authorize event producers and consumers, often mapped through OIDC or corporate SSO like Okta. Messages travel through encrypted channels, discovered automatically through Linkerd’s control plane. Pulsar’s brokers can then validate those connections against Linkerd’s service identity system, enforcing access via RBAC rules that live outside application code.
A frequent question is how to connect them cleanly. The simple answer is: extend Linkerd’s injected sidecar to reach Pulsar’s service endpoints over mTLS. The control plane validates certificates for each producer and consumer. Once the trust mesh is established, Pulsar topics behave like first-class Kubernetes services, with metrics visible in Linkerd Viz and latency graphs indistinguishable from regular HTTP workloads.