Consul Service Mesh Architecture
Consul has a client-server architecture and is the “control plane” for the service mesh. Multiple servers are deployed for high availability, and a pool of clients run on every host. Clients integrate with sidecar proxies, such as Envoy, that provide the “data plane” for the service mesh.
The centralized servers hold the service registry, access and traffic policies, configurations and certificate authorities, which are efficiently transferred to the distributed clients in real time. The clients configure local proxies, cache data and policies, and provide health checking.