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

✨Autoscaling: Start using EBS-based EC2 buffers 🚨 #6143

Merged
merged 49 commits into from
Aug 22, 2024

Conversation

sanderegg
Copy link
Member

@sanderegg sanderegg commented Aug 6, 2024

What do these changes do?

In effect enable usage of EBS-based buffer machines (but still to be manually tested first of everything).
this was manually tested within AWS directly through /tests/manual and following README.md there.

Details:

  • added test to run autoscaling against AWS through pytest --external-env flag
  • buffer instances that are failing their cloud-init status test are deemed as broken and are auto-terminated
  • autoscaling task now uses buffer machines if available to fulfill cluster needs
  • logging improvements
  • added a fixture to auto-skip a test if the external-envfile is not set
  • reduce noise in autoscaling (werkzeug library)

Important Note:

This does not remove the old buffering system, but adds a new one that is currently not in use in any deployment.

Related issue/s

How to test

Dev-ops checklist

@sanderegg sanderegg added the a:autoscaling autoscaling service in simcore's stack label Aug 6, 2024
@sanderegg sanderegg added this to the Tom Bombadil milestone Aug 6, 2024
@sanderegg sanderegg self-assigned this Aug 6, 2024
@sanderegg sanderegg linked an issue Aug 6, 2024 that may be closed by this pull request
Copy link

codecov bot commented Aug 6, 2024

Codecov Report

Attention: Patch coverage is 75.67568% with 18 lines in your changes missing coverage. Please review.

Project coverage is 88.1%. Comparing base (cafbf96) to head (906a23a).
Report is 460 commits behind head on master.

Files Patch % Lines
...e_service_autoscaling/modules/auto_scaling_core.py 62.5% 9 Missing ⚠️
...e_autoscaling/modules/buffer_machines_pool_core.py 76.6% 7 Missing ⚠️
...ackages/aws-library/src/aws_library/ssm/_client.py 83.3% 0 Missing and 1 partial ⚠️
...ice_autoscaling/utils/buffer_machines_pool_core.py 87.5% 1 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff            @@
##           master   #6143      +/-   ##
=========================================
+ Coverage    84.5%   88.1%    +3.6%     
=========================================
  Files          10    1466    +1456     
  Lines         214   60912   +60698     
  Branches       25    1505    +1480     
=========================================
+ Hits          181   53718   +53537     
- Misses         23    6879    +6856     
- Partials       10     315     +305     
Flag Coverage Δ
integrationtests 64.9% <ø> (?)
unittests 86.1% <75.6%> (+1.5%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
...ackages/aws-library/src/aws_library/ec2/_client.py 100.0% <100.0%> (ø)
...ckages/aws-library/src/aws_library/ssm/__init__.py 100.0% <ø> (ø)
...ackages/aws-library/src/aws_library/ssm/_errors.py 100.0% <100.0%> (ø)
...rc/simcore_service_autoscaling/core/application.py 100.0% <ø> (ø)
...oscaling/src/simcore_service_autoscaling/models.py 100.0% <100.0%> (ø)
...ackages/aws-library/src/aws_library/ssm/_client.py 97.6% <83.3%> (ø)
...ice_autoscaling/utils/buffer_machines_pool_core.py 93.7% <87.5%> (ø)
...e_autoscaling/modules/buffer_machines_pool_core.py 90.6% <76.6%> (ø)
...e_service_autoscaling/modules/auto_scaling_core.py 92.8% <62.5%> (ø)

... and 1411 files with indirect coverage changes

@sanderegg sanderegg force-pushed the autoscaling/make-use-of-ebs branch 2 times, most recently from b5c0106 to 099a0d0 Compare August 8, 2024 13:35
@sanderegg sanderegg force-pushed the autoscaling/make-use-of-ebs branch 3 times, most recently from 5f90278 to 9392bd0 Compare August 12, 2024 17:12
@sanderegg sanderegg modified the milestones: Tom Bombadil, Eisbock Aug 13, 2024
@sanderegg sanderegg force-pushed the autoscaling/make-use-of-ebs branch 4 times, most recently from 2f52807 to 848309d Compare August 20, 2024 09:28
@sanderegg sanderegg changed the title ✨Autoscaling: Start using EBS-based EC2 buffers ✨Autoscaling: Start using EBS-based EC2 buffers 🚨 Aug 20, 2024
@sanderegg sanderegg force-pushed the autoscaling/make-use-of-ebs branch from f8c68cc to 1749ef3 Compare August 20, 2024 13:57
@sanderegg sanderegg marked this pull request as ready for review August 20, 2024 13:57
@sanderegg sanderegg requested a review from pcrespov as a code owner August 20, 2024 13:57
@sanderegg sanderegg force-pushed the autoscaling/make-use-of-ebs branch from 1749ef3 to 4ac0ce7 Compare August 20, 2024 14:37
Copy link
Contributor

@matusdrobuliak66 matusdrobuliak66 left a comment

Choose a reason for hiding this comment

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

Thanks! This is the first time we start to use ssm ?

@sanderegg sanderegg force-pushed the autoscaling/make-use-of-ebs branch from 4ac0ce7 to 29106c1 Compare August 22, 2024 08:33
Copy link

@sanderegg sanderegg merged commit d57430a into ITISFoundation:master Aug 22, 2024
57 checks passed
@sanderegg sanderegg deleted the autoscaling/make-use-of-ebs branch August 22, 2024 12:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a:autoscaling autoscaling service in simcore's stack
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Autoscaling: Use EBS-backed buffers
5 participants