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

custom or new LB algorithm support #12523

Closed
touwang opened this issue Dec 19, 2024 · 5 comments
Closed

custom or new LB algorithm support #12523

touwang opened this issue Dec 19, 2024 · 5 comments
Labels
kind/feature Categorizes issue or PR as related to a new feature. needs-priority needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one.

Comments

@touwang
Copy link

touwang commented Dec 19, 2024

Currently, there are many balancer implementation supported by ingress nginx: round_robin, chash, chashsubset, sticky_balanced, sticky_persistent, ewma. But these balancer implementation doesn't fully meet our requirement. Also we can't add customized balancer with custom Lua plugins since it only executed in below phases:

  • init_worker: useful for initializing some data per Nginx worker process
  • rewrite: useful for modifying request, changing headers, redirection, dropping request, doing authentication etc
  • header_filter: this is called when backend response header is received, it is useful for modifying response headers
  • body_filter: this is called when response body is received, it is useful for logging response body
  • log: this is called when request processing is completed and a response is delivered to the client

Is there any way to support customized balancer without modify ingress nginx source code?

Also, the backend endpoint information send to nginx "/configuration/backends" API by controller only contains the address&port information, could it include more informations? e.g. the name of the pod

No

@touwang touwang added the kind/feature Categorizes issue or PR as related to a new feature. label Dec 19, 2024
@k8s-ci-robot
Copy link
Contributor

This issue is currently awaiting triage.

If Ingress contributors determines this is a relevant issue, they will accept it by applying the triage/accepted label and provide further guidance.

The triage/accepted label can be added by org members by writing /triage accepted in a comment.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. needs-priority labels Dec 19, 2024
@longwuyuan
Copy link
Contributor

Unfortunately there is no way to use custom/new load-balancing algorithms.

We are short on resources and hit by CVEs so we are actually dropping support for many stable and useful features as either there are no resources to maintain them or they potentially get in the way of a secure controller.

@longwuyuan
Copy link
Contributor

/retitle custom or new LB algorithm support

@k8s-ci-robot k8s-ci-robot changed the title Customized balancer support custom or new LB algorithm support Dec 19, 2024
@strongjz
Copy link
Member

At this time, we are not actively adding new features as we migrate our focus to ingate.

We have discussed at the gateway-api community meeting and our latest ingress-nginx Kubcon Maintainer talk.

The repo to follow along is at: https://github.com/kubernetes-sigs/ingate

/close

@k8s-ci-robot
Copy link
Contributor

@strongjz: Closing this issue.

In response to this:

At this time, we are not actively adding new features as we migrate our focus to ingate.

We have discussed at the gateway-api community meeting and our latest ingress-nginx Kubcon Maintainer talk.

The repo to follow along is at: https://github.com/kubernetes-sigs/ingate

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. needs-priority needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one.
Projects
Development

No branches or pull requests

4 participants