Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Control Leader Election with Agent #2850

Open
mpstefan opened this issue Dec 2, 2024 · 0 comments
Open

Control Leader Election with Agent #2850

mpstefan opened this issue Dec 2, 2024 · 0 comments
Labels
blocked Blocked by other issue enhancement New feature or request refined Requirements are refined and the issue is ready to be implemented. size/large Estimated to be completed within two weeks
Milestone

Comments

@mpstefan
Copy link
Collaborator

mpstefan commented Dec 2, 2024

As a cluster operator of NGF
I want the control plane of NGF to fail-over to another pod when the control plane pod goes down
So that I can ensure I am providing a highly available control plane to the product teams using my cluster.

Acceptance

  • NGF needs to elect a lead control plane pod.
    • The lead control plane pod is marked as ready and all other pods as unready.
    • All Agent connections from the data plane should be to the control plane leader.
    • If the leader is not marked as ready, the leader should switch to another available control plane pod.
  • Non-leader pods should not send any config.

Dev Notes

  • Only the leader pod should be marked as ready by Kubernetes, all other pods are marked as unready.
  • Any pod that tries to connect to NGF will only connect to the ready pod.

Dependencies

@mpstefan mpstefan modified the milestones: v1.6.0, v2.0.0 Dec 2, 2024
@mpstefan mpstefan added the enhancement New feature or request label Dec 2, 2024
@mpstefan mpstefan changed the title Leader Election Among Control Planes Control Leader Election with Agent Dec 2, 2024
@mpstefan mpstefan added blocked Blocked by other issue size/large Estimated to be completed within two weeks refined Requirements are refined and the issue is ready to be implemented. labels Jan 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked Blocked by other issue enhancement New feature or request refined Requirements are refined and the issue is ready to be implemented. size/large Estimated to be completed within two weeks
Projects
Status: 🆕 New
Development

No branches or pull requests

1 participant