Skip to content

Commit 639a31b

Browse files
committed
KEP 1645: add more conflict condition on asymetrical traffic
Signed-off-by: Arthur Outhenin-Chalandre <arthur@cri.epita.fr>
1 parent 145ae68 commit 639a31b

File tree

1 file changed

+7
-2
lines changed
  • keps/sig-multicluster/1645-multi-cluster-services-api

1 file changed

+7
-2
lines changed

keps/sig-multicluster/1645-multi-cluster-services-api/README.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -489,7 +489,10 @@ a hint to influence the `IPs` and `ipFamilies` of the ServiceImport object.
489489
The exact mechanism for determining those fields is implementation-defined.
490490
If `ipFamilies` is set on the ServiceImport object, it must not have duplicated
491491
families (for instance `ipFamilies: [IPv4, IPv4]` is not valid) and the IPs
492-
should eventually be in the same order as what is defined in `ipFamilies`.
492+
should eventually be in the same order as what is defined in `ipFamilies`. If
493+
conflicting `ipFamilies` are found among the constituent Services, implementations
494+
must raise an `IPFamilyConflict` condition when this might result in network
495+
traffic reaching only a subset of the backends depending on the IP protocol used.
493496

494497
Also note that even in a dual stack cluster regular Services are by default SingleStack
495498
which might default to IPv4 or IPv6 depending on the cluster configuration and there
@@ -1020,7 +1023,9 @@ The conflict will be resolved by assigning precedence based on each
10201023
A derived service will be accessible with the clusterset IP at the ports
10211024
dictated by child services. If the external properties of service ports for a
10221025
set of exported services don’t match, the clusterset service will expose the
1023-
union of service ports declared on its constituent services.
1026+
union of service ports declared on its constituent services and raise a `PortConflict`
1027+
conflict condition. In that case, network traffic must be directed only to endpoints
1028+
from constituent services that actually expose the targeted port.
10241029

10251030
Like regular services, the resulting ports must respect two rules:
10261031
- Have no duplicated names (including unnamed/empty name)

0 commit comments

Comments
 (0)