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

Add the ability to add a secondary load balancer to the control plane #4554

Closed
vincepri opened this issue Oct 9, 2023 · 6 comments · Fixed by #4733
Closed

Add the ability to add a secondary load balancer to the control plane #4554

vincepri opened this issue Oct 9, 2023 · 6 comments · Fixed by #4733
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release.

Comments

@vincepri
Copy link
Member

vincepri commented Oct 9, 2023

/kind feature
/assign
/priority important-soon

Describe the solution you'd like
In a lot of topologies, the control plane has a public and internal load balancer. Currently the AWSCluster CRD offers only ways to configure a single control plane.

Given the long term proposal for an AWSNetwork CRD to address the current shortcomings of AWSCluster, I'd like to propose to add a way to create and attach also a secondary load balancer, configured by the user, and limited only to NLB or ALB (aka elbv2, not classic) load balancer types.

There are a few options we can consider, currently leaning towards the first one:

  • [preferred] Add a SecondaryControlPlaneLoadBalancer field alongside the ControlPlaneLoadBalancer one and take into account of the new field and behavior in the current elb scopes and reconcilers.
    • This would be a backward compatible change.
    • The code changes should not be too invasive, and can be made in a next minor release.
    • Compatible with ClusterClass and SSA.
  • Add a list of AdditionalControlPlaneLoadBalancers alongside the ControlPlaneLoadBalancer.
    • Requires a CRD breaking change to support SSA and ClusterClass if we want to reuse the struct in ControlPlaneLoadBalancer, given that the name is optional.
    • Unclear if more than two load balancers for the control plane is useful at all.
    • Handling a large number of load balancer and storing their information might be tricky.

cc @richardcase @JoelSpeed @nrb

@k8s-ci-robot k8s-ci-robot added kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Oct 9, 2023
@vincepri
Copy link
Member Author

vincepri commented Oct 9, 2023

/triage accepted

@k8s-ci-robot k8s-ci-robot added triage/accepted Indicates an issue or PR is ready to be actively worked on. and removed needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Oct 9, 2023
@nrb
Copy link
Contributor

nrb commented Oct 9, 2023

/assign @nrb

@richardcase
Copy link
Member

There have been a few asks related to this, tagging for future reference: #2849 and #1484

@nrb
Copy link
Contributor

nrb commented Oct 16, 2023

/milestone v2.3.0

@k8s-ci-robot
Copy link
Contributor

@nrb: You must be a member of the kubernetes-sigs/cluster-api-provider-aws-maintainers GitHub team to set the milestone. If you believe you should be able to issue the /milestone command, please contact your Cluster API Provider AWS Maintainers and have them propose you as an additional delegate for this responsibility.

In response to this:

/milestone v2.3.0

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/test-infra repository.

@k8s-triage-robot
Copy link

This issue is labeled with priority/important-soon but has not been updated in over 90 days, and should be re-triaged.
Important-soon issues must be staffed and worked on either currently, or very soon, ideally in time for the next release.

You can:

  • Confirm that this issue is still relevant with /triage accepted (org members only)
  • Deprioritize it with /priority important-longterm or /priority backlog
  • Close this issue with /close

For more details on the triage process, see https://www.kubernetes.dev/docs/guide/issue-triage/

/remove-triage accepted

@k8s-ci-robot k8s-ci-robot added needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. and removed triage/accepted Indicates an issue or PR is ready to be actively worked on. labels Jan 19, 2024
@nrb nrb mentioned this issue Jan 22, 2024
2 tasks
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-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants