Meshery is a multiservice mesh management plane offering lifecycle, configuration, and performance management of service meshes and their workloads, while SMP is a standard for capturing and characterizing the details of infrastructure capacity, service mesh configuration, and workload metadata.
When the projects first applied in April for inclusion, the Technical Oversight Committee (TOC) had one clarifying question for them: should they be combined with or aligned in some manner with the Service Mesh Interface (SMI) project?
Lee Calcote, founder of Layer5, the company partly behind both of the projects, explained that it was an alluring prospect for the CNCF, but that, for the time being at least, the projects would continue on their own separate paths.
Calcote, who also serves as the chair of the Network special interest group (SIG) at the CNCF, said he then presented to the CNCF the following diagram, which shows the relation between the three projects. For the time being, he said, both SMI and SMP are “relatively younger projects, both of which still are figuring out what they want to be when they grow up,” and may be considered for consolidation later on down the line, while Meshery has a larger focus than the two projects and will definitely be kept on its own.
While the SMI works to define the broadest characteristics that could apply to something defined as a service mesh, looking for the lowest common denominator, Meshery works in the opposite direction, trying to accentuate the differences and strengths of the individual services meshes. SMP, meanwhile, is more of a specification and works to provide a common format for capturing and describing data around the performance of the service mesh itself.
In comparison to SMI, Calcote said that “SMP essentially just goes a lot deeper. Part of what is trying to address is this long-standing question — and it’s a question that faces the people who are adopting a service mesh today, people who are adopting service mesh tomorrow, people who have already adopted a service mesh — What should I be measuring to consider how efficiently I’m running my service mesh?”
Between the three projects, then, users have not just a way to interface with any SMI-compatible service mesh via a common API, but also a way to measure the performance of different service meshes, and finally, a method with which to interface with and operate those service meshes while taking advantage of their specific advantages.
“Part of the belief is that service meshes are an inevitable new layer in your cloud native infrastructure that over time will be a ubiquitous component,” said Calcote. “There’s a lot that can be done in the network, a lot of intelligence, and so Meshery, as a management plane, picks off some of those features.”