Поделиться через


Часто задаваемые вопросы о временных дисках ОС

Вопрос: Какой размер у эфемерных дисков ОС?

Ответ. Мы поддерживаем платформу, Галерею общих образов и пользовательские образы. Размер диска эфемерной ОС зависит от локального хранилища (диска кэша, временного диска или диска NVMe), доступного на виртуальной машине. Максимальный размер диска эфемерной ОС может составлять 2 ТиБ. Все записи на диск ОС находятся локально на том же узле, что и виртуальная машина.

Вопрос. Можно ли изменить размер временного диска ОС?

Ответ. Нет, после подготовки эфемерного диска ОС не удается изменить размер диска ОС.

Вопрос. Можно ли изменить размещение временного диска ОС после создания виртуальной машины?

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

Вопрос. Создается ли временный диск, если размер образа равен размеру временного диска для выбранного размера виртуальной машины?

Ответ. Нет, в этом случае временный диск не создается.

Вопрос. Как размещение дисков NVMe отличается от размещения временных дисков?

Ответ. Размещение диска Nvme использует весь диск Nvme, а размещение временных дисков использует пространство, равное размеру диска ОС. Например, если вы используете стандартный образ Ubuntu на Standard_D2ads_v5 с временным размещением дисков, у вас будет системный диск размером 30 ГиБ и временный диск размером 45 ГиБ. Если вы используете тот же образ Ubuntu уровня "Стандартный" в Standard_D2ads_v6 с размещением дисков NVMe, то вы получаете диск ОС объемом 30 ГиБ без диска NVMe.

Вопрос. Как работает размещение дисков NVMe для виртуальных машин с несколькими дисками NVMe?

Ответ. Размещение дисков NVMe использует минимальное количество дисков, необходимых для диска ОС. Например, Standard_D16ads_v6 имеет два диска по 440 ГиБ каждый. Если вы создаете и эфемерный диск ОС размером менее 440 ГиБ, то для создания эфемерного диска ОС используется только один диск. Второй диск NVMe возвращается вам как необработанный локальный диск.

Вопрос. Поддерживаются ли временные диски ОС на виртуальных машинах с низким приоритетом и на точечных виртуальных машинах?

Ответ. Да. Нет опции остановки и освобождения ресурсов для временных виртуальных машин, вместо этого пользователям нужно их удалять.

Вопрос. Можно ли подключить управляемые диски к временной виртуальной машине?

Ответ. Да, вы можете подключить управляемый диск данных к виртуальной машине, которая использует временный диск ОС.

Вопрос. Будут ли поддерживаться все размеры виртуальных машин для временных дисков ОС?

Ответ. Нет, но поддерживаются большинство размеров хранилища виртуальных машин класса Premium (DS, ES, FS, GS, M и т. д.). Чтобы узнать, поддерживает ли определенный размер виртуальной машины временные диски ОС для размера образа ОС, можно использовать следующий сценарий. Он принимает размер и расположение образа ОС в качестве входных данных и предоставляет список поддерживаемых виртуальных машин и соответствующего размещения. Если расположение дисков кэша, temp и NVMe отмечены как не поддерживаются, то диск эфемерной ОС не может быть использован с заданным размером образа ОС.

[CmdletBinding()]
param([Parameter(Mandatory=$true)]
      [ValidateNotNullOrEmpty()]
      [string]$Location,
      [Parameter(Mandatory=$true)]
      [long]$OSImageSizeInGB
      )
 
Function HasSupportEphemeralOSDisk([object[]] $capability)
{
    return $capability | where { $_.Name -eq "EphemeralOSDiskSupported" -and $_.Value -eq "True"}
}
 
Function Get-MaxTempDiskAndCacheSize([object[]] $capabilities)
{
    $MaxResourceVolumeGB = 0;
    $CachedDiskGB = 0;
    $NvmeDiskGB = 0;
 
    foreach($capability in $capabilities)
    {
        if ($capability.Name -eq "MaxResourceVolumeMB")
        { $MaxResourceVolumeGB = [int]($capability.Value / 1024) }
 
        if ($capability.Name -eq "CachedDiskBytes")
        { $CachedDiskGB = [int]($capability.Value / (1024 * 1024 * 1024)) }

         if ($capability.Name -eq "NvmeDiskSizeInMiB")
        { $NvmeDiskGB = [int]($capability.Value / (1024)) }

        if ($capability.Name -eq "SupportedEphemeralOSDiskPlacements")
        { $NvmeSupported = [bool]($capability.Value -contains "NvmeDisk") }
    
    }
    
    if (!$NvmeSupported)
    { $NvmeDiskGB = 0; }
    return ($MaxResourceVolumeGB, $CachedDiskGB, $NvmeDiskGB)
}
 
Function Get-EphemeralSupportedVMSku
{
    [CmdletBinding()]
    Param
    (
        [Parameter(Mandatory=$true)]
        [long]$OSImageSizeInGB,
        [Parameter(Mandatory=$true)]
        [string]$Location
    )
 
    $VmSkus = Get-AzComputeResourceSku $Location | Where-Object { $_.ResourceType -eq "virtualMachines" -and (HasSupportEphemeralOSDisk $_.Capabilities) -ne $null }
 
    $Response = @()
    foreach ($sku in $VmSkus)
    {
        ($MaxResourceVolumeGB, $CachedDiskGB, $NvmeDiskGB) = Get-MaxTempDiskAndCacheSize $sku.Capabilities
 
        $Response += New-Object PSObject -Property @{
            ResourceSKU = $sku.Size
            NvmeDiskPlacement = @{ $true = "NOT SUPPORTED"; $false = "SUPPORTED"}[$NvmeDiskGB -lt $OSImageSizeInGB]
            TempDiskPlacement = @{ $true = "NOT SUPPORTED"; $false = "SUPPORTED"}[$MaxResourceVolumeGB -lt $OSImageSizeInGB]
            CacheDiskPlacement = @{ $true = "NOT SUPPORTED"; $false = "SUPPORTED"}[$CachedDiskGB -lt $OSImageSizeInGB]
         };
    }
 
    return $Response
}
 
Get-EphemeralSupportedVMSku -OSImageSizeInGB $OSImageSizeInGB -Location $Location | Format-Table

Вопрос. Можно ли применять временный диск ОС к существующим виртуальным машинам и масштабируемым наборам?

Ответ. Нет, временный диск ОС можно использовать только во время создания виртуальной машины и масштабируемого набора.

Вопрос: Можно ли смешивать эфемерные и обычные диски ОС в масштабируемом наборе?

Нет, в одном масштабируемом наборе нельзя использовать одновременно временные и постоянные экземпляры дисков ОС.

Вопрос. Можно ли создать временный диск ОС с помощью PowerShell или CLI?

Ответ. Да, вы можете создавать виртуальные машины с временными дисками ОС, используя функции REST, шаблоны, PowerShell и CLI.