antrea icon indicating copy to clipboard operation
antrea copied to clipboard

Implement proxier healthcheck in Antrea agent.

Open shettyg opened this issue 2 years ago • 2 comments

With kube-proxy, external load-balancers check to see whether the node LB is healthy by doing a healthcheck on kube-proxy on port 10256. kube-proxy in turn returns back the time when the most recent update happened on dataplane.

e.g: curl.exe http://127.0.0.1:10256/healthz {"lastUpdated": "2022-08-18 16:16:11.6510411 +0000
GMT m=+257377.633892701",
"currentTime": "2022-08-18 16:16:11.6510411 +0000
GMT m=+257377.633892701"}

In kube-proxy replacement mode, antrea does not support this feature. This becomes more important for Windows support as userspace kube-proxy is being deprecated.

This commit implements this feature in Antrea and is inspired by the same feature in upstream kube-proxy.

Signed-off-by: Guru Shetty [email protected]

shettyg avatar Sep 02 '22 19:09 shettyg

CC: @jianjuns @tnqn @hongliangl

This is the next step after service health implementation. There is still a TODO item in the code, but I wanted early comments whether you are fine with something like this in Antrea proxy.

shettyg avatar Sep 02 '22 19:09 shettyg

Codecov Report

Merging #4196 (559f3e4) into main (5dfdf24) will increase coverage by 0.30%. The diff coverage is 47.82%.

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #4196      +/-   ##
==========================================
+ Coverage   60.32%   60.62%   +0.30%     
==========================================
  Files         380      384       +4     
  Lines       53798    54384     +586     
==========================================
+ Hits        32452    32972     +520     
- Misses      18922    18966      +44     
- Partials     2424     2446      +22     
Flag Coverage Δ
integration-tests 34.73% <0.00%> (-0.16%) :arrow_down:
kind-e2e-tests 48.92% <78.57%> (-0.64%) :arrow_down:
unit-tests 41.74% <0.00%> (+0.52%) :arrow_up:
Impacted Files Coverage Δ
cmd/antrea-agent/agent.go 0.00% <0.00%> (ø)
pkg/agent/proxy/proxier.go 66.95% <78.57%> (+0.92%) :arrow_up:
...lowaggregator/clickhouseclient/clickhouseclient.go 73.59% <0.00%> (-9.13%) :arrow_down:
pkg/agent/controller/networkpolicy/reject.go 73.50% <0.00%> (-7.50%) :arrow_down:
pkg/flowaggregator/options/options.go 31.25% <0.00%> (-5.49%) :arrow_down:
pkg/controller/networkpolicy/tier.go 50.00% <0.00%> (-5.00%) :arrow_down:
pkg/agent/openflow/service.go 88.04% <0.00%> (-3.27%) :arrow_down:
...gent/controller/networkpolicy/status_controller.go 78.99% <0.00%> (-2.53%) :arrow_down:
pkg/flowaggregator/flowaggregator.go 67.56% <0.00%> (-2.49%) :arrow_down:
pkg/agent/flowexporter/utils.go 82.97% <0.00%> (-2.13%) :arrow_down:
... and 32 more

codecov[bot] avatar Sep 02 '22 19:09 codecov[bot]

This PR is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] avatar Dec 19 '22 00:12 github-actions[bot]

This PR is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] avatar Mar 20 '23 00:03 github-actions[bot]