The Service Mesh Interface (SMI) is a specification for service meshes, with a focus on those that run on Kubernetes. It defines a common standard that can be implemented by a variety of providers. This allows for both standardization for end-users and innovation by providers of Service Mesh Technology. SMI enables flexibility and interoperability, and covers the most common service mesh capabilities.
The following documents are available:
Latest Release | |
---|---|
Core Specification: | |
SMI Specification | v0.6.0 |
Specification Components | |
Traffic Access Control | v1alpha3 |
Traffic Metrics | v1alpha1 |
Traffic Specs | v1alpha4 |
Traffic Split | v1alpha4 |
- Consul Connect*: service segmentation (consul.io/docs/connect)
- Flagger: progressive delivery operator (flagger.app)
- Gloo Mesh: Multi-cluster service mesh management plane (solo.io/products/gloo-mesh)
- Istio*: connect, secure, control, observe (servicemeshinterface/smi-adapter-istio)
- Linkerd: ultralight service mesh (linkerd.io)
- Traefik Mesh: simpler service mesh (traefik.io/traefik-mesh)
- Meshery: the service mesh management plane (layer5.io/meshery)
- Rio: application deployment engine (rio.io)
- Open Service Mesh: lightweight and extensible cloud native service mesh (openservicemesh.io)
- Argo Rollouts: advanced deployment & progressive delivery controller (argoproj.io)
* via adaptor
- SMI community meetings are on hiatus until October 12, 2022 to allow for focus on the GAMMA initiative.
Sign up for CNCF Slack
Please refer to CONTRIBUTING.md for more information on contributing to the specification.
Whether you are a user or contributor, you can open issues on GitHub:
Service Mesh Interface follows the CNCF Code of Conduct.