Как запрашивать виртуальные машины в Azure PowerState, используя теги
У меня есть сценарий, который освобождает все виртуальные машины в подписке на основе назначенных тегов в нерабочее время и запускает их резервное копирование на следующий день с помощью Jenkins. Я хочу иметь возможность запрашивать эти виртуальные машины в зависимости от состояния (работает / остановлен (освобожден) и выводить его в файл.
Команда запуска - az vm start --ids $(az resource list --tag Restart=${TAG_RESTART} --query "[?type=='Microsoft.Compute/virtualMachines'].id" -o table)
Команда запроса -az resource list --tag Restart=yes --query "[].{Name:name,Group:resourceGroup,Location:location}" -o table
Эта команда возвращает выходные данные (имя, RG и местоположение). Я хочу, чтобы он также показывал PowerState и, возможно, тип ОС после завершения сценария перезапуска. Если также возможно экспортировать выходные данные в электронную таблицу.
1 ответ
Вы могли бы использовать az vm show -d --ids
чтобы получить состояние PowerShell.
Извините, у меня нет Mac VM. На Linux VM я использую следующую команду, чтобы получить его.
az vm show -d --ids $(az resource list --tag Restart=shui --query "[?type=='Microsoft.Compute/virtualMachines'].id"|jq -r ".[]") --query 'powerState'
На Mac, возможно, вы могли бы использовать следующую команду.
az vm show -d --ids $(az resource list --tag Restart=${TAG_RESTART} --query "[?type=='Microsoft.Compute/virtualMachines'].id" -o table) --query 'powerState'
Вы можете получить помощь, используя az vm show -h
--show-details -d : Show public ip address, FQDN, and power states. command will run slow.