
BGP engines
The view adapts to the BGP engine the supervisor runs — the engine pill in the page header tells you which:
Whichever engine is active, the same two surfaces render: per-node sessions and the advertise table.
Session monitoring
The session table shows one row per node and peer: peer address, local and peer ASN, session state and uptime, and the counts of advertised and received routes. A healthy row looks like this:
Anything other than
Established means that node is not exchanging routes. A node whose session is down stops carrying traffic for advertised prefixes — with more than one node peering, the fabric routes around it; with one, the prefix goes dark. Expanding a node also shows the routes it advertises and receives, with next hop and best-path markers.
The advertise table
The advertise machinery has several layers — candidate prefixes from live objects, the operator’s selection, the engine’s expansion, and what each node’s BGP daemon actually pushes. The advertise table flattens all of it into one row per prefix:
The Live column is the drift detector:
Two rows from a healthy-but-imperfect three-node supervisor:
The second row is what
partial looks like in practice: the prefix is selected and two nodes push it, but the third does not — usually that node’s BGP session is down, or the engine has not converged yet. The session table above tells you which.
Flipping a row’s toggle updates the operator selection; the engine converges and the Live column confirms it. Project-sourced rows follow the owning project’s own advertise toggles — change them on the project, and the rows here follow. The Overview tab shows a snapshot of this same table.
Egress
Egress is the outbound mirror of gateways: instead of traffic coming in through a shared address, workloads leave the cluster through designated gateway nodes with a dedicated source IP (SNAT). Use it when an upstream firewall allow-lists by source address, or when compliance requires attributable egress. This tab is the single home for all three egress surfaces.Candidate nodes
Egress gateways are label-driven: a node label marks which nodes are eligible to carry egress IPs, and the candidate-nodes card manages that label declaratively — tick the nodes that should be candidates, and the platform labels exactly those. The same candidate set drives the per-node spread preview in project creation, the agent that places egress IPs on nodes, and the gateway selection in egress policies, so there is one source of truth.Egress HA
With a single candidate node, that node is a single point of failure for every egress IP it carries. The Egress HA section configures BGP-backed failover for the egress path:- Egress interface — the interface egress IPs are placed on, typically a VLAN subinterface of the nodes’ bond.
- Local ASN and AS-path prepend count — how the egress speakers present themselves to the upstream, and how strongly standby paths are depreferenced.
- Upstream peers — the routers the egress nodes peer with: address, remote ASN, optional eBGP multihop and BFD per peer.
- BFD timers — shared receive/transmit intervals and multiplier. At 50 ms / 50 ms with a multiplier of 3, a dead node is detected in roughly 150 ms — the egress IP moves before applications notice.
- Per-node settings — the candidate toggle and the BGP source address each node peers from.
Egress HA configures the platform’s own BGP speaker on the candidate nodes — it is independent of the cluster-wide BGP engine settings above, because failover needs per-node advertise and withdraw that a cluster-scoped configuration cannot express.
Egress policies
The policy table lists everyCiliumEgressGatewayPolicy and supports full CRUD. A policy says: traffic from these pods to these destinations leaves via this gateway node with this source IP.
A sanitized policy, as the table shows it:
- Egress IP and Interface are mutually exclusive. With neither set, the default-route interface’s address is used.
- In-cluster destinations are automatically excluded, even when they fall inside the destination CIDRs.
- If the node selector matches several nodes, the first in lexical order wins — for deterministic placement, use the candidate machinery rather than broad selectors.
Policies generated from a project’s egress configuration appear in the table but are read-only there — they carry the owning project in their labels and follow the project lifecycle. A project spreading several egress IPs across gateway nodes materializes as one such policy per node/IP pair. Edit the project, not the policy.
Permissions
Both are scoped to
krn:vks:supervisor:<supervisor>:cilium:*.
Related
Pools & IPAM
The pools whose prefixes populate the advertise table.
Project networking
The per-tenant intent behind read-only policies and project advertise rows.
Gateways & Routes
The inbound counterpart to egress.
Networking overview
The engine model and the Overview tab’s advertise snapshot.