Only for customers using the Qovery Managed clusters on AWS
Dear customer,
We are excited to inform you that in the upcoming days, we will integrate the AWS Application Load Balancers (ALB) Controller into our product, adding more network control and features.
The rollout of this feature will require a migration on your cluster to remove the old Network Load Balancers controller (NLB), with a possible impact on your applications. Check the rest of the article for more information.
Context
At Qovery, we initially started with Kubernetes’ built-in Network Load Balancer controller (NLB). It was the best choice at the beginning of our company since it simplified a lot of things (If you are interested, we have described all the reasons in our blog post here).
Over the past weeks, we have been working to get rid of this legacy part and integrate the ALB controller.
We are not migrating from NLB to ALB, we will still be using NLB under the hood. What is changing is the Kubernetes controller that we use to manage the load balancers on AWS
Benefits of Activating the ALB Controller
- Reduced Downtime: The ALB controller helps decrease the downtime for some applications during updates.
- Improved IP Forwarding: The original IP addresses are forwarded directly to your application, rather than the load balancer’s IP, providing enhanced transparency and traceability.
- We will soon add other functionalities that are available only on applications using the ALB controller.
ALB controller, the default choice for new clusters
The ALB controller feature will be enabled by default for all new clusters, ensuring that you benefit from its advantages right from the start.
Migrating an existing application to ALB
We encourage you to activate this feature as soon as you can to take advantage of the benefits listed above.
Since the switch creates a small downtime (see sections below), we will let you decide whenever you want to apply this change.
Test the switch on a dev/staging cluster before applying this change on your production cluster.
If no action is taken from you, we will force the migration to the ALB by the end of October 2024.
If you have any questions or need assistance with the migration process, please do not hesitate to contact our support team or comment on this post.
Migration and Downtime
Activating the ALB controller involves a migration process with a maximum expected downtime of 10 minutes. This downtime is necessary because the current load balancer must be deleted and replaced as per AWS requirements. We strongly advise against enabling this advanced setting during your production hours to minimize any impact on your operations.
How to migrate
WARNING: as described above, a downtime is expected during this migration
- Through the advanced settings of your cluster, you can activate the ALB by changing the value of the advanced settings
aws.eks.enable_alb_controller
.
Update 09/12/2024: the enabled alb flag will be active the 09/16/2024 for non productions cluster only.
Update 09/17/2024: the flag has been released and is available only for non-production clusters. You can now start testing the ALB controller on your cluster!
- Once the value is updated, you will need to redeploy your cluster to apply the change.
- All your services exposed on an HTTP port will be migrated. Others like TCP/UDP will have to be redeployed to benefits of the ALB controller.
Note: if you have custom domains, you don’t have nothing especially to do, they will be automatically redirected to the new load balancer.
Thanks
Alessandro