Azure VMの操作や情報取得に使うAzure CLIとPowerShellコマンド(開始/停止/割り当て解除/休止/ステータス確認)

2022-03-06Azure,PowerShell/Azure CLI,Virtual Machines

仮想マシン(Azure VM)のリソース詳細情報取得から開始、割り当て解除、休止状態、ステータス確認時に利用するAzure CLIやAzure PowerShellを一覧形式にまとめています。

仮想マシンの開始、停止、休止、割り当て解除まで、一連の流れを仮想マシンの電源状態を確認しながら実行した例も紹介しています。
また、仮想マシンの再デプロイや再適用方法、割り当て解除せずに仮想マシンを停止する場合や、休止状態に使用するコマンドも紹介しています。

※本記事内では、Azure Virtual Machines(Azure VM)を仮想マシンと表記しています。

スポンサーリンク

仮想マシンの詳細情報取得や開始、停止、ステータス確認に使うコマンド一覧

確認時に利用したバージョン

確認に使用したバージョンです。

    • PowerShell : 7.6.0
    • Azure CLI : 2.84.0
    • Az Module : 15.4.0
    • Az.Compute : 11.4.0

Azure CLIやAzure PowerShellに関する公式ドキュメントはこちらです。

Azure CLI
Azure PowerShell

仮想マシンのリストや詳細情報を取得

仮想マシンのリストや詳細情報を取得する際に使用するAzure CLIおよびAzure PowerShellのコマンドの一覧です。

操作内容 Azure CLI Azure PowerShell
仮想マシンのリストを取得 az vm list –output table Get-AzVM
仮想マシンのリストを取得
(リソースグループ指定)
az vm list –resource-group “リソースグループ名" –output table Get-AzVM -ResourceGroupName “リソースグループ名”
仮想マシンの詳細情報を取得 サブスクリプション内の仮想マシンすべて
az vm list –show-details

リソースグループ内の仮想マシンすべて
az vm list –resource-group “リソースグループ名" –show-details

az vm show -d –ids $(az vm list –resource-group “リソースグループ名" –query “[].id" -o tsv)

仮想マシンを指定して取得
az vm show –resource-group “リソースグループ名" –name “VM名"

仮想マシンを指定して取得
Get-AzVM -ResourceGroupName “リソースグループ名" -name “VM名"

※Azure CLIでは、–resource-groupパラメーターを-g、–nameパラメーターを-nと略記して使用できます。

仮想マシンの電源ステータスを取得

仮想マシンの電源ステータスを取得する際に使用するAzure CLIおよびAzure PowerShellコマンドの一覧です。

操作内容 Azure CLI Azure PowerShell
仮想マシンのステータスを取得 仮想マシンを指定して取得
az vm get-instance-view –resource-group “リソースグループ名" –name “VM名" –query instanceView.statuses[1] –output table
サブスクリプション内の仮想マシンすべて
Get-AzVM -Status |ft Name,PowerState

リソースグループ内の仮想マシンすべて
Get-AzVM -ResourceGroupName “リソースグループ名” -Status |ft Name,PowerState

仮想マシンを指定して取得
Get-AzVM -ResourceGroupName “リソースグループ名” -name “VM名" -Status | ft name,@{n="Status"; e={$_.Statuses[1].Code}}

※Azure CLIでは、–resource-groupパラメーターを-g、–nameパラメーターを-nと略記して使用できます。
※Azure PowerShellでは、ft(Format-Table)コマンドレットを利用して、表示項目をNameとPowerStateのみに絞っています。

仮想マシンの開始、停止、休止状態、割り当て解除、再起動、再デプロイ、再適用

仮想マシンの開始、再デプロイ、再適用、割り当て解除、休止状態に使用するAzure CLIおよびAzure PowerShellコマンドの一覧です。
停止する場合は、電源オフのみを行う場合、休止状態にする場合、割り当て解除まで行う場合の3つの方法があります。

なお、休止状態にするためには、仮想マシン側で休止状態が有効化されている必要があります。
休止状態では、メモリの内容がOSディスクに保存され、再開時に元の状態に復元されます。

Azure Virtual Machines の休止状態

操作内容 Azure CLI Azure PowerShell
仮想マシンを開始 az vm start –resource-group “リソースグループ名" –name “VM名" Start-AzVM -ResourceGroupName “リソースグループ名" -Name “VM名"
仮想マシンを停止
(電源をオフ)

az vm stop –resource-group “リソースグループ名" –name “VM名" Stop-AzVM -ResourceGroupName “リソースグループ名" -Name “VM名" -StayProvisioned

※停止時の確認メッセージを表示しない場合は、-Forceパラメーターを使用します。
※-StayProvisionedパラメーターを付与すると、割り当て解除せずに仮想マシンを停止させることができます。

仮想マシンを停止
(割り当て解除)
az vm deallocate –resource-group “リソースグループ名" –name “VM名" Stop-AzVM -ResourceGroupName “リソースグループ名" -Name “VM名"

※停止時の確認メッセージを表示しない場合は、-Forceパラメーターを使用します。

仮想マシンを再起動 az vm restart –resource-group “リソースグループ名" –name “VM名"

※–forceパラメーターを付与すると、仮想マシンを強制再起動(再デプロイ)します。VMが応答しない場合に使用します。

Restart-AzVM -ResourceGroupName “リソースグループ名" -Name “VM名"
仮想マシンを再デプロイ az vm redeploy –resource-group “リソースグループ名" –name “VM名" Set-AzVM -Redeploy -ResourceGroupName “リソースグループ名" -Name “VM名"
仮想マシンを再適用 az vm reapply –resource-group “リソースグループ名" –name “VM名" Set-AzVM -Reapply -ResourceGroupName “リソースグループ名" -Name “VM名"
仮想マシンを休止状態にする az vm deallocate –resource-group “リソースグループ名" –name “VM名" –hibernate true Stop-AzVM -ResourceGroupName “リソースグループ名" -Name “VM名" -Hibernate

※確認メッセージを表示しない場合は、-Forceパラメーターを使用します。

休止状態にする az vm deallocate –resource-group “リソースグループ名" –name “VM名" –hibernate true Stop-AzVM -ResourceGroupName “リソースグループ名" -Name “VM名" -Hibernate
休止状態から再開 az vm start –resource-group “リソースグループ名" –name “VM名" Start-AzVM -ResourceGroupName “リソースグループ名" -Name “VM名"

※Azure CLIでは、–resource-groupパラメーターを-g、–nameパラメーターを-nと略記して使用できます。
※再起動、再デプロイ、再適用の違いについては公式ブログを参照してください。

仮想マシンのステータスと課金の関係については、こちらで紹介しています。
ステータスと課金発生状況を一覧形式で紹介しています。
割り当て解除忘れ対策も紹介しています。

—広告—

Azure CLIを使用した仮想マシンの操作(開始、停止、割り当て解除、休止)や情報取得例

仮想マシンのリストや詳細情報の取得例

az vm list、az vm show、az vm get-instance-viewコマンドを使用して仮想マシンの情報を取得した例です。
az vm showとaz vm get-instance-viewコマンドでは、取得できる内容が異なります。
また、Azure PowerShellを使用した場合と、Azure CLIを使用した場合でも取得できる内容が異なります。

コマンドの実行結果例は、Windows Server 2025 Datacenter Azure Editionの場合です。
OSの種類や仮想マシンの設定によって、取得結果の内容は異なります。

仮想マシンの情報を取得して表示

【リスト表示】

PS C:\> az vm list –output table
Name ResourceGroup Location Zones
——————– ————— ———- ——-
vm-01 リソースグループ名 japaneast 1

【az vm showを利用した場合】

PS C:\> az vm show –resource-group “リソースグループ名" –name “vm-01"

{
  “additionalCapabilities": {
    “hibernationEnabled": true
  },
  “diagnosticsProfile": {
    “bootDiagnostics": {
      “enabled": true
    }
  },
  “etag": “\"x\"",
  “hardwareProfile": {
    “vmSize": “Standard_D2as_v5"
  },
  “id": “/subscriptions/サブスクリプションID/resourceGroups/リソースグループ名/providers/Microsoft.Compute/virtualMachines/vm-01",
  “location": “japaneast",
  “name": “vm-01",
  “networkProfile": {
    “networkInterfaces": [
      {
        “deleteOption": “Delete",
        “id": “ネットワークインターフェースのリソースID",
        “resourceGroup": “リソースグループ名"
      }
    ]
  },
  “osProfile": {
    “adminUsername": “管理者アカウントのユーザー名",
    “allowExtensionOperations": true,
    “computerName": “vm-01",
    “requireGuestProvisionSignal": true,
    “secrets": [],
    “windowsConfiguration": {
      “enableAutomaticUpdates": true,
      “enableVMAgentPlatformUpdates": true,
      “patchSettings": {
        “assessmentMode": “ImageDefault",
        “automaticByPlatformSettings": {
          “rebootSetting": “IfRequired"
        },
        “enableHotpatching": true,
        “patchMode": “AutomaticByPlatform"
      },
      “provisionVMAgent": true
    }
  },
  “provisioningState": “Succeeded",
  “resourceGroup": “リソースグループ名",
  “resources": [
    {
      “autoUpgradeMinorVersion": true,
      “enableAutomaticUpgrade": true,
      “forceUpdateTag": “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx “,
      “id": “/subscriptions/サブスクリプションID/resourceGroups/リソースグループ名/providers/Microsoft.Compute/virtualMachines/vm-01/extensions/AzureHibernateExtension",
      “location": “japaneast",
      “name": “AzureHibernateExtension",
      “provisioningState": “Succeeded",
      “publisher": “Microsoft.CPlat.Core",
      “resourceGroup": “リソースグループ名",
      “settings": {
        “allowReboot": true
      },
      “typeHandlerVersion": “1.0",
      “typePropertiesType": “WindowsHibernateExtension"
    }
  ],
  “securityProfile": {
    “securityType": “TrustedLaunch",
    “uefiSettings": {
      “secureBootEnabled": true,
      “vTpmEnabled": true
    }
  },
  “storageProfile": {
    “dataDisks": [],
    “diskControllerType": “SCSI",
    “imageReference": {
      “exactVersion": “26100.32463.260305",
      “offer": “WindowsServer",
      “publisher": “MicrosoftWindowsServer",
      “sku": “2025-datacenter-azure-edition-smalldisk",
      “version": “latest"
    },
    “osDisk": {
      “caching": “ReadWrite",
      “createOption": “FromImage",
      “deleteOption": “Delete",
      “diskSizeGB": 32,
      “managedDisk": {
        “id": “OSディスクのリソースID",
        “resourceGroup": “リソースグループ名",
        “storageAccountType": “Premium_LRS"
      },
      “name": “OSディスク名",
      “osType": “Windows"
    }
  },
  “timeCreated": “2026-04-12T00:27:49.4286577+00:00",
  “type": “Microsoft.Compute/virtualMachines",
  “vmId": “仮想マシンのID",
  “zones": [
    “1"
  ]
}

【az vm get-instance-viewを利用した場合】

PS C:\> az vm get-instance-view –resource-group “リソースグループ名" –name “vm-01"

{
  “additionalCapabilities": {
    “hibernationEnabled": true
  },
  “diagnosticsProfile": {
    “bootDiagnostics": {
      “enabled": true
    }
  },
  “etag": “\"9\"",
  “hardwareProfile": {
    “vmSize": “Standard_D2as_v5"
  },
  “id": “/subscriptions/サブスクリプションID/resourceGroups/リソースグループ名/providers/Microsoft.Compute/virtualMachines/vm-01",
  “instanceView": {
    “bootDiagnostics": {},
    “computerName": “vm-01",
    “disks": [
      {
        “name": “OSディスク名",
        “statuses": [
          {
            “code": “ProvisioningState/succeeded",
            “displayStatus": “Provisioning succeeded",
            “level": “Info",
            “time": “2026-04-18T00:37:32.2000962+00:00"
          }
        ]
      }
    ],
    “extensions": [
      {
        “name": “AzureHibernateExtension",
        “statuses": [
          {
            “code": “ProvisioningState/succeeded",
            “displayStatus": “Provisioning succeeded",
            “level": “Info",
            “message": “Enabling hibernate succeeded. Response from the powercfg command: \tThe hiberfile size has been set to: 8536289280 bytes.\r\n",
            “time": “2026-04-18T00:38:16.403+00:00"
          }
        ],
        “substatuses": [
          {
            “code": “ComponentStatus/VMBootState/Resume/succeeded",
            “displayStatus": “Provisioning succeeded",
            “level": “Info",
            “message": “Last guest resume was successful."
          }
        ],
        “type": “Microsoft.CPlat.Core.WindowsHibernateExtension",
        “typeHandlerVersion": “1.0.7"
      }
    ],
    “hyperVGeneration": “V2",
    “osName": “Windows Server 2025 Datacenter Azure Edition",
    “osVersion": “10.0.26100.32463",
    “patchStatus": {
      “availablePatchSummary": {
        “assessmentActivityId": “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        “criticalAndSecurityPatchCount": 0,
        “error": {
          “code": “Success",
          “details": [],
          “message": “0 error/s reported"
        },
        “lastModifiedTime": “2026-04-12T05:31:43.7445018+00:00",
        “otherPatchCount": 3,
        “rebootPending": false,
        “startTime": “2026-04-12T05:31:25.473037+00:00",
        “status": “Succeeded"
      },
      “configurationStatuses": [
        {
          “code": “PatchModeConfigurationState/Ready",
          “displayStatus": “Ready",
          “level": “Info",
          “time": “2026-04-12T05:31:43.7519353+00:00"
        },
        {
          “code": “AssessmentModeConfigurationState/Ready",
          “displayStatus": “Ready",
          “level": “Info",
          “time": “2026-04-12T05:31:43.7519353+00:00"
        },
        {
          “code": “DetectedVMGuestPatchSupportState/Supported",
          “displayStatus": “Supported",
          “level": “Info",
          “time": “2026-04-12T05:31:43.7519353+00:00"
        }
      ]
    },
    “statuses": [
      {
        “code": “ProvisioningState/succeeded",
        “displayStatus": “Provisioning succeeded",
        “level": “Info",
        “time": “2026-04-18T00:38:33.9286562+00:00"
      },
      {
        “code": “PowerState/running",
        “displayStatus": “VM running",
        “level": “Info"
      }
    ],
    “vmAgent": {
      “extensionHandlers": [
        {
          “status": {
            “code": “ProvisioningState/succeeded",
            “displayStatus": “Ready",
            “level": “Info"
          },
          “type": “Microsoft.CPlat.Core.WindowsHibernateExtension",
          “typeHandlerVersion": “1.0.7"
        },
        {
          “status": {
            “code": “ProvisioningState/succeeded",
            “displayStatus": “Ready",
            “level": “Info"
          },
          “type": “Microsoft.CPlat.Core.WindowsPatchExtension",
          “typeHandlerVersion": “1.5.80"
        }
      ],
      “statuses": [
        {
          “code": “ProvisioningState/succeeded",
          “displayStatus": “Ready",
          “level": “Info",
          “message": “GuestAgent is running and processing the extensions.",
          “time": “2026-04-18T01:40:36.269+00:00"
        }
      ],
      “vmAgentVersion": “2.7.41491.1183"
    }
  },
  “location": “japaneast",
  “name": “vm-01",
  “networkProfile": {
    “networkInterfaces": [
      {
        “deleteOption": “Delete",
        “id": “ネットワークインターフェースのリソースID",
        “resourceGroup": “リソースグループ名"
      }
    ]
  },
  “osProfile": {
    “adminUsername": “管理者アカウントのユーザー名",
    “allowExtensionOperations": true,
    “computerName": “vm-01",
    “requireGuestProvisionSignal": true,
    “secrets": [],
    “windowsConfiguration": {
      “enableAutomaticUpdates": true,
      “enableVMAgentPlatformUpdates": true,
      “patchSettings": {
        “assessmentMode": “ImageDefault",
        “automaticByPlatformSettings": {
          “rebootSetting": “IfRequired"
        },
        “enableHotpatching": true,
        “patchMode": “AutomaticByPlatform"
      },
      “provisionVMAgent": true
    }
  },
  “provisioningState": “Succeeded",
  “resourceGroup": “リソースグループ名",
  “resources": [
    {
      “autoUpgradeMinorVersion": true,
      “enableAutomaticUpgrade": true,
      “forceUpdateTag": “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      “id": “/subscriptions/サブスクリプションID/resourceGroups/リソースグループ名/providers/Microsoft.Compute/virtualMachines/vm-01/extensions/AzureHibernateExtension",
      “location": “japaneast",
      “name": “AzureHibernateExtension",
      “provisioningState": “Succeeded",
      “publisher": “Microsoft.CPlat.Core",
      “resourceGroup": “リソースグループ名",
      “settings": {
        “allowReboot": true
      },
      “typeHandlerVersion": “1.0",
      “typePropertiesType": “WindowsHibernateExtension"
    }
  ],
  “securityProfile": {
    “securityType": “TrustedLaunch",
    “uefiSettings": {
      “secureBootEnabled": true,
      “vTpmEnabled": true
    }
  },
  “storageProfile": {
    “dataDisks": [],
    “diskControllerType": “SCSI",
    “imageReference": {
      “exactVersion": “26100.32463.260305",
      “offer": “WindowsServer",
      “publisher": “MicrosoftWindowsServer",
      “sku": “2025-datacenter-azure-edition-smalldisk",
      “version": “latest"
    },
    “osDisk": {
      “caching": “ReadWrite",
      “createOption": “FromImage",
      “deleteOption": “Delete",
      “diskSizeGB": 32,
      “managedDisk": {
        “id": “OSディスクのリソースID",
        “resourceGroup": “リソースグループ名",
        “storageAccountType": “Premium_LRS"
      },
      “name": “OSディスク名",
      “osType": “Windows"
    }
  },
  “timeCreated": “2026-04-12T05:27:49.4286577+00:00",
  “type": “Microsoft.Compute/virtualMachines",
  “vmId": “仮想マシンID",
  “zones": [
    “1"
  ]
}

仮想マシンの操作例(開始、停止、割り当て解除、休止、電源状態確認)

仮想マシンの開始から割り当て解除まで、一連の流れを1つずつコマンドの実行結果を確認しながら実行します。
コマンドの実行と同時に、仮想マシンのステータスも確認します。

※コマンドの実行例は、仮想マシン名がvm-01の場合を例としています。

操作内容 コマンド実行結果
開始前の仮想マシン
(ステータス確認)

PS C:\> az vm get-instance-view –resource-group “リソースグループ名" –name “vm-01" –query instanceView.statuses[1] –output table

Code DisplayStatus Level
—– —– —–
PowerState/deallocated VM deallocated Info

仮想マシンを開始

PS C:\> az vm start –resource-group “リソースグループ名" –name “vm-01"

実行状態の仮想マシン
(ステータス確認)

PS C:\> az vm get-instance-view –resource-group “リソースグループ名" –name “vm-01" –query instanceView.statuses[1] –output table

Code DisplayStatus Level
—– —– —–
PowerState/running VM running Info

仮想マシンを停止
(電源オフ)

PS C:\> az vm stop –resource-group “リソースグループ名" –name “vm-01"
About to power off the specified VM…
It will continue to be billed. To deallocate a VM, run: az vm deallocate.

停止中の仮想マシン
(ステータス確認)

PS C:\> az vm get-instance-view –resource-group “リソースグループ名" –name “vm-01" –query instanceView.statuses[1] –output table

Code DisplayStatus Level
—– —– —–
PowerState/stopped VM stopped Info

仮想マシンを割り当て解除

PS C:\> az vm deallocate –resource-group “リソースグループ名" –name “vm-01"

割り当て解除中の仮想マシン
(ステータス確認)

PS C:\> az vm get-instance-view –resource-group “リソースグループ名" –name “vm-01" –query instanceView.statuses[1] –output table

Code DisplayStatus Level
—– —– —–
PowerState/deallocated VM deallocated Info

仮想マシンを休止

PS C:\> az vm deallocate –resource-group “リソースグループ名" –name “vm-01" –hibernate true

休止状態の仮想マシン
(ステータス確認)

PS C:\> az vm get-instance-view –resource-group “リソースグループ名" –name “vm-01" –query “instanceView.statuses[?starts_with(code, 'PowerState/’) || starts_with(code, 'HibernationState/’)].{code:code, displayStatus:displayStatus}" –output table
Code DisplayStatus
—– —– —–
PowerState/deallocated VM deallocated
HibernationState/Hibernated VM hibernated

Azure PowerShellを使用した仮想マシンの操作(開始、停止、割り当て解除、休止)や情報取得例

仮想マシンのリストや詳細情報の取得例

Get-AzVMコマンドを使用して仮想マシンの情報を取得した例です。
Azure PowerShellを使用した場合と、Azure CLIを使用した場合でも取得できる内容が異なります。

コマンドの実行結果例は、Windows Server 2025 Datacenter Azure Editionの場合です。
OSの種類や仮想マシンの設定によって、取得結果の内容は異なります。

仮想マシンの情報を取得して表示

【リスト表示した場合】

PS C:\> Get-AzVM
ResourceGroupName Name Location VmSize OsType NIC ProvisioningState Zone
—– —– —– —– —– —– —–
リソースグループ名 vm-01 japaneast Standard_D2as_v5 Windows ネットワークインターフェース名 Succeeded 1

【Get-AzVMコマンドレットで仮想マシンの情報を表示した場合】

PS C:\> Get-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" | Format-Custom * -Depth 5  

class PSVirtualMachine
{
  ResourceGroupName = リソースグループ名
  Id = /subscriptions/サブスクリプションID/resourceGroups/リソースグループ名/providers/Microsoft.Compute/virtualMachines/vm-01
  VmId = 仮想マシンのID
  Name = vm-01
  Type = Microsoft.Compute/virtualMachines
  Location = japaneast
  ExtendedLocation =
  LicenseType =
  Tags =
    [
    ]
  AvailabilitySetReference =
  DiagnosticsProfile =
    class DiagnosticsProfile
    {
      BootDiagnostics =
        class BootDiagnostics
        {
          Enabled = True
          StorageUri =
        }
    }
  Extensions =
    [
      class VirtualMachineExtension
      {
        ForceUpdateTag = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
        Publisher = Microsoft.CPlat.Core
        VirtualMachineExtensionType = WindowsHibernateExtension
        TypeHandlerVersion = 1.0
        AutoUpgradeMinorVersion = True
        EnableAutomaticUpgrade = True
        Settings =
          [
              [
                  [
                  ]
              ]
          ]
        ProtectedSettings =
        ProvisioningState = Succeeded
        InstanceView =
        SuppressFailures =
        ProtectedSettingsFromKeyVault =
        ProvisionAfterExtensions =
        Tags =
        Location = japaneast
        Id = /subscriptions/サブスクリプションID/resourceGroups/リソースグループ名/providers/Microsoft.Compute/virtualMachines/vm-01/extensions/AzureHibernateExtension
        Name = AzureHibernateExtension
        Type = Microsoft.Compute/virtualMachines/extensions
      }
    ]

  HardwareProfile =
    class HardwareProfile
    {
      VmSize = Standard_D2as_v5
      VmSizeProperties =
    }
  InstanceView =
  NetworkProfile =
    class NetworkProfile
    {
      NetworkInterfaces =
        [
          class NetworkInterfaceReference
          {
            Primary =
            DeleteOption = Delete
            Id = ネットワークインターフェースのリソースID
          }
        ]
      NetworkApiVersion =
      NetworkInterfaceConfigurations =
    }
  SecurityProfile =
    class SecurityProfile
    {
      UefiSettings =
        class UefiSettings
        {
          SecureBootEnabled = True
          VTpmEnabled = True
        }
      EncryptionAtHost =
      SecurityType = TrustedLaunch
      EncryptionIdentity =
      ProxyAgentSettings =
    }
  OsName =
  OsVersion =
  HyperVGeneration =
  OSProfile =
    class OSProfile
    {
      ComputerName = vm-01
      AdminUsername = 管理者アカウントのユーザー名
      AdminPassword =
      CustomData =
      WindowsConfiguration =
        class WindowsConfiguration
        {
          ProvisionVMAgent = True
          EnableAutomaticUpdates = True
          TimeZone =
          AdditionalUnattendContent =
          PatchSettings =
            class PatchSettings
            {
              PatchMode = AutomaticByPlatform
              EnableHotpatching = True
              AssessmentMode = ImageDefault
              AutomaticByPlatformSettings =
                class WindowsVMGuestPatchAutomaticByPlatformSettings
                {
                  RebootSetting = IfRequired
                  BypassPlatformSafetyChecksOnUserSchedule =
                }
            }
          WinRM =
          EnableVMAgentPlatformUpdates = True
        }
      LinuxConfiguration =
      Secrets =
        [
        ]
      AllowExtensionOperations = True
      RequireGuestProvisionSignal = True
    }
  BillingProfile =
  Plan =
  ProvisioningState = Succeeded
  StorageProfile =
    class StorageProfile
    {
      ImageReference =
        class ImageReference
        {
          Publisher = MicrosoftWindowsServer
          Offer = WindowsServer
          Sku = 2025-datacenter-azure-edition-smalldisk
          Version = latest
          ExactVersion = 26100.32463.260305
          SharedGalleryImageId =
          CommunityGalleryImageId =
          Id =
        }
      OsDisk =
        class OSDisk
        {
          OsType = Windows
          EncryptionSettings =
          Name = OSディスク名
          Vhd =
          Image =
          Caching = ReadWrite
          WriteAcceleratorEnabled =
          DiffDiskSettings =
          CreateOption = FromImage
          DiskSizeGB = 32
          ManagedDisk =
            class ManagedDiskParameters
            {
              StorageAccountType = Premium_LRS
              DiskEncryptionSet =
              SecurityProfile =
              Id = OSディスクのリソースID
            }
          DeleteOption = Delete
        }
      DataDisks =
        [
        ]

      DiskControllerType = SCSI
      AlignRegionalDisksToVMZone =
    }
  DisplayHint = Compact
  Identity =
  Zones =
    [
      1
    ]
  FullyQualifiedDomainName =
  AdditionalCapabilities =
    class AdditionalCapabilities
    {
      UltraSSDEnabled =
      HibernationEnabled = True
      EnableFips1403Encryption =
    }
  ProximityPlacementGroup =
  Host =
  VirtualMachineScaleSet =
  EvictionPolicy =
  Priority =
  HostGroup =
  CapacityReservation =
  UserData =
  ApplicationProfile =
  PlatformFaultDomain =
  TimeCreated =
    class DateTime
    {
      Date =
        class DateTime
        {
          Date =
            class DateTime
            {
              Date =
                class DateTime
                {
                  Date =
                    class DateTime
                    {
                      Date = 2026/04/12 0:00:00
                      Day = 12
                      DayOfWeek = Sunday
                      DayOfYear = 102
                      Hour = 0
                      Kind = Utc
                      Millisecond = 0
                      Microsecond = 0
                      Nanosecond = 0
                      Minute = 0
                      Month = 4
                      Second = 0
                      Ticks = 639115488000000000
                      TimeOfDay = 00:00:00
                      Year = 2026
                      DateTime = 2026年4月12日 0:00:00
       ~(中略)~
                    }
                }
    }
  Etag = “17"
  Placement =
  AddProxyAgentExtension =
  RequestId = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  StatusCode = OK
}
 

【Get-AzVMコマンドレットでstatusパラメーターを使って仮想マシンの情報を表示した場合】

PS C:\> Get-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -status | Format-Custom * -Depth 5

class PSVirtualMachineInstanceView
{
  ResourceGroupName = リソースグループ名
  Name = vm-01
  ComputerName = vm-01
  OsName = Windows Server 2025 Datacenter Azure Edition
  OsVersion = 10.0.26100.32463
  HyperVGeneration = V2
  AssignedHost=
  IsVMInStandbyPool=
  BootDiagnostics=
    class BootDiagnosticsInstanceView
    {
      ConsoleScreenshotBlobUri=
      SerialConsoleLogBlobUri=
      Status=
    }
  Disks =
    [
      class DiskInstanceView
      {
        Name = OSディスク名

            ~(中略)~

  Extensions =
    [
      class VirtualMachineExtensionInstanceView
      {
        Name = AzureHibernateExtension
        Type = Microsoft.CPlat.Core.WindowsHibernateExtension
        TypeHandlerVersion = 1.0.7
        Substatuses =
          [
            class InstanceViewStatus
            {
              Code = ComponentStatus/VMBootState/Resume/succeeded
              Level = Info
              DisplayStatus = Provisioning succeeded
              Message = Last guest resume was successful.
              Time =
            }
          ]
        Statuses =
          [
            class InstanceViewStatus
            {
              Code = ProvisioningState/succeeded
              Level = Info
              DisplayStatus = Provisioning succeeded
              Message = Enabling hibernate succeeded. Response from the powercfg command:The hiberfile size has been set to: 8536289280 bytes.
              Time =
 
             ~(中略)~
 
   VMAgent =
    class VirtualMachineAgentInstanceView
    {
      VmAgentVersion = 2.7.41491.1183
      ExtensionHandlers =
        [
          class VirtualMachineExtensionHandlerInstanceView
          {
            Type = Microsoft.CPlat.Core.WindowsHibernateExtension
            TypeHandlerVersion = 1.0.7
            Status =
              class InstanceViewStatus
              {
                Code = ProvisioningState/succeeded
                Level = Info
                DisplayStatus = Ready
                Message =
                Time =
              }
          }
          class VirtualMachineExtensionHandlerInstanceView
          {
            Type = Microsoft.CPlat.Core.WindowsPatchExtension
            TypeHandlerVersion = 1.5.80
            Status =
 
            ~(中略)~

 
    class InstanceViewStatus
      {
        Code = PowerState/running
        Level = Info
        DisplayStatus = VM running
        Message =
        Time =
      }
    ]   
  MaintenanceRedeployStatus =
  PatchStatus =
    class VirtualMachinePatchStatus
    {
      AvailablePatchSummary =
        class AvailablePatchSummary
        {
          Status = Succeeded
          AssessmentActivityId = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
          RebootPending = False
          CriticalAndSecurityPatchCount = 0
          OtherPatchCount = 3
 

          ~(以下略)~

仮想マシンの操作例(開始、停止、割り当て解除、休止、電源状態確認)

仮想マシンの開始から割り当て解除まで、一連の流れを1つずつコマンドレットの実行結果を確認しながら実行します。
コマンドの実行と同時に、仮想マシンのステータスも確認します。

※デプロイ済みの仮想マシン(ホスト名:vm-01)を例に確認しています。

操作内容 コマンド実行結果
開始前の仮想マシン
(ステータス確認)

PS C:\> Get-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -Status | 
ft Name,

@{n="PowerState";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).Code}},
@{n="PowerDisplayStatus";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).DisplayStatus}}

Name PowerState PowerDisplayStatus
—– —– —–
vm-01 PowerState/deallocated VM deallocated

仮想マシンを開始

PS C:\> Start-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01"

開始中の仮想マシン
(ステータス確認)

PS C:\> Get-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -Status | 
ft Name,

@{n="PowerState";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).Code}},
@{n="PowerDisplayStatus";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).DisplayStatus}}

Name PowerState PowerDisplayStatus
—– —– —–
vm-01 PowerState/starting VM starting

実行中の仮想マシン
(ステータス確認)

PS C:\> Get-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -Status | 
ft Name,

@{n="PowerState";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).Code}},
@{n="PowerDisplayStatus";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).DisplayStatus}}

Name PowerState PowerDisplayStatus
—– —– —–
vm-01 PowerState/running VM running

仮想マシンを停止
(電源オフ)

PS C:\> Stop-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -StayProvisioned -force
OperationId : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Status : Succeeded
StartTime : 2026/04/19 14:32:09
EndTime : 2026/04/19 14:32:40
Error :

停止中の仮想マシン
(ステータス確認)

PS C:\> Get-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -Status | 
ft Name,

@{n="PowerState";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).Code}},
@{n="PowerDisplayStatus";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).DisplayStatus}}

Name PowerState PowerDisplayStatus
—– —– —–
vm-01 PowerState/stopping VM stopping

停止状態の仮想マシン
(ステータス確認)

PS C:\> Get-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -Status | 
ft Name,

@{n="PowerState";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).Code}},
@{n="PowerDisplayStatus";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).DisplayStatus}}

Name PowerState PowerDisplayStatus
—– —– —–
vm-01 PowerState/stopped VM stopped

仮想マシンを割り当て解除

PS C:\> Stop-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -force

割り当て解除状態の仮想マシン
(ステータス確認)

PS C:\> Get-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -Status | 
ft Name,

@{n="PowerState";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).Code}},
@{n="PowerDisplayStatus";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).DisplayStatus}}

Name PowerState PowerDisplayStatus
—– —– —–
vm-01 PowerState/deallocating VM deallocating

仮想マシンを休止

PS C:\> Stop-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -Hibernate -force

休止状態の仮想マシン
(ステータス確認)

PS C:\> Get-AzVM -ResourceGroupName “リソースグループ名" -Name “vm-01" -Status |
ft Name,
@{n="PowerState";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).Code}},
@{n="PowerDisplayStatus";e={($_.Statuses | Where-Object {$_.Code -like “PowerState/*"}).DisplayStatus}},
@{n="HibernationState";e={($_.Statuses | Where-Object {$_.Code -like “HibernationState/*"}).Code}},
@{n="HibernationDisplayStatus";e={($_.Statuses | Where-Object {$_.Code -like “HibernationState/*"}).DisplayStatus}}
 

Name PowerState PowerDisplayStatus HibernationState HibernationDisplayStatus
—– —– —– —– —–
vm-01 PowerState/deallocated VM deallocated HibernationState/Hibernated VM hibernated

—広告—

最後に

今回は、仮想マシンの開始から割り当て解除までの一連の流れで利用するAzure CLI(コマンド)やAzure PowerShell(コマンドレット)をまとめました。
再適用や再デプロイのコマンドに加え、休止状態のコマンドについても一覧形式でまとめています。
Azure CLIとAzure PowerShellでは、出力される内容が異なる場合があることも確認しています。

引き続き、いろいろ試してみたいと思います。

Azureへのサインイン方法については、こちらで紹介しています。
Azure CLIやAzure PowerShellでのサインイン方法、サブスクリプションの切り替え手順も紹介しています。

VS CodeへのAzure CLIやAzure PowerShellのインストール手順については、こちらで紹介しています。

Rocky LinuxへのAzure PowerShellやAzure CLIのインストール手順については、こちらで紹介しています。

Azure Cloud Shellの使い方については、こちらで紹介しています。

Azure PowerShellを使用して、仮想マシンのステータス、IPアドレス、ディスク設定を一括で取得する方法を紹介しています。

PowerShellのRunbookを利用して仮想マシンを起動する方法については、こちらで紹介しています。

Logic Appsを利用した仮想マシンの起動方法については、こちらで紹介しています。

スポンサーリンク