Description
Describe the pattern you'd like to propose
One of the great features of the cloud is to be able to spin up and shut down infrastructure on-demand only paying for the time it is running. However, infrastructure is often running 24/7, unnecessarily consuming energy and racking up costs.
This is particularly true for Kubernetes clusters that are comprised of multiple virtual machines and typically cost hundreds of dollars per month to run.
Describe specific emission impact from this pattern
Only running non-production clusters like those used for development and testing during work hours and not at night or weekends can reduce emissions and costs by 75% which adds up to a considerable saving especially when there are many clusters in use.
Investing in this type of automation can potentially significantly reduce emissions for little or no inconvenience.
References to this pattern
AKS on Azure, EKS on AWS and GKE on Google Cloud only charge for the worker node pools for the Kubernetes cluster, not the control plane. This means worker nodes can safely be shown down and then restarted later. This is typically achieved by changing the size of a worker node pool to zero.
All three cloud providers also provide a mechanism to trigger actions on a schedule. This can be used to programmatically notify users and then automatically scale down the worker nodes of a cluster at the end of the day and scale it up again ready for when people come into work.
Additional context
Alternatively, clusters can be built and destroyed completely using an automation tool like Terraform and using the same scheduling tool create a new cluster at the start of a day and destroyed it at the end of the day.
A more advanced approach is using third-party tools to destroy or scale down the node pool of a server after an idle period. This may be a better alternative when it is acceptable to wait for the cluster to restart rather than working on a schedule.
Metadata
Metadata
Assignees
Type
Projects
Status