The adoption of service meshes are giving developers new and smarter ways to connect, secure and control what is going on inside their applications and services. But it is also causing a lot of pain points and lock ins for developers. To address the problems a group of technology companies are coming together to launch the Service Mesh Interface (SMI), an open project designed to give developers a set of common and portable APIs capable of interoperability across service mesh technologies such as Istio, Linkerd and Consul Connect.
RELATED CONTENT: Why microservices need Service Mesh
With microservices, more isn’t always better
The initial members of the SMI include Microsoft, Linkerd, HashiCorp, Solo.io, Kinvolk and Weaveworks as well as support for Aspen Mesh, Canonical, Docker, Pivotal, Rancher, Red Hat and VMware.
“We see a proliferation of service mesh technologies with many vendors providing new and exciting options for application developers. The problem is developers who turn to mesh technologies must choose a provider and write directly to those APIs. They become locked into a service mesh implementation. Without generic interfaces, developers lose portability, flexibility, and limit the ability to benefit from innovation across the broad ecosystem,” Gabe Monroy, lead program manager of containers for Microsoft, wrote in a post.
Service meshes were created to address the rise of microservices, containers and Kubernetes and provide an infrastructure layer with the ability for developers to better understand their services. The SMI aims to provide: a standard interface for service meshes; a basic feature set for common use cases; support for new capabilities over time; and space for the service mesh ecosystem to innovate.
“The interest and momentum around service meshes has reached a point where the industry needs to collaborate on a set of standards that can help assure their success,” said Sushil Singh, chief architect for VMware NSX Service Mesh at VMware. “Service Meshes provide rich set of foundational capabilities for the future of applications. It’s the right time to work towards defining standard APIs that simplify the consumption and capabilities of service mesh technology to enable a healthy ecosystem.”
The project is being launched with three initial service mesh features:
- Traffic policy for applying identity and transport encryption policies
- Traffic telemetry for capturing key metrics
- Traffic management for shifting and weighing traffic between services