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

Support of allowEmptyServices in TraefikService #9424

Merged
merged 3 commits into from Nov 22, 2022

Conversation

jeromeguiard
Copy link
Contributor

@jeromeguiard jeromeguiard commented Oct 7, 2022

What does this PR do?

This PR fix issue #9423 related to flag not taken into account for traefik service

Motivation

It is a bug in the configBuilder object that doesn't represent expected code behavior

Fixes #9423

More

  • Added/updated tests
  • Added/updated documentation

@ldez ldez changed the title fix: allowemptyservice issue#9423 fix: allowemptyservice Oct 7, 2022
@ldez ldez changed the title fix: allowemptyservice fix: support of allowEmptyService in traefikService Oct 7, 2022
@ldez
Copy link
Member

ldez commented Oct 7, 2022

Hello,

can you explain the draft state of this PR?

Because if it's a draft we will not review it.

@jeromeguiard jeromeguiard marked this pull request as ready for review October 9, 2022 13:46
@jeromeguiard
Copy link
Contributor Author

Hello,

The draft status was because I wanted to make sure about the tests. I added one instead of changing an existing one.

It is done now.

Thanks

@rtribotte
Copy link
Member

Hello @jeromeguiard,

We thought about the changes and about the use case, and here are our takes:

  • We do agree that the propagation of the allowEmptyServices option all along TraefikServices is missing. So we are moving the PR to the review state.

  • Regarding Canary or Blue/Green deployment scenarios, we think that propagating the allowEmptyServices option would help if weights of the WRR are correctly managed. Indeed, propagating the allowEmptyServices makes it possible to build a WRR with some services that have servers and some others that don't. This would make a fraction of requests (depending on the weight) end up with a 503 status code.

  • Nonetheless, because the allowEmptyServices option is a provider option, it would impact all services discovered by the IngressRouteCRD provider. Having to leverage it to support properly Blue/Green deployments may not fit in every situation. Hence, we may lack an alternative, for instance, ignoring zero-weight WRR services (that will, anyway, never handle the traffic).

@rtribotte rtribotte changed the title fix: support of allowEmptyService in traefikService Support of allowEmptyServices in TraefikService Nov 21, 2022
@rtribotte rtribotte force-pushed the local-v2.9 branch 3 times, most recently from eb1c1ab to 591bd17 Compare November 21, 2022 13:03
Copy link
Member

@rtribotte rtribotte left a comment

Choose a reason for hiding this comment

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

Thanks 👍

Copy link
Member

@kevinpollet kevinpollet left a comment

Choose a reason for hiding this comment

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

Thanks 👍

@kevinpollet kevinpollet added this to the 2.9 milestone Nov 22, 2022
@traefiker traefiker merged commit d547718 into traefik:v2.9 Nov 22, 2022
v2 automation moved this from To review to Done Nov 22, 2022
@rtribotte rtribotte removed their assignment Jan 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
v2
Done
Development

Successfully merging this pull request may close these issues.

None yet

7 participants