Skip to content

Instantly share code, notes, and snippets.

@skinny
Last active February 23, 2018 09:27
Show Gist options
  • Save skinny/2a9ae24bcac85f7f8c68fbe3dc6484fe to your computer and use it in GitHub Desktop.
Save skinny/2a9ae24bcac85f7f8c68fbe3dc6484fe to your computer and use it in GitHub Desktop.
Managing an `acs-engine` based Kubernetes cluster

How to update/modify an existing acs-engine based Kubernetes cluster

These steps describe how to change a running Kubernetes cluster deployed with acs-engine on Azure. These steps are only tested with changes targeting actually Azure resources. Changes made to Kubernetes configuration are not tested yet.

  • Modify the apimodel.json file located in the _output/<clustername> folder
  • Run acs-engine generate --api-model _output/<clustername>/apimodel.json. This wil update the azuredeploy* files needed for the new ARM deployment. These files are also located in the _output folder.
  • Apply the changes by manually starting an ARM deployment. From within the _output/<clustername> run az group deployment --template-file azuredeploy.json --parameters azuredeploy.parameters.json --resource-group "<my-resource-group>"
  • Grab a coffee
  • Profit!

Tested changes :

  • Adding a node pool

  • Change the node count of an existing pool : Use the acs-engine scale command

    acs-engine scale --location westeurope --subscription-id "xxx" --resource-group "<my-resource-group"
    --deployment-dir ./_output/ --node-pool --new-node-count --master-FQDN

Scenarios to be worked out (help!)

  • Change the VM size of existing nodes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment