エフェメラル OS ディスクに関するよくあるご質問

Q:ローカル OS ディスクのサイズは?

A: OS キャッシュの配置では VM キャッシュ サイズまで、一時ディスクの配置では一時ディスクのサイズまでの、プラットフォーム、Shared Image Gallery、カスタム イメージをサポートしています。この場合、OS ディスクに対するすべての読み取り/書き込みは、仮想マシンと同じノードのローカル環境で行われます。

Q:エフェメラル OS ディスクはサイズ変更できますか?

A:いいえ。エフェメラル OS ディスクをプロビジョニングした後、OS ディスクをサイズ変更することはできません。

Q: VM の作成後に、エフェメラル OS ディスクの配置を変更できますか?

A: いいえ。エフェメラル OS ディスクをプロビジョニングした後で、OS ディスクの配置を変更することはできません。 ただし、ARM テンプレート デプロイ、PowerShell、または CLI を使用して、選択した OS ディスクの配置を更新することにより、VM を再作成できます。 これにより、OS ディスク上のデータが削除されて VM が再作成され、OS が再プロビジョニングされます。

Q: イメージ サイズが選択した VM サイズの一時ディスク サイズと等しい場合、一時ディスクは作成されますか?

A: いいえ。この場合、一時ディスク ドライブは作成されません。

Q: 優先順位の低い VM とスポット VM では、エフェメラル OS ディスクはサポートされていますか?

A:はい。 エフェメラル VM には Stop-Deallocate のオプションはありません。ユーザーは、割り当てを解除するのではなく、削除する必要があります。

Q:エフェメラル VM にマネージド ディスクを接続できますか?

A:はい。エフェメラル OS ディスクを使用する VM にマネージド データ ディスクをアタッチできます。

Q:エフェメラル OS ディスクではすべての VM サイズがサポートされますか?

A:いいえ。ほとんどの Premium Storage VM サイズがサポートされています (DS、ES、FS、GS、M など)。 特定の VM サイズが OS イメージ サイズのエフェメラル OS ディスクをサポートしているかどうかを確認するために、次のスクリプトを使用できます。 これは、入力として OS イメージ サイズと場所を受け取り、サポートされる VM SKU と対応する配置の一覧を出力します。 OS キャッシュと一時ディスクの両方の配置が not supported (サポート対象外) とマークされている場合、所定の OS イメージ サイズに対してエフェメラル OS ディスクは使用できません。

[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;
 
    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)) }
    }
 
    return ($MaxResourceVolumeGB, $CachedDiskGB)
}
 
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) = Get-MaxTempDiskAndCacheSize $sku.Capabilities
 
        $Response += New-Object PSObject -Property @{
            ResourceSKU = $sku.Size
            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

Q:エフェメラル OS ディスクを既存の VM およびスケール セットに適用できますか?

A:いいえ。エフェメラル OS ディスクは、VM およびスケール セットの作成時にのみ使用できます。

Q:スケール セット内でエフェメラル OS ディスクと通常の OS ディスクを混在させることはできますか?

A:いいえ。同じスケール セット内でエフェメラル OS ディスクと永続 OS ディスクのインスタンスを混在させることはできません。

Q: PowerShell または CLI を使用してエフェメラル OS ディスクを作成できますか?

A: はい。REST、テンプレート、PowerShell、CLI を使用して、エフェメラル OS ディスクで VM を作成できます。