《云计算与虚拟化技术丛书 Service Mesh实战》—1.5业界Service Mesh产品
1.5 业界Service Mesh产品
当前,业界主要有以下Service Mesh相关产品。
1.5.1 Linkerd
Linkerd是Buoyant公司2016年率先开源的高性能网络代理程序,是业界的第一款Service Mesh产品,甚至可以说Linkerd的诞生即Service Mesh时代的开始,其引领后来Service Mesh的快速发展。其主要用于解决分布式环境中服务之间通信面临的一些问题,比如网络不可靠、不安全、延迟丢包等问题。Linkerd使用Scala语言编写,运行于JVM, 底层基于Twitter的Finagle库,并对其做相应的扩展。最主要的是Linkerd具有快速、轻量级、高性能等特点,每秒以最小的时延及负载处理万级请求,易于水平扩展,经过产线测试及验证,可运行任何平台的产线级Service Mesh工具。Linkerd除了具有上述所阐述的Service Mesh的功能外,还具有下列功能。
支持多平台,可运行于多种平台,比如Kubernetes、DC/OS、Docker甚至虚拟机或者物理机。
无缝集成多种服务发现工具。
支持多协议,如gRPC、HTTP/2、HTTP/1.x,甚至可通过linkerd-tcp支持TCP协议。
支持与第三方分布式追踪系统Zipkin。
灵活性、扩展性高,可通过其提供的接口开发自定义插件。
根据上述关于Service Mesh的定义,Service Mesh由数据平面和控制平面构成,事实上,Linkerd本身是数据平面,负责将数据路由到目标服务,同时保证数据在分布式环境中传输是安全、可靠、快速的。另外,Linkerd还包括控制平面组件Namerd,通过控制平面Namerd实现中心化管理和存储路由规则、中心化管理服务发现配置、支持运行时动态路由以及暴露Namerd API管理接口。
除此之外,据不完全统计,超过50家公司在产线使用Linkerd,应该是目前产线使用最多的Service Mesh产品。还有,Linkerd是CNCF官方支持的项目之一。
- 点赞
- 收藏
- 关注作者
评论(0)