DEV Community

Cover image for Service Mesh and Enterprise Scale Design
Shweta Vohra
Shweta Vohra

Posted on

Service Mesh and Enterprise Scale Design

Service mesh is a low latency networking and infrastructure layer which is highly configurable to make service-to-service communication possible.

In this article let's look at following aspects for Service Mesh:

  • Introduction, features and architecture
  • Enterprise level service mesh - What and why?
  • Approach for - enterprise level service mesh implementation
  • An enterprise - case study

Services Interaction without useing Service Mesh:

a
There were many technology specific libraries/tools in use to make above complex interactions possible. For example:
Python:

  • OpenTracing Flask
  • OpenCensus
  • Zipkin
  • Kingpin
  • Lemur

Java:

  • Spring
  • OpenTracing
  • OpenSSL
  • Customer libraries

Nodejs

  • Jaegar
  • Zoologist
  • Express RL

Its quite evident the problem of handling polyglot libraries, discovery of services, specific use of tools and most importantly lack of easy interoperability of these solutions makes maintianing services life cycle a mammoth task.
Now let's look at how Service Mesh helps save these efforts.

Services Interaction after using service mesh:

b

Service Mesh Features

c

Service Mesh Architecture

A service mesh comprises of two main logical components - a data plane and a control plane:

  • The data plane is composed of a set of intelligent proxies deployed as sidecars. These proxies mediate and control all network communication between microservices. They also collect and report telemetry on all mesh traffic.
  • The control plane manages and configures the proxies to route traffic.

d

Service Mesh At Enterprise Scale

In practical there are complex environments. Heterogenous cloud, application stacks, and platforms. Service mesh required for strong deployment and control over Dev and Ops across hybrid cloud environment.

For example consider application spread across various clusters in hybrid cloud environment such as one shown in diagram below:

e

  ## `How would you plan such type of complex service mesh?`
Enter fullscreen mode Exit fullscreen mode

Let's make it little more complicated with real case study

Use Case from Telecom Domain

f

In order to design such kind of complex service mesh you need systematic framework to decide and plan for your service mesh architecture, features and implementation.
We will look at details in the upcoming article. Watch this space for more.

Top comments (0)