Skip to content

docs: Add autoscale recommendations docs #7617

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

Merged
merged 2 commits into from
May 23, 2023
Merged

Conversation

spikecurtis
Copy link
Contributor

We get asked about this enough, e.g. https://github.com/coder/v2-customers/issues/173 that we should have a place in the docs we can just point people to.

Signed-off-by: Spike Curtis <spike@coder.com>
Copy link
Member

@johnstcn johnstcn left a comment

Choose a reason for hiding this comment

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

Nice! Just a couple of suggestions but otherwise 👍


We recommend you plan to run enough coderd replicas to comfortably meet your weekly high-water-mark load, and monitor
coderd peak CPU & memory utilization over the long term, reevaluating periodically. When scaling down (or performing
upgrades), schedule these on off hours to minimize user interruptions.
Copy link
Member

Choose a reason for hiding this comment

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

nit: "on off hours" reads funny, suggest

Suggested change
upgrades), schedule these on off hours to minimize user interruptions.
upgrades), schedule these outside normal working hours to minimize user interruptions.

When running on Kubernetes on cloud infrastructure (i.e. not bare metal), many operators choose to employ a _cluster_
autoscaler that adds and removes Kubernetes _nodes_ according to load. Coder can coexist with such cluster autoscalers,
but we recommend you take steps to prevent the autoscaler from evicting coderd pods, as an eviction will cause the same
interruptions as described above.
Copy link
Member

Choose a reason for hiding this comment

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

Might be no harm to add an example:

Suggested change
interruptions as described above.
interruptions as described above. For example, if you are using the [Kubernetes cluster
autoscaler](https://kubernetes.io/docs/reference/labels-annotations-taints/#cluster-autoscaler-kubernetes-io-safe-to-evict), you may wish to set
`cluster-autoscaler.kubernetes.io/safe-to-evict: "false"` as an annotation
on the coderd deployment.

@bpmct
Copy link
Member

bpmct commented May 22, 2023

This is really helpful, thanks for doing this!

Signed-off-by: Spike Curtis <spike@coder.com>
@spikecurtis spikecurtis merged commit 622456f into main May 23, 2023
@spikecurtis spikecurtis deleted the spike/docs-autoscale branch May 23, 2023 05:22
@github-actions github-actions bot locked and limited conversation to collaborators May 23, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants