kuberiter
Published in

kuberiter

Route 66 — Wiilliams, AZ — Lawrence Manickam

Service Mesh — Part I — Route This, Route That

What is a Service Mesh?

  • A policy-based granular software networking tool.
  • A developer driven Software Defined Network (SDN) Architecture.
  • An abstraction software layer of Network.
  • Decouple the application code from network at Layer 5.
  • Use Layer 7 Proxying.
  • A logging, metrics, traffic control, tracing and encryption for Microservices.

Why we need Service Mesh?

OSI (Open Systems Interconnection) Model

Network Planes

  1. Management Plane
  2. Control Plane
  3. Data Plane

Management Plane

  • The connection between the terminal (Ex: Work station) and the remote server/device.
  • The administrator uses it to configure, manage and monitor the services that runs on the remote server.
  • Both In-Band and Out-Of-Band are supported.

Control Plane

  • It defines the topology of a network (Brain of the router).
  • It is responsible for establishing links between routers and for exchanging protocol information.
  • It’s a decision-making system to decide the best path to deliver the data (Traffic Control).

Data Plane

  • It is part of the network that carries user data.
  • It forwards user data based on control plane algorithm.
  • The data plane is also known as the user plane, the forwarding plane or the carrier plane.

Service Mesh Planes

Service Mesh Data Plane (Proxying Layer)

  • The data plane is the sidecar proxy (Example: Envoy, NGINX).
  • Every application request has to pass through this plane.
  • It is responsible for inter cluster communication, ingress and egress network traffic.
  • It is responsible for performing service discovery, health checking, and routing.
  • It does load balancing, authentication and authorization.
  • It’s an observability plane that collects performance, scalability, security, availability, and other decision-enabling information.

Service Mesh Control Plane

  • The control plane monitors, configures, manages, and maintains all the contributing data planes.
  • It provides policies and configuration to all the contributing data planes.

Proxies

Forward proxy

  • Content filtering
  • Email security
  • Geo restrictions
  • Compliance reporting.

Reverse proxy

  • Content Redirection
  • Load Balancing (TCP Multiplexing)
  • SSL Offload/Acceleration (SSL Multiplexing)
  • Sticky Sessions
  • Caching
  • Application Firewall
  • Authentication
  • Single Sign On

Application Proxy

Hardware Load Balancers

  • DNS load balancing
  • NAT/PAT
  • Act as a reverse proxy for backend server applications
  • SSL offload/acceleration
  • Sticky Sessions/Persistent Connections
  • Priority activation
  • Content aware switching
  • DDoS attack protection
  • Firewall and intrusion detection
  • Detect failed servers and stop the user traffic
  • Monitoring

Microservices

  • Organized around business capabilities
  • Loosely coupled
  • Highly maintainable and testable
  • Independently deployable
  • Generally, Cloud Native

Microservices Monitoring

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store