Процесс развертывания временных дисков ОС для виртуальных машин Azure

Применимо к: ✔️ Виртуальные машины Linux ✔️ Виртуальные машины Windows ✔️ Универсальные масштабируемые наборы

В этой статье показано, как создать виртуальную машину или масштабируемые наборы виртуальных машин с временными дисками ОС, используя портал, развертывания из шаблонов ARM, интерфейс CLI или PowerShell.

Портал

На портале Azure использование временных дисков можно выбрать при развертывании виртуальной машины или масштабируемых наборов виртуальных машин, открыв раздел Дополнительно на вкладке Диски. Чтобы выбрать место размещения временного диска ОС, выберите OS cache placement (Размещение кэша ОС) или Temp disk placement (Размещение временного диска).

Снимок экрана, показывающий переключатель выбора использования временного диска ОС

Если параметр, включающий использование временного диска или настраивающий размещение кэша ОС или временного диска неактивен, возможно, выбранный размер виртуальной машины имеет кэш или временный диск меньше размера образа ОС или не поддерживает хранилище класса Premium. Вернитесь на страницу Основные настройки и выберите другой размер виртуальной машины.

Развертывание шаблона масштабируемого набора

Процесс создания масштабируемого набора, использующего временный диск ОС, заключается в добавлении свойства diffDiskSettings в тип ресурса Microsoft.Compute/virtualMachineScaleSets/virtualMachineProfile в шаблоне. Кроме того, для политики кэширования необходимо задать значение ReadOnly для временного диска ОС. Для диска кэша ОС можно указать место размещения CacheDisk.

{
  "type": "Microsoft.Compute/virtualMachineScaleSets",
  "name": "myScaleSet",
  "location": "East US 2",
  "apiVersion": "2019-12-01",
  "sku": {
    "name": "Standard_DS2_v2",
    "capacity": "2"
  },
  "properties": {
    "upgradePolicy": {
      "mode": "Automatic"
    },
    "virtualMachineProfile": {
       "storageProfile": {
        "osDisk": {
          "diffDiskSettings": {
            "option": "Local" ,
            "placement": "ResourceDisk"
          },
          "caching": "ReadOnly",
          "createOption": "FromImage"
        },
        "imageReference":  {
          "publisher": "publisherName",
          "offer": "offerName",
          "sku": "skuName",
          "version": "imageVersion"
        }
      },
      "osProfile": {
        "computerNamePrefix": "myvmss",
        "adminUsername": "azureuser",
        "adminPassword": "P@ssw0rd!"
      }
    }
  }
}

Примечание

Замените все остальные значения соответствующим образом.

Развертывание шаблона виртуальной машины

Можно развернуть виртуальную машину с временным диском ОС по шаблону. Процесс создания виртуальной машины, использующей временные диски ОС, заключается в добавлении свойства diffDiskSettings в тип ресурса Microsoft.Compute/virtualMachines в шаблоне. Кроме того, для политики кэширования необходимо задать значение ReadOnly для временного диска ОС. Для диска кэша ОС можно указать вариант размещения CacheDisk.

{
  "type": "Microsoft.Compute/virtualMachines",
  "name": "myVirtualMachine",
  "location": "East US 2",
  "apiVersion": "2019-12-01",
  "properties": {
       "storageProfile": {
            "osDisk": {
              "diffDiskSettings": {
                "option": "Local" ,
                "placement": "ResourceDisk"
              },
              "caching": "ReadOnly",
              "createOption": "FromImage"
            },
            "imageReference": {
                "publisher": "MicrosoftWindowsServer",
                "offer": "WindowsServer",
                "sku": "2016-Datacenter-smalldisk",
                "version": "latest"
            },
            "hardwareProfile": {
                 "vmSize": "Standard_DS2_v2"
             }
      },
      "osProfile": {
        "computerNamePrefix": "myvirtualmachine",
        "adminUsername": "azureuser",
        "adminPassword": "P@ssw0rd!"
      }
    }
 }

CLI

Чтобы использовать временный диск для развертывания виртуальной машины CLI, задайте в команде az vm create параметр --ephemeral-os-disk со значением true и параметр --ephemeral-os-disk-placement со значением ResourceDisk для размещения на временном диске или CacheDisk для размещения на диске кэша, а также параметр --os-disk-caching со значением ReadOnly.

az vm create \
  --resource-group myResourceGroup \
  --name myVM \
  --image imageName \
  --ephemeral-os-disk true \
  --ephemeral-os-disk-placement ResourceDisk \
  --os-disk-caching ReadOnly \
  --admin-username azureuser \
  --generate-ssh-keys

Примечание

Замените myVM, imageNamemyResourceGroupи azureuser соответственно.

Для масштабируемых наборов используйте в команде az vm create тот же параметр --ephemeral-os-disk true, для параметра --os-disk-caching укажите значение ReadOnly, а для параметра --ephemeral-os-disk-placement укажите значение ResourceDisk для размещения на временном диске или CacheDisk для размещения на диске кэша.

Пересоздание образа виртуальной машины средствами REST

Вы можете заново создать экземпляр виртуальной машины с временным диском ОС с помощью REST API, как описано ниже, или на панели обзорных сведений для виртуальной машины на портале Azure. Для масштабируемых наборов повторное создание образа уже доступно через PowerShell, CLI и портал.

POST https://management.azure.com/subscriptions/{sub-
id}/resourceGroups/{rgName}/providers/Microsoft.Compute/VirtualMachines/{vmName}/reimage?api-version=2019-12-01"

PowerShell

Чтобы использовать временный диск для развертывания виртуальной машины PowerShell, используйте оператор Set-AzVMOSDisk в конфигурации виртуальной машины. Задайте для -DiffDiskSetting значение Local, для -Caching — значение ReadOnly и для -DiffDiskPlacement — значение ResourceDisk.

Set-AzVMOSDisk -DiffDiskSetting Local -DiffDiskPlacement ResourceDisk -Caching ReadOnly

Чтобы использовать временный диск на диске кэша при развертывании виртуальной машины с помощью PowerShell, используйте оператор Set-AzVMOSDisk в конфигурации виртуальной машины. Задайте для -DiffDiskSetting значение Local, для -Caching — значение ReadOnly и для -DiffDiskPlacement — значение CacheDisk.

Set-AzVMOSDisk -DiffDiskSetting Local -DiffDiskPlacement CacheDisk -Caching ReadOnly

Для развертываний масштабируемых наборов используйте оператор Set-AzVmssStorageProfile в конфигурации. Задайте для -DiffDiskSetting значение Local, для -Caching — значение ReadOnly и для -DiffDiskPlacement — значение ResourceDisk или CacheDisk.

Set-AzVmssStorageProfile -DiffDiskSetting Local -DiffDiskPlacement ResourceDisk -OsDiskCaching ReadOnly

Дальнейшие действия

Дополнительные сведения о временном диске ОС см. здесь.