Azure - VM
Table of Contents
About
VM management in Azure
Articles Related
Library
Most of the commands in this article are created with the cli but your can also used third party library.
Example with:
Management
Create
Everything you can specify on the web portal is available via a command-line flag or switch. +
Example with the azure cli:
az.cmd vm create ^
--resource-group groupName ^
--name vmName ^
--image Oracle:Oracle-Linux:7.4:7.4.20170908 ^
--size Standard_DS1_v2 ^
--authentication-type password ^
--admin-username userName ^
--admin-password userPwd ^
--location westeurope
where:
Output:
{\ Finished ..
"fqdns": "",
"id": "/subscriptions/a3c34725-da6a-41ac-87fa-090f6b96d44d/resourceGroups/VGZ_OBIEE/providers/Microsoft.Compute/virtualMachines/HI-ORACLE-12-SE",
"location": "westeurope",
"macAddress": "00-0D-3A-26-99-A6",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "52.166.234.80",
"resourceGroup": "groupName",
"zones": ""
}
Start / Stop
az.cmd vm start --name vmName --resource-group groupName
az.cmd vm stop --name vmName --resource-group groupName
Reboot
logged in as root
reboot
Broadcast message from [email protected]
(/dev/pts/0) at 2:04 ...
The system is going down for reboot NOW!
Delete
az.cmd vm delete --name vmName --resource-group groupName
Info
Show
az.cmd vm show --name vmName --resource-group groupName
List
az.cmd vm list --output table
Name ResourceGroup Location
--------------- --------------- ----------
ORACLE-12-SE groupName westeurope
- List power with the JMESPath
# Without headers
az.cmd vm list --output table --query "[*].[name, resourceGroup]"
# With headers
az.cmd vm list --output table --query "[*].{VMName:name, OSType:storageProfile.osDisk.osType}"
Nic
Get the Nic id
az.cmd vm show --resource-group myResourceGroup --name myVM -d --o tsv --query "networkProfile.networkInterfaces[].id"
/subscriptions/a3c34725-da090f6b96d44d/resourceGroups/myResrouceGroup/providers/Microsoft.Network/networkInterfaces/MY_MACHINE_01VMNic
Get IP
- Public
az vm show --resource-group myResourceGroup --name myVM -d --query [publicIps] --o tsv
State
az vm show --resource-group myResourceGroup --name myVM -d --query [powerState] --o tsv
VM running
or
VM stopped
- PowerState (don't forget the -d options)
az.cmd vm list --output table -d --query "[*].{Name:name, Group:resourceGroup, Power:powerState}"
Run Command
- Powershell: Invoke-AzureRmVMRunCommand
Example:
az vm run-command invoke -g RG20ETL200-A -n su20etl201a --command-id RunShellScript --scripts "echo nico"
{
"value": [
{
"code": "ProvisioningState/succeeded",
"displayStatus": "Provisioning succeeded",
"level": "Info",
"message": "Enable succeeded: \n[stdout]\nnico\n\n[stderr]\n",
"time": null
}
]
}