Overview of Meridio Conduit
metadata.labels.trench.website·Indexed 33 days ago
https://meridio.nordix.org/Documentation for Meridio, a networking solution for Kubernetes featuring stateless load-balancing, port-NAT, and IPAM. It includes guides on components like the Network Service Platform (NSP), Attractors, Trenches, and Gateways, as well as deployment via Helm and Operator for versions v1.0.0 and v1.1.0.
metadata.labels.trench.The Meridio Proxy allows targets (e.g., TCP applications) to connect to multiple network service instances (e.g., stateless-lb) through a single network interface. It creates a full mesh between the proxy and network service instances by monitoring NSEs via the NSM API.
Key behaviors include:
proxy.<conduit-name>.<trench-name>.<namespace>.The Meridio Proxy allows targets (such as TCP applications) to connect to multiple network service instances (e.g., stateless-lb) through a single network interface. It uses the NSM API to monitor NSEs and request connections. For targets, the proxy acts as a network service with the naming convention proxy.<conduit-name>.<trench-name>.<namespace>.
Key operational behaviors:
The Meridio Proxy allows targets (e.g., TCP applications) to connect to multiple network service instances (e.g., stateless-lb) through a single network interface.
Key operational behaviors include:
proxy.<conduit-name>.<trench-name>.<namespace>.The Stateless Load-balancer uses a user-space Maglev implementation to balance traffic across multiple targets. It subscribes to events from the NSP Service to receive notifications about target registration and unregistration, which it uses to update identifiers in the nfqueue-loadbalancer program, IP rules, and IP routes.
Traffic is moved from kernel space to user space using iptables and nfqueue. The nfqueue-loadbalancer program assigns a forwarding mark to the traffic based on Maglev and registered target identifiers, then returns the traffic to kernel space to be forwarded to the selected target via IP rules and routes.
The Attractor defines a group of Front-Ends (FEs) that share common characteristics, such as the external interface to use, IP address assignment methods, gateways for establishing connections, and VIP addresses to announce.
Crucially, every Attractor resource must be created with the label metadata.labels.trench to specify its owner reference trench.
The Network Service Platform (NSP) is a gRPC server that manages two primary responsibilities in the Meridio ecosystem:
Register function to refresh their entry.The Frontend component enables Meridio to attract external traffic via a secondary network. It achieves this by installing source routing rules for configured VIP addresses and running a BIRD routing instance restricted to the external interface. It supports BGP (with optional BFD supervision) and Static+BFD setups.
In a BGP configuration, the frontend announces a next-hop route for each VIP address to its external peer, using the frontend's own IP as the next-hop. To prevent traffic blackholing, the frontend only advertises VIP addresses when the collocated load balancer signals that it is capable of forwarding traffic to application targets.