Skip to content

[breaking] [deprecation] Remove Cilium BGP load balancer support - #602

Open
moshevayner wants to merge 1 commit into
mainfrom
remove-cilium-bgp-mode
Open

[breaking] [deprecation] Remove Cilium BGP load balancer support#602
moshevayner wants to merge 1 commit into
mainfrom
remove-cilium-bgp-mode

Conversation

@moshevayner

@moshevayner moshevayner commented Jul 31, 2026

Copy link
Copy Markdown
Member

Signed-off-by: Moshe Vayner moshe@vayner.me

Summary

Removes Cilium BGP load-balancer support from the CCM.

  • Removes the Cilium BGP runtime implementation, flags, Helm configuration, RBAC, unit tests, and e2e test setup.
  • Removes Cilium dependencies no longer needed by CCM.
  • Updates documentation and examples to describe NodeBalancers as the supported LoadBalancer implementation.
  • Retains --load-balancer-type=nodebalancer for existing deployment compatibility.

Deprecation / Breaking Change

--load-balancer-type=cilium-bgp is no longer supported.

Clusters using Cilium BGP shared-IP load balancing must migrate to NodeBalancers, including Premium NodeBalancers where higher capacity is required.

Validation

  • mise run codegen
  • go test ./...
  • helm lint deploy/chart
  • helm template ccm deploy/chart
  • Verified no remaining Cilium BGP flags, configuration, e2e wiring, or module dependency references

General:

  • Have you removed all sensitive information, including but not limited to access keys and passwords?
  • Have you checked to ensure there aren't other open or closed Pull Requests for the same bug/feature/question?

Pull Request Guidelines:

  1. Does your submission pass tests?
  2. Have you added tests?
  3. Are you addressing a single feature in this PR?
  4. Are your commits atomic, addressing one change per commit?
  5. Are you following the conventions of the language?
  6. Have you saved your large formatting changes for a different PR, so we can focus on your work?
  7. Have you explained your rationale for why this feature is needed?
  8. Have you linked your PR to an open issue

Signed-off-by: Moshe Vayner <moshe@vayner.me>
Comment on lines +19 to +34
func createTestService() *v1.Service {
return &v1.Service{
ObjectMeta: metav1.ObjectMeta{
Name: randString(),
Namespace: "test-ns",
UID: "foobar123",
},
Spec: v1.ServiceSpec{
Ports: []v1.ServicePort{
{Name: randString(), Protocol: "TCP", Port: 80, NodePort: 30000},
{Name: randString(), Protocol: "TCP", Port: 8080, NodePort: 30001},
},
},
}
}

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This helper previously existed in cilium_loadbalancers_test.go but is used by other tests as well, so I moved it into this file.

@codecov

codecov Bot commented Jul 31, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 75.14%. Comparing base (d3be9cb) to head (0540341).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #602      +/-   ##
==========================================
+ Coverage   73.76%   75.14%   +1.38%     
==========================================
  Files          19       18       -1     
  Lines        3045     2672     -373     
==========================================
- Hits         2246     2008     -238     
+ Misses        538      453      -85     
+ Partials      261      211      -50     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@moshevayner moshevayner changed the title [deprecation] Remove Cilium BGP load balancer support [breaking] [deprecation] Remove Cilium BGP load balancer support Jul 31, 2026
@moshevayner moshevayner added the breaking-change for breaking changes in the changelog. label Jul 31, 2026
@moshevayner
moshevayner marked this pull request as ready for review July 31, 2026 21:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking-change for breaking changes in the changelog. deprecation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant