Skip to content

The Five Pod Types

Every Lane7 Blueprint is assembled from five functional pod types. Each type has a defined role in the network, a specific ingress/egress configuration, and a corresponding set of pod templates in the composition tool.

Dual naming

Pod types have conceptual names (used in this documentation and on the Lane7 product page) and technical template names (used in topology YAML files and blueprint manifests). Both refer to the same thing. This page uses conceptual names as primary labels, with technical names in parentheses.


Gateway / Initiator

Technical templates: http-gateway (boundary), http-initiator (internal), grpc-gateway (gRPC boundary), ws-initiator (WebSocket)

  • Ingress: 0 | Egress: 1
  • Gateways are boundary pods (PINHOLE_ENABLED=true). Initiators are internal (PINHOLE_ENABLED=false).
  • Triggers app activity. Accepts POST /trigger (gateway only) from external clients and from the auto-trigger coroutine.
  • Section 1 hook: on_trigger(payload, headers)
  • Found in: Armored Ferry, Armored Convoy, Armored Trawler, Armored Trimaran, Armored Carrier (both variants), Fast Ferry, Fast International Ferry, International Ferry, Armored Carrier AI Pipeline

Relay / Processor

Technical templates: http-relay, ws-relay, grpc-relay

  • Ingress: 1 | Egress: 1
  • Internal pod (PINHOLE_ENABLED=false by default). Not accessible externally.
  • Accepts an inbound WoSP message, processes it in Section 1, and relays the result downstream.
  • Section 1 hook: on_receive_relay(payload)
  • Found in: Armored Convoy (middleware pod)

Distributor / Router

Technical templates: http-fan-out, ws-fan-out

  • Ingress: 1 | Egress: N (dynamic, set by connection count)
  • Internal pod. EGRESS_PORT_MAP is auto-configured by the composition tool based on the number of downstream connections.
  • Fans out one inbound message to all N downstream pods simultaneously.
  • Section 1 hook: on_receive_fan_out(payload)
  • Found in: Armored Trimaran, Armored Carrier (Parallel Processing Cluster), Armored Carrier AI Pipeline (as ai-orchestrator)

Aggregator

Technical templates: http-fan-in, ws-fan-in

  • Ingress: N (dynamic) | Egress: 1
  • Internal pod.
  • Waits for all N upstream messages (INGRESS_COUNT=N), then forwards the combined result downstream. Holds partial results in memory until all N arrive.
  • Section 1 hook: on_aggregate(partials)
  • Found in: Armored Trawler, Armored Carrier (Parallel Processing Cluster)

Sink / Terminator

Technical templates: http-sink (boundary), http-terminator (internal), grpc-sink

  • Ingress: 1 | Egress: 0
  • Sinks are boundary pods (PINHOLE_ENABLED=true). Terminators are internal.
  • Finishes app activity. Results accessible via GET /output (sink only).
  • Section 1 hook: on_receive_terminator(payload)
  • Found in: All catalog blueprints as the exit pod

Summary

Pod Type Templates Boundary? Ingress Egress External Access
Gateway / Initiator http-gateway, http-initiator, grpc-gateway, ws-initiator Gateway: yes 0 1 POST /trigger (gateway only)
Relay / Processor http-relay, ws-relay, grpc-relay No 1 1 None
Distributor / Router http-fan-out, ws-fan-out No 1 N None
Aggregator http-fan-in, ws-fan-in No N 1 None
Sink / Terminator http-sink, http-terminator, grpc-sink Sink: yes 1 0 GET /output (sink only)

Customers deploy pre-assembled blueprints

You do not select templates directly. The Hopr team uses Lane7 Compose to assemble custom topologies from these building blocks. Contact lane7@hopr.co to request a custom blueprint topology.