submariner-io / submariner

Networking component for interconnecting Pods and Services across Kubernetes clusters.
https://submariner.io
Apache License 2.0
2.41k stars 188 forks source link

Track connection status between non GW nodes #2914

Open vthapar opened 7 months ago

vthapar commented 7 months ago

What would you like to be added: Some means to track connectivity status between non-GW nodes on two different clusters. Couple ways this can be achieved is:

  1. Periodically, each route-agent can validate the required routes/iptables on the corresponding node and update the status accordingly.
  2. Similar to the GW-GW health-checker, a health-checker can be implemented within the local cluster to monitor the connectivity between the non-GW nodes and the active GW node.

Why is this needed: Currently connetion status of gw-gw connectivity is tracked using a health checker. But there is no such means to track connectivity status between non-gw nodes. This connectivity can be lost due to some routes being deleted by user or CNI.

Subctl diagnose and verify can detect such problems but those need to be run explicitly by user, often after they've felt the impact of lost connectivity already. The "solution" in such scenarios is to restart routeagent, but user can't do that if they're not aware it needs a restart due to connectivity issues.

So it would be good if there was an intrinsic mechanism to detect such issue and report in status.

github-actions[bot] commented 3 months ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.