Service Mesh Landscape

Categories
    Service Mesh
  • AspenMesh AspenMesh - a commercial offering built on top of Istio. Closed source.
  • Consul Connect Consul Connect - is a feature that enables encrpyted communication between services.
  • Grey Matter Grey Matter is an Istio-compliant, Envoy proxy-based, hybrid cloud service mesh platform for business insight and secure data control with your microservices.
  • Istio An open platform to connect, monitor, and secure microservices. Governed by Google and IBM.
  • Kong Incrementally deploy Kong proxies to go from an API gateway to a modern mesh with reliability, security, and observability built-in.
  • Linkerd 1.x Linkerd - hosted by the CNCF and built on top of Twitter Finagle. Linkerd includes both a proxying data plane and the Namerd (“namer-dee”) control plane all in one package.
  • Linkerd 2.x (Conduit) Conduit - A Kubernetes-native (only) service mesh announced as a project in December 2017. In contrast to Istio and in learning from Linkerd, Conduit’s design principles revolve around a minimalist architecture and zero config philosophy, optimizing for streamlined setup. Open Source. From Buoyant. Written in Rust and Go.
  • Mesher Mesher is service mesh implementation based on go-chassis which can work together with ServiceComb Service center running on any infrastructure. Mesher can work with go-chassis in same service mesh control plane and it supports both linux and windows OS
  • Rotor Rotor - a fast, lightweight bridge between your service discovery and Envoy’s configuration APIs. Turbine Labs has shutdown.
  • SOFAMesh A solution for large-scale Service Mesh based on Istio.
  • Yggdrasil Yggdrasil is an Envoy control plane that configures listeners and clusters based off Kubernetes ingresses from multiple Kube Clusters.
  • Zuul Zuul is a gateway service that provides dynamic routing, monitoring, resiliency, security, and more.
    Client Library
  • Akka Akka - an open source toolkit for building highly concurrent, distributed, and resilient message-driven applications for Java and Scala.
  • Finagle Finagle - an open source RPC library built on Netty for engineers that want a strongly-typed language and be on the JVM. Finagle is written in Scala.
  • Hystrix Hystrix - an open source latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience. Hystrix is written in Java.
  • Ribbon Ribbon - an open source Inter-Process Communication (remote procedure calls) library with built-in software load balancers. Ribbon is written in Java.
    API Gateway
  • Ambassador Ambassador uses Envoy
  • Contour Contour uses Envoy
  • Gloo An Envoy-powered API Gateway
  • Kong Kong uses Nginx
  • OpenResty OpenResty uses Nginx
  • 3scale An API gateway built on top of NGINX. It is part of the Red Hat 3scale API Management Platform.
    Service Proxy
  • Contour Contour - a reverse proxy and load balancer deployed as a Kubernetes Ingress Controller.
  • Envoy Envoy - a modern proxy hosted by the CNCF. Many projects have sprung up to leverage Envoy, including Istio.
  • nginMesh nginMesh - launched in September 2017, the nginMesh project deploys Nginx as a sidecar proxy in Istio.
  • SOFAMosn SOFAMosn is a modular observable smart network which can be used in service mesh deployed as a data plane sidecar.
  • Traefik Traefik is a modern HTTP reverse proxy and load balancer that integrates with service discovery systems and container orchestrators.
    Load Balancer
  • Nginx Nginx - is open source software for web serving, reverse proxying, caching, load balancing, media streaming, and more.
  • Proxygen Proxygen - is an open source library that not only powers Facebook's load balancer, but is also used by HHVM (github/facebook/hhvm).
Found a discrepancy, missing or out-dated information? Please submit an issue.
Non-Functional
Category Name Open Source Governance Primary Language Project Announce GA / 1.0 Commercial Offerings
Service Mesh App Mesh No AWS ? November 2018 2019 AWS
Service Mesh AspenMesh No F5 Go November 2017 2019 ?
Service Mesh Consul Connect Yes HashiCorp Go June 2016 June 2018 Consul Enterprise (HashiCorp)
Service Mesh Grey Matter No Decipher Technology Studios Go November 2017 February 2019 Grey Matter
Service Mesh Istio Yes Google, IBM Go May 2017 July 2018 AspenMesh
Service Mesh Linkerd 1.x Yes CNCF Scala February 2016 April 2017 Buoyant
Service Mesh Linkerd 2.x (Conduit) Yes CNCF Rust, Go December 2017 Sept 2018 Buoyant
Service Mesh Mesher Yes Huawei Go November 2017 November 2017 Huawei
Service Mesh Octarine No OctarineSec ? ? 1H 2019 Octarine
Service Mesh Rotor Yes Turbine Labs Go May 2018 discontinued Houston (Turbine Labs)
Service Mesh SOFAMesh Yes Ant Financial Go July 2018 ? Ant Financial
Service Mesh Yggdrasil Yes uSwitch Go August 2018 ? N/A
Service Proxy Envoy Yes CNCF C++11 September 2016 September 2016 Turbine Labs, Datawire
Service Proxy nginMesh Yes Nginx Rust, Go, C September 2017 discontinued Nginx
Service Proxy SOFAMosn Yes Ant Financial Go July 2018 ? Ant Financial
API Gateway Contour Yes Heptio Go October 2017 October 2017 Heptio
API Gateway Ambassador Yes Datawire Python August 2017 October 2017 Datawire
API Gateway Kong Yes Kong Inc. Lua April 2015 December 2018 Kong Inc.
API Gateway Gloo Yes Solo.io Inc. Go ? ? Solo.io Inc.
API Gateway OpenResty Yes OpenResty Inc. C ? ? OpenResy Inc.
API Gateway 3scale Yes Red Hat Lua December 2014(?) December 2014(?) Red Hat
Load-Balancers HAProxy Yes HAProxy C ? ? HAProxy Technologies
Load-Balancers Kong Yes Kong Inc. Lua April 2015 ? Kong Inc.
Load-Balancers Nginx Yes Nginx Go ? ? Nginx Plus
Load-Balancers Proxygen Yes Facebook C++ November 2014 November 2014 N/A
Load-Balancers Traefik Yes ? Go ? ? ?
Load-Balancers Avi Networks(USM) No AVI Networks ? ? ? ?
Load-Balancers NetScaler CPX No Citrix ? ? ? ?
Found a discrepancy, missing or out-dated information? Please submit an issue.
Functional
Service Mesh Auto Proxy Injection TCP + WebSockets HTTP, HTTP/2 gRPC Multi-Cluster Multi-Tenant Prometheus Integration Tracing Integration Encryption
AspenMesh ? ? ? ? ? ? ? ? ?
Consul Connect No ? ? ? No No Yes Pluggable Yes
Grey Matter Yes Yes Yes Yes Yes Yes Yes OpenTracing compatible
Istio Yes Yes Yes Yes Experimental Experimental Yes Jaeger Yes
Kong No Yes Yes No Experimental Kong Enterprise only ? ? ?
Linkerd 1.x No Yes Yes ? ? ? Yes Zipkin Yes
Linkerd 2.x (Conduit) Yes Yes Yes Yes ? ? Yes None Yes
Mesher Yes No Yes Yes Yes, powered by ServiceComb Huawei Cloud only ? ? ?
Rotor Project shutdown Project shutdown Project shutdown Project shutdown Project shutdown Project shutdown Project shutdown Project shutdown Project shutdown
SOFAMesh Yes Yes Yes Yes Cloud only Cloud only ? ? ?
Yggdrasil N/A ? Yes Yes Yes ? Yes Pluggable Yes
Zuul No ? ? ? ? No ? ? ?
Found a discrepancy, missing or out-dated information? Please submit an issue.
Tools
Tool Written in Written for Supported by Description
fortio Golang Istio, general use Istio A load testing library and command line tool and web UI. Allows to specify a set query-per-second load and record latency histograms and other useful stats.
httpbin Python general use Kenneth Reitz A simple HTTP request & response service.
meshery Golang Istio, Linkerd Istio, Linkerd A service mesh playground to faciliate learning about functionality and performance of different service meshes. Meshery incorporates the collection and display of metrics from applications running in the playground.
lago Scala Finagle, general use Twitter A load generation tool that replays production or synthetic traffic against a given target. Among other things, it differs from other load generation tools in that it attempts to hold constant the transaction rate.
slow_cooker Golang Linkerd, general use Buoyant A load testing tool that produces a predictable load and concurrency level for a long period of time. Provides periodic reports of qps and latency (during testing).
wrk C general use Will Glozer A modern HTTP benchmarking tool capable of generating significant load when run on a single multi-core CPU. It combines a multithreaded design with scalable event notification systems such as epoll and kqueue.
istio-vet Golang general use Aspen Mesh A tool for validating Istio and application configuration installed in a Kubernetes cluster. It detects incompatible or incorrect configuration which might lead to unexpected runtime behaviors.
Kiali Golang Istio Kiali Project, Red Hat A graphical user interface to provide insight into what is happening within you Istio service mesh. Kiali graphs the interaction between service mesh components, handles configuration files, and analyses your mesh for potential issues.
Naftis Golang Istio Xiaomi A web-based dashboard for Istio. It helps user manage their Istio tasks more easily. Using Naftis we can custom our own task templates, then build task from them and execute it.
Found a discrepancy, missing or out-dated information? Please submit an issue.

Mailing List

Stay up-to-date on service mesh content...
account_box
mail

arrow_back