Skip to content

Commit 634928c

Browse files
authored
Merge pull request #185 from projectsyn/docs/cilium-egress-bgp
Add note about experimental nature of BGP namespace egress IPs
2 parents cbb50ea + db4a625 commit 634928c

File tree

4 files changed

+14
-1
lines changed

4 files changed

+14
-1
lines changed

component/espejote-templates/egress-gateway.libsonnet

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ local NamespaceEgressPolicy =
113113
egress_range,
114114
namespace,
115115
],
116+
[if bgp_egress_ip then 'cilium.syn.tools/experimental-policy']: 'true',
116117
'cilium.syn.tools/egress-ip': egress_ip,
117118
'cilium.syn.tools/interface-prefix': interface_prefix,
118119
'cilium.syn.tools/egress-range': egress_range,

docs/modules/ROOT/pages/references/parameters.adoc

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -408,12 +408,22 @@ When this field is omitted or empty, the component generates egress policies wit
408408
Such policies assign the egress IP to all traffic originating in the namespace.
409409
====
410410

411+
[IMPORTANT]
412+
====
413+
Support for configuring BGP egress IPs through `egress_ip_ranges` is currently experimental.
414+
415+
Policies which configure BGP egress IPs have an additional annotation `cilium.syn.tools/experimental-policy=true`.
416+
====
417+
411418
[NOTE]
412419
====
413420
Field `bgp_policy_labels` is optional.
421+
The component's support for configuring BGP egress IPs through `egress_ip_ranges` is currently experimental.
414422
415423
When the field is provided, and not an empty object, the component adds the contents as entries in `metadata.labels` of the resulting policies.
416-
In this case, the component also configures the egress policies directly with the egress IP and `maxGatewayNodes: 1` in the `spec.egressGroups` entry.
424+
In this case, the component configures the egress policies with https://docs.isovalent.com/v1.16/configuration-guide/networking/egress-gateway/introduction.html#requirements-for-egress-ip-and-ipam-feature[Cilium's Egress Gateawy IPAM] and `maxGatewayNodes: 1` in the `spec.egressGroups` entry.
425+
426+
Please note that policies which use EGW IPAM will ignore static routes on the active gateway node (as of Cilium 1.16.16 and Cilium 1.17.9).
417427
418428
If the field is omitted or empty, the component configures the egress group with the interface name and doesn't set `maxGatewayNodes`.
419429
====

tests/golden/egress-gateway/cilium/cilium/20_namespace_egress_ip_policies.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ metadata:
9494
in egress range "egress_f" (192.0.2.160 - 192.0.2.190) to namespace qux.
9595
cilium.syn.tools/egress-ip: 192.0.2.160
9696
cilium.syn.tools/egress-range: 192.0.2.160 - 192.0.2.190
97+
cilium.syn.tools/experimental-policy: 'true'
9798
cilium.syn.tools/interface-prefix: egress_f
9899
cilium.syn.tools/source-namespace: qux
99100
labels:

tests/golden/egress-gateway/cilium/cilium/40_egress_ip_managed_resource.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,7 @@ spec:
264264
egress_range,
265265
namespace,
266266
],
267+
[if bgp_egress_ip then 'cilium.syn.tools/experimental-policy']: 'true',
267268
'cilium.syn.tools/egress-ip': egress_ip,
268269
'cilium.syn.tools/interface-prefix': interface_prefix,
269270
'cilium.syn.tools/egress-range': egress_range,

0 commit comments

Comments
 (0)