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 mindful draining #43

Open
WilboMo opened this issue Apr 19, 2021 · 3 comments
Open

Add mindful draining #43

WilboMo opened this issue Apr 19, 2021 · 3 comments

Comments

@WilboMo
Copy link
Contributor

WilboMo commented Apr 19, 2021

What I'd like:
Currently Updater operates under the assumption that it is the only actor manipulating the instances to DRAINING or ACTIVE. In situations where this is not true instance state could be unintentionally changed negatively by Updater. Implementing a mechanism to check for state changes by other actors and handling the instances accordingly could prevent these issues and allow Updater to run in clusters where it is not the only manipulator of an instance's state.

@WilboMo WilboMo mentioned this issue Apr 19, 2021
@umairishaq
Copy link
Contributor

We could use CloudWatch Rule to filter and detect ECS events emitted by CloudTrail. From the various integrations available, like SQS, SNS, Lambda etc., the rule, when triggered, would set off custom logic within Updater. Thoughts?

@WilboMo
Copy link
Contributor Author

WilboMo commented May 11, 2021

We could use CloudWatch Rule to filter and detect ECS events emitted by CloudTrail. From the various integrations available, like SQS, SNS, Lambda etc., the rule, when triggered, would set off custom logic within Updater. Thoughts?

I think thats a great idea and totally worth exploring. Thank you for the suggestion!

@jhaynes jhaynes added this to the GA milestone May 11, 2021
@jhaynes jhaynes removed this from the GA milestone May 21, 2021
@ybob1980
Copy link

Could we extend ECS updater to cover non-service task as well? For example,

(1) ECS updater put instance in drain mode to prevent further task placement
(2) After waiting for x minutes (configurable value, timeout) or existing running tasks complete, reboot instance to consume the update

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants