Skip to content

Commit c1ea401

Browse files
committed
More comments review
1 parent b69cbc4 commit c1ea401

File tree

1 file changed

+11
-15
lines changed
  • keps/sig-network/1860-kube-proxy-IP-node-binding

1 file changed

+11
-15
lines changed

keps/sig-network/1860-kube-proxy-IP-node-binding/README.md

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -191,14 +191,13 @@ Yes. It is tested by `TestUpdateServiceLoadBalancerStatus` in pkg/registry/core/
191191

192192
###### How can a rollout or rollback fail? Can it impact already running workloads?
193193

194-
A rollout can fail in case the new API is supported and consumed by CCM,
195-
but not all nodes get kube-proxy updated, so part of the workloads on a node will
196-
start sending the traffic to a LoadBalancer, while the others may still have the
197-
loadbalancer IP configured on a node interface.
198-
199-
In case of a rollback, kube-proxy will also rollback to the default behavior, re-adding
200-
the LoadBalancer interface. This can fail for workloads that may be already relying
201-
on the new behavior (eg. sending traffic to the LoadBalancer expecting some additional
194+
As the rollout will enable a feature not being used yet, there is no possible failure
195+
scenario as this feature will then need to be also enabled by the cloud provider on
196+
the services resources.
197+
198+
In case of a rollback, kube-proxy will also rollback to the default behavior, switching
199+
back to VIP mode. This can fail for workloads that may be already relying on the
200+
new behavior (eg. sending traffic to the LoadBalancer expecting some additional
202201
features, like PROXY and TLS Termination as per the Motivations section).
203202

204203
###### What specific metrics should inform a rollback?
@@ -217,7 +216,7 @@ No.
217216

218217
###### How can an operator determine if the feature is in use by workloads?
219218

220-
Checking if the field `.status.loadBalancer.ingress.ipMode` is set to `Proxy`
219+
If the LB IP works correctly from pods, then the feature is working
221220

222221
###### How can someone using this feature know that it is working for their instance?
223222

@@ -251,13 +250,10 @@ to determine if the feature is being used, and if there is any drift between nod
251250
###### Does this feature depend on any specific services running in the cluster?
252251

253252
- cloud controller manager / LoadBalancer controller
254-
- LoadBalancer controller should set the right .status field for `ipMode`
255-
- In case of this feature outage nothing happens, as LoadBalancers will be
256-
already out of sync with services in case of CCM being crashed
253+
- If there is an outage of the cloud controller manager, the result is the same
254+
as if this feature wasn't in use; the LoadBalancers will get out of sync with Services
257255
- kube-proxy or other Service Proxy that implements this feature
258-
- Network interface IP address programming
259-
- In case of this feature outage, the user will get the same result/behavior as
260-
if the `ipMode` field has not been set.
256+
- If there is a service proxy outage, the result is the same as if this feature wasn't in use
261257

262258
### Scalability
263259

0 commit comments

Comments
 (0)