Linkerd 是什么
Linkerd 是一款 service mesh 软件,它用于处理 service-to-service 通信的管理,控制,和监控。在复杂的系统中,最大的问题很有可能不是出在服务本身,而是出在服务间的通信。Linkerd 的解决方案是引入一个专门控制流量的中间层,负责通信相关的各种需求,例如 latency-aware 的负载均衡,instrumentation,TLS,控制,request-level routing 等等。
运行 linkerd 示例,配好地址后,应用先联系 linkerd,然后 linkerd 再 proxy 到目标服务。linkerd 在底层做的事情是应用路由规则,联系 service discovery,获得目标服务,然后负载均衡流量过去。引入 service mesh 的好处是:有一张生产环境所有服务的全局的拓扑图,服务 connection 的管理都不用管了。Linkerd 实例可以以 sidecars 的形式部署(一个服务配一个 linkerd),也可以每个 host 配一个。