The Meshery architecture can be observed in two perspectives:

1. Clients
2. Providers

Meshery architecture

1. Client Architecture

Client architecture

2. Provider Architecture

Provider architecture

Network Ports

Meshery uses the following list of network ports to interface with its various components:

Network Application Port
Meshery REST API 9081/tcp
Learn Layer5 Application 10011

Adapter Ports

Service Mesh Port
Meshery Adapter for App Mesh                                          10005/tcp
Meshery Adapter for Consul                                          10002/tcp
Meshery Adapter for Citrix Service Mesh                                          10008/tcp
Meshery Adapter for Istio                                          10000/tcp
Meshery Adapter for Kuma                                          10007/tcp
Meshery Adapter for Linkerd                                          10001/tcp
Meshery Adapter for Traefik Mesh                                          10006/tcp
Meshery Adapter for Network Service Mesh                                          10004/tcp
Meshery Adapter for Octarine                                          10003/tcp
Meshery Adapter for Open Service Mesh                                          10009/tcp
Meshery adapter for Tanzu Service Mesh                                          10010/tcp

See the Adapters section for more information on the function of an adapter.

Statefulness in Meshery components

Some components within Meshery’s architecture are concerned with persisting data while others are only concerned with a long-lived configuration, while others have no state at all.

Components Persistence Description
mesheryctl stateless command line interface that has a configuration file
Meshery Adapters stateless interface with service meshes on a transactional basis
Meshery Server caches state application cache is stored in user’s $HOME/.meshery/ folder
Meshery Providers stateful location of persistent user preferences, environment, tests and so on