This feature request has been around a year or so.
In AKS you pay for the worker nodes, but for dev test it would be good if you could start and stop the cluster. Those ephemeral environments are costing you!!
Finally we have a preview feature that allows you to do this.
Enabling the preview first
Run the following CLI commands to enable this preview feature:
# Install the aks-preview extension
az extension add --name aks-preview
# Update the extension to make sure you have the latest version installed
az extension update --name aks-preview
Register the start/stop feature
az feature register --namespace "Microsoft.ContainerService" --name "StartStopPreview"
# Check the status if it is "Registered"
az feature list -o table --query "[?contains(name, 'Microsoft.ContainerService/StartStopPreview')].{Name:name,State:properties.state}"
# Once status is "Registered" refresh the status
az provider register --namespace Microsoft.ContainerService
Start a stopped cluster
First run a az show to query the status of the powerstate property:
az aks show --resource-group aks-cluster-rg --name migrationcluster --query powerState -o json
The behavior of this command has been altered by the following extension: aks-preview
{
"code": "Stopped"
}
This shows my cluster has been stopped.
Start the cluster:
az aks start --name migrationcluster --resource-group aks-cluster-rg
Put it into a pipeline
For those devs, now make this step repeatable put into a pipeline using your automation tool of choice. Execute the pipeline on a cron schedule.
Checkout Github actions:
Or if you use Azure DevOps look at the yaml for a schedule job: