下面大体梳理下Service Mesh从诞生到现在的发展历程,以对Service Mesh的发展脉络和当前现状有大致的了解。
2016年1月,Twitter前基础设施工程师William Morgan和Oliver Gould组建了一个名为Buoyant的公司,同时在GitHub上提交了第一个Linkerd版本Linkerd 0.0.7。这是业界第一个Service Mesh项目,标志着Service Mesh的诞生。
2016年9月,开发Linkerd的Buoyant公司第一次提出了Service Mesh的概念。
2016年9月,Envoy 1.0版本发布,Envoy诞生的时间要比Linkerd还要早些,只是在Lyft内部使用,一直没有对外发布,这次直接发布1.0的可用版本。
2017年1月,Linkerd加入CNCF,成为CNCF的第一个Service Mesh项目。
2017年4月,Linkerd 1.0版本发布,标志着Service Mesh正式进入可用阶段。
2017年5月,Istio 0.1版本发布,Istio一发布,就对Service Mesh界产生了巨大影响,直接导致Service Mesh之后的发展路径发生了一系列的变化。
2017年7月,Linkerd迫于Istio的压力,宣布和Istio集成。
2017年9月,Envoy加入CNCF,成为继Linkerd之后又一个Service Mesh项目。
2017年9月,在Nginx大会上,Nginx发布了0.1.6版本的nginMesh,nginMesh的定位是Istio的数据平面,nginMesh可以说是Nginx在Service Mesh上的试水之作,从发布后一直没有大的进展和动作,当前仍然无法应用于生产环境。
2017年9月,Envoy加入CNCF,成为继Linkerd之后又一个Service Mesh项目。
2017年12月,Buoyant在KubeConf上发布了Conduit 0.1.0版本,由于Linkerd受到了Istio的压制,Buoyant希望Conduit可以和Istio进行竞争,Conduit的架构和Istio差不多,但相比之下更为聚焦,只支持Kubernetes平台。
2018年7月,Istio 1.0版本发布,进入生产可用阶段,同时Istio作为Service Mesh领域的平台和霸主地位已经不可动摇。
2018年8月,Buoyant发布最后一个Conduit版本Conduit 0.5,Conduit至此走进历史,后续会并入Linkerd 2.0。
2018年9月,Linkerd 2.0 GA版本发布,该版本提出了Service Ops的概念,标志着Linkerd正式退出了Service Mesh平台的争夺,成为Service Mesh解决方案提供商。
2018年11月,Envoy成为继Kubernetes、Prometheus之后第三个从CNCF毕业的项目。
2018年12月,亚马逊AWS推出了Service Mesh解决方案App Mesh,标志着云计算领域的绝对王者AWS开始进入Service Mesh领域。
2018年12月,Envoy和API Gateway提供商Kong同时发布新版本,Kong在新发布的Kong 1.0 GA中,正式增加了对Service Mesh的支持。
2018年的大幕已落,2019年,Service Mesh领域的竞争会更加精彩。
2019年3月20日,Istio 1.1版本在正式发布,这是Istio 1.0版本推出8个月后第一个正式版本,包括Sidecar资源、路由区域感知能力等众多特性。
下面几节会对Service Mesh领域当前有代表性的项目进行详细分析。