-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
feat: Add support for Auto Scaling Group Instance Refresh for self-managed worker groups #1224
feat: Add support for Auto Scaling Group Instance Refresh for self-managed worker groups #1224
Conversation
0f8b9da
to
94dedbd
Compare
@bashims does the phased deployments anouncement make any difference to this PR? It looks like you haven't configured the ASGs to work with the aws-node-termination-handler (queue processor mode, chart)? I would have expected this to be a requirement as you wouldn't want a node to suddenly terminate with no warning. |
Good question! I am not too sure if the checkpoint feature is available in the AWS provider. For now it seems to support the original instance refresh feature.
Good point. I can add something to the docs to mention that one should deploy the |
@bashims I wasn't refering to actually installing the chart but you'll need to set up a SQS queue for the events and then provide the chart installation instructions to work with instance refresh (specifically controller not daemonset mode). |
@stevehipwell Awesome feedback. I was not aware. I will update this PR to include this feature. |
Hi, what's the status with this PR? |
Hi, |
Good question. I don't think so. I think with this addition we can drop the @bashims @stevehipwell I think we should add in docs that using instance refresh will recreate your nodes, but it doesn't drains them. To do that, users should install https://github.com/aws/aws-node-termination-handler Related to: |
I wholeheartedly agree. From reading the issues, I've come across references on random_pet usage and from the docs it isn't highlighted that using |
Humm... But users should handle aws-node-terminination-handler installation with all requirements themselves. In this module, we'll only support changes in worker ASG like:
Everything else should be handled outside of this module. We can write docs for that. If someone willing to write a module to address aws-node-termination-handler installation, we can probably include that link in docs. |
@barryib I think the SQS linking is part of the ASG configuration, so at the minimum that would need to be passed into the module so the aws-node-termination-handler can be linked up correctly. |
Yep. It'll be part of the lifecycle hook configuration https://github.com/terraform-aws-modules/terraform-aws-eks/blob/master/local.tf#L37 |
I can take care of that in this PR. |
Thanks @bashims. Can you please:
|
Absolutely. |
94dedbd
to
6b3b135
Compare
|
@barryib I think this PR is nearly ready. I am working on complete example that includes necessary setup for graceful node draining with instance refresh. I should have this done soon. |
36285a0
to
e15be3d
Compare
e15be3d
to
e40fe2b
Compare
I think that this PR is ready to go. The complete example works perfectly. Just waiting on workflow approval, and final review. Once that is done I will open a PR for dropping |
9fe3b84
to
d76a956
Compare
@bashims you need to update your branch and resolve conflicts. |
@barryib are you okay if I squash and rebase off of master? |
Yep. |
Signed-off-by: Benjamin Ash <[email protected]>
2a71d44
to
05835f8
Compare
Thanks @bashims for your contributions. |
This now shipped in v16.0.0 |
…naged worker groups (terraform-aws-modules#1224) Co-authored-by: Thierno IB. BARRY <[email protected]>
…naged worker groups (terraform-aws-modules#1224) Co-authored-by: Thierno IB. BARRY <[email protected]>
I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. If you have found a problem that seems related to this change, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further. |
PR o'clock
Description
Add support for the instance_refresh feature of the AWS provisioner added in hashicorp/terraform-provider-aws#16678
This PR resolves #929
See:
https://aws.amazon.com/blogs/compute/introducing-instance-refresh-for-ec2-auto-scaling/
Checklist