The diagram below illustrates the basic architecture of Submariner:

Submariner Architecture

Submariner consists of several main components that work in conjunction to securely connect workloads across multiple Kubernetes clusters, both on-premises and on public clouds:

  • Gateway Engine: manages the secure tunnels to other clusters.
  • Route Agent: routes cross-cluster traffic from nodes to the active Gateway Engine.
  • Broker: facilitates the exchange of metadata between Gateway Engines enabling them to discover one another.
  • Service Discovery: provides DNS discovery of Services across clusters.

Submariner has optional components that provide additional functionality: