Search code examples
dockermicroservicesdocker-swarm-modelinkerd

Docker Swarm Mode routing mesh vs linkerd


Is Docker Swarm Mode routing mesh a built-in substitute for linkerd routing mesh? In other words, is there still any reason to look into linkerd if there is an out-of-the-box solution?


Solution

  • They do fundamentally different things. Docker's swarm mode routing mesh is at layer 3/4 --- if you have something running on port X in one container, you can have every container listen on port X and route that traffic to the container that's actually using it.

    Linkerd's service mesh operates at layer 5/7. It does request-level failure and latency handling, load balancing across instances, and logical routing ("service a" => "datacenter 1, prod cluster, version 1.2 of service a")

    You can use the two in conjunction.