Skip to main content
Menu
Azure | Cheatsheets
Azure

Quick References #

Logging in #

Login with web #

az login

Login in CLI #

az login -u myemail@address.com

List accounts #

az account list

Set subscription #

az account set --subscription "xxx"

Listing locations and resources / general #

List all locations #

az account list-locations

List all my resource groups #

az resource list

Get what version of the CLI you have #

azure --version

Get help #

azure help

Creating a basic VM / Resource Group / Storage Account #

Get all available VM sizes #

az vm list-sizes --location eastus

Get all available VM images for Windows and Linux #

az vm image list --output table

Create a Linux VM #

az vm create --resource-group myResourceGroup --name myVM --image ubuntults

Create a Windows VM #

az vm create --resource-group myResourceGroup --name myVM --image win2016datacenter

Create a Resource group #

az group create --name myresourcegroup --location eastus

Create a Storage account. #

az storage account create -g myresourcegroup -n mystorageaccount -l eastus --sku Standard_LRS

DELETING A RESOURCE GROUP #

Permanetly deletes a resource group #

az group delete --name myResourceGroup

Managing VM’s #

List your VMs #

az vm list

Start a VM #

az vm start --resource-group myResourceGroup --name myVM

Stop a VM #

az vm stop --resource-group myResourceGroup --name myVM

Deallocate a VM #

az vm deallocate --resource-group myResourceGroup --name myVM

Restart a VM #

az vm restart --resource-group myResourceGroup --name myVM

Redeploy a VM #

az vm redeploy --resource-group myResourceGroup --name myVM

Delete a VM #

az vm delete --resource-group myResourceGroup --name myVM

Create image of a VM #

az image create --resource-group myResourceGroup --source myVM --name myImage

Create VM from image #

az vm create --resource-group myResourceGroup --name myNewVM --image myImage

List VM extensions #

az vm extension list --resource-group azure-playground-resources --vm-name azure-playground-vm

Delete VM extensions #

az vm extension delete --resource-group azure-playground-resources --vm-name azure-playground-vm --name bootstrapper

Managing Batch Account #

Create a Batch account. #

az batch account create -g myresourcegroup -n mybatchaccount -l eastus

Create a Storage account. #

az storage account create -g myresourcegroup -n mystorageaccount -l eastus --sku Standard_LRS

Associate Batch with storage account. #

az batch account set -g myresourcegroup -n mybatchaccount --storage-account mystorageaccount

We can now authenticate directly against the account for further CLI interaction.

az batch account login -g myresourcegroup -n mybatchaccount

Display the details of our created account. #

az batch account show -g myresourcegroup -n mybatchaccount

Create a new application. #

az batch application create --resource-group myresourcegroup --name mybatchaccount --application-id myapp --display-name "My Application"

Add zip files to application #

az batch application package create --resource-group myresourcegroup --name mybatchaccount --application-id myapp --package-file my-application-exe.zip --version 1.0

Assign the application package as the default version. #

az batch application set --resource-group myresourcegroup --name mybatchaccount --application-id myapp --default-version 1.0

Retrieve a list of available images and node agent SKUs. #

az batch pool node-agent-skus list

Create new Linux pool with VM config #

az batch pool create \
    --id mypool-linux \
    --vm-size Standard_A1 \
    --image canonical:ubuntuserver:16.04.0-LTS \
    --node-agent-sku-id “batch.node.ubuntu 16.04”

Now let’s resize the pool to start up some VMs. #

az batch pool resize --pool-id mypool-linux --target-dedicated 5

We can check the status of the pool to see when it has finished resizing. #

az batch pool show --pool-id mypool-linux

List the compute nodes running in a pool. #

az batch node list --pool-id mypool-linux

If a particular node in the pool is having issues, it can be rebooted or reimaged. A typical node ID will be in the format ‘tvm-xxxxxxxxxx_1-’.

az batch node reboot --pool-id mypool-linux --node-id tvm-123_1-20170316t000000z

Re-allocate work to another node. #

az batch node delete \
    --pool-id mypool-linux \
    --node-list tvm-123_1-20170316t000000z tvm-123_2-20170316t000000z \
    --node-deallocation-option requeue

Create a new job to encapsulate the tasks that we want to add. #

az batch job create --id myjob --pool-id mypool

Add tasks to the job. #

…where is your preferred shell for execution (/bin/sh, /bin/bash, /bin/ksh etc.), and /path/to/script.sh is, of course, the full path of the shell script you’re invoking to get things started.

az batch task create --job-id myjob --task-id task1 --application-package-references myapp#1.0 --command-line "/bin/<shell> -c /path/to/script.sh"

Add many tasks at once #

az batch task create --job-id myjob --json-file tasks.json

Now that all the tasks are added - we can update the job so that it will automatically be marked as completed once all the tasks are finished.

az batch job set --job-id myjob --on-all-tasks-complete terminateJob

Monitor the status of the job. #

az batch job show --job-id myjob

Monitor the status of a task. #

az batch task show --job-id myjob --task-id task1

Delete a job #

az batch job delete --job-id myjob

Managing Containers #

If you HAVE AN SSH run this to create an Azure Container Service Cluster (~10 mins)

az acs create -n acs-cluster -g acsrg1 -d applink789

If you DO NOT HAVE AN SSH run this to create an Azure Container Service Cluster (~10 mins)

az acs create -n acs-cluster -g acsrg1 -d applink789 --generate-ssh-keys

List clusters under your whole subscription #

az acs list --output table

List clusters in a resource group #

az acs list -g acsrg1 --output table

Display details of a container service cluster #

az acs show -g acsrg1 -n acs-cluster --output list

Scale using ACS #

az acs scale -g acsrg1 -n acs-cluster --new-agent-count 4

Delete a cluster #

az acs delete -g acsrg1 -n acs-cluster