kubernetes-sigs / aws-load-balancer-controller

A Kubernetes controller for Elastic Load Balancers
https://kubernetes-sigs.github.io/aws-load-balancer-controller/
Apache License 2.0
3.96k stars 1.47k forks source link

You cannot enable both slow start and weighted random algorithm on a target group #3686

Closed ibalat closed 1 month ago

ibalat commented 6 months ago

Describe the bug I am trying to update target group attributes but alb controller is logging below log. But, my attributes not include any slow start config. This error effect all target groups and it logging same error log for all target groups. It locked all alb

I use: "alb.ingress.kubernetes.io/target-group-attributes" = "load_balancing.algorithm.type=weighted_random, load_balancing.algorithm.anomaly_mitigation=on, deregistration_delay.timeout_seconds=35"

I tried all combination like no attribute and slow_start.duration_seconds=0 but every time it logged same error

In UI:

image
{"level":"debug","ts":"2024-05-09T14:36:04Z","logger":"events","msg":"Failed deploy model due to InvalidConfigurationRequest: You cannot enable both slow start and weighted random algorithm on a  │
│ target group\n\tstatus code: 400, request id: xxx","type":"Warning","object":{"kind":"Ingress","namespace":"stage","name":"xxx","uid":"xxx","apiVersio │
│ n":"networking.k8s.io/v1","resourceVersion":"xxx"},"reason":"FailedDeployModel"}

Expected outcome It have to update target group attributes

Environment

ibalat commented 6 months ago

we checked all ingress with kubectl get ingress -nprod -oyaml | grep -A 10 slow_start and just one ingress contains "slow_start" configuration (at the same time, this ingress set weigted algorithm on alb UI). This damaged ingress blocked all remain ingress updates. I think that this situation is a bug. I guess alb controller merge all configs and update bulky. If one ingress has a problem, all others logs same error message and update not completed. Can it be solved please

aravindsagar commented 6 months ago

Hi, target groups do not support slow start and weighted random algorithm at the same time. Also if any of the ingresses in an ingress group is broken, updates to the whole group will fail. This is by design to avoid further issues arising.

Can you let us know if the slow start or the load balancing algorithm attributes were changed in the UI or it got into this state in some other way?

ibalat commented 6 months ago

thanks for info. Sure, example issue scenario is below:

  1. UI has weighted random algorithm and slow start is 0
  2. I set "alb.ingress.kubernetes.io/target-group-attributes" = "slow_start.duration_seconds=60, deregistration_delay.timeout_seconds=35" on ingress
  3. alb controller throw You cannot enable both slow start and weighted random algorithm on a target group
  4. I manually updated UI with round robin algorithm and slow start 60
  5. apply again same ingress attributes and alb controller works now (successfully reconciled)

My scenario explicitly show that there is a problem at switching algorithm and slow start values.

image
k8s-triage-robot commented 3 months ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot commented 2 months ago

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

k8s-triage-robot commented 1 month ago

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/close not-planned

k8s-ci-robot commented 1 month ago

@k8s-triage-robot: Closing this issue, marking it as "Not Planned".

In response to [this](https://github.com/kubernetes-sigs/aws-load-balancer-controller/issues/3686#issuecomment-2423847434): >The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs. > >This bot triages issues according to the following rules: >- After 90d of inactivity, `lifecycle/stale` is applied >- After 30d of inactivity since `lifecycle/stale` was applied, `lifecycle/rotten` is applied >- After 30d of inactivity since `lifecycle/rotten` was applied, the issue is closed > >You can: >- Reopen this issue with `/reopen` >- Mark this issue as fresh with `/remove-lifecycle rotten` >- Offer to help out with [Issue Triage][1] > >Please send feedback to sig-contributor-experience at [kubernetes/community](https://github.com/kubernetes/community). > >/close not-planned > >[1]: https://www.kubernetes.dev/docs/guide/issue-triage/ Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository.