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

Set the minInstancesInServiceParameters property #548

Closed
wants to merge 2 commits into from

Conversation

akash1810
Copy link
Member

@akash1810 akash1810 commented Oct 11, 2024

What does this change?

This is to allow testing of guardian/riff-raff#1383 whilst the riff-raff.yaml generator from GuCDK hasn't been updated.

This riff-raff.yaml is a stripped down version of the generated one, only uploading the application artifact to S3, and deploying the application CloudFormation stack.

How to test?

This branch can test multiple scenarios.

Note

All scenarios match previously observed behaviour regarding number of in service instances.

"Normal" capacity (i.e. desired = min)

With the ASG operating at normal capacity, the deployment was also normal.

The deployment log also shows the value of the MinInstancesInServiceForcdkplayground CFN parameter was, expectedly, set to match the desired capacity (1).

image

Partially scaled (i.e. min < desired < max)

Before a deployment was started, the scale-out script was executed a few times, causing the ASG to have min=1, desired=5, max=10.

The deployment was normal and the deployment log shows the value of the MinInstancesInServiceForcdkplayground CFN parameter was, expectedly, set to match the current desired capacity (5):

image

The metrics show the ALB's healthy host count never dropped below 5. That is, there was no degradation in service availability.

Fully scaled (i.e. desired = max)

Before a deployment was started, the scale-out script was executed a few times, causing the ASG to have min=1, desired=10, max=10.

The deployment was predictably slow as it operated as a "one out, one in" update. The deployment log shows the value of the MinInstancesInServiceForcdkplayground CFN parameter was, expectedly, set to 7 (75% of max, rounded down):

image

The metrics show the ALB's healthy host count dropped to 7, as expected. Whilst this results in a drop in availability, it is an unusual scenario as scaling to max is indicative of incorrect capacity planning. That is, the max should be higher.

This is to allow testing of guardian/riff-raff#1383
whilst the `riff-raff.yaml` generator from GuCDK hasn't been updated.
@akash1810 akash1810 changed the title Aa/set min instances in service parameters Set the minInstancesInServiceParameters property Oct 11, 2024
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

Successfully merging this pull request may close these issues.

1 participant