この記事では、Azure portal、Azure PowerShell、Azure CLI を使用して、Azure ファイル共有のサイズ、コスト、パフォーマンスの特性を調整する方法について説明します。 手順は、Microsoft.Storage リソース プロバイダーを使用するクラシック ファイル共有と、Microsoft.FileShares (プレビュー) で作成されたファイル共有で異なります。
対象
| 管理モデル |
課金モデル |
メディア階層 |
冗長性 |
SMB |
NFS |
| Microsoft.FileShares |
プロビジョニング済み v2 |
SSD (プレミアム) |
ローカル (LRS) |
|
|
| Microsoft.FileShares |
プロビジョニング済み v2 |
SSD (プレミアム) |
ゾーン (ZRS) |
|
|
| Microsoft.Storage |
プロビジョニング済み v2 |
SSD (プレミアム) |
ローカル (LRS) |
|
|
| Microsoft.Storage |
プロビジョニング済み v2 |
SSD (プレミアム) |
ゾーン (ZRS) |
|
|
| Microsoft.Storage |
プロビジョニング済み v2 |
HDD (標準) |
ローカル (LRS) |
|
|
| Microsoft.Storage |
プロビジョニング済み v2 |
HDD (標準) |
ゾーン (ZRS) |
|
|
| Microsoft.Storage |
プロビジョニング済み v2 |
HDD (標準) |
ジオ (GRS) |
|
|
| Microsoft.Storage |
プロビジョニング済み v2 |
HDD (標準) |
ジオゾーン (GZRS) |
|
|
| Microsoft.Storage |
プロビジョニング済み v1 |
SSD (プレミアム) |
ローカル (LRS) |
|
|
| Microsoft.Storage |
プロビジョニング済み v1 |
SSD (プレミアム) |
ゾーン (ZRS) |
|
|
| Microsoft.Storage |
従量課金制 |
HDD (標準) |
ローカル (LRS) |
|
|
| Microsoft.Storage |
従量課金制 |
HDD (標準) |
ゾーン (ZRS) |
|
|
| Microsoft.Storage |
従量課金制 |
HDD (標準) |
ジオ (GRS) |
|
|
| Microsoft.Storage |
従量課金制 |
HDD (標準) |
ジオゾーン (GZRS) |
|
|
ファイル共有を作成した後、共有のプロビジョニング (プロビジョニング済みモデル) またはアクセス層 (従量課金制モデル) の調整が必要になる場合があります。 以降のセクションでは、共有に関連するプロパティを調整する方法について説明します。
プロビジョニング済み v2 ファイル共有を作成した後、ファイル共有の 3 つのプロビジョニングされる量のいずれか、またはすべてを変更できます。 プロビジョニングするストレージ容量、IOPS、スループットは、ニーズの変化に応じて動的にスケールアップまたはスケールダウンできます。 ただし、プロビジョニング済み容量を減らすことができるのは、最後に容量を増やしてから 24 時間経過した後のみです。 ストレージ、IOPS、スループットの変更は、プロビジョニングの変更後、数分以内に有効になります。
以下の手順に従って、ファイル共有のプロビジョニングを更新します。
ストレージ アカウントに移動します。 サービス メニューの [データ ストレージ] で、[ファイル共有] を選択します。
ファイル共有の一覧で、プロビジョニングを変更する必要があるファイル共有を選択します。
ファイル共有の概要で、[サイズとパフォーマンスの変更] を選択します。
[サイズとパフォーマンス] ポップアウト ダイアログには、次のオプションがあります。
プロビジョニングされるストレージ (GiB): 共有にプロビジョニングされるストレージの量。
プロビジョニングされる IOPS とスループット: [推奨されるプロビジョニング] と [IOPS とスループットを手動で指定する] のいずれかを選択できるラジオ ボタン グループ。 共有が、プロビジョニングされるストレージの量に対して推奨される IOPS およびスループットのレベルである場合は、[推奨プロビジョニング] がオンになります。それ以外の場合は、[IOPS とスループットを手動で指定する] がオンになります。 共有のプロビジョニングに必要な変更に応じて、これら 2 つのオプションを切り替えることができます。
[保存] を選択して、プロビジョニングの変更を保存します。 ストレージ、IOPS、スループットの変更は、プロビジョニングの変更後、数分以内に有効になります。
プロビジョニング済み v2 ファイル共有は、Update-AzRmStorageShare コマンドレットを使用して変更できます。 変数 $resourceGroupName、$storageAccountName、$shareName、$provisionedMibps、$provisionedIops、$provisionedStorageGib の値を、ファイル共有のデプロイに必要な値に置き換えることを忘れないでください。
# The path to the file share resource to be modified.
$resourceGroupName = "<my-resource-group>"
$storageAccountName = "<my-storage-account-name>"
$shareName = "<name-of-the-file-share>"
# The provisioning desired on the file share. Delete the parameters if no
# change is desired.
$provisionedStorageGib = 10240
$provisionedIops = 10000
$provisionedThroughputMibPerSec = 2048
# Update the file share provisioning.
Update-AzRmStorageShare `
-ResourceGroupName $resourceGroupName `
-AccountName $storageAccountName `
-ShareName $shareName `
-QuotaGiB $provisionedStorageGib `
-ProvisionedIops $provisionedIops `
-ProvisionedBandwidthMibps $provisionedThroughputMibPerSec
$f = Get-AzRmStorageShare -ResourceGroupName $resourceGroupName -AccountName $storageAccountName -ShareName $shareName
$f | fl
プロビジョニング済み v2 ファイル共有は、az storage share-rm update コマンドを使用して変更できます。 変数 resourceGroupName、storageAccountName、fileShareName、provisionedStorageGib、provisionedIops、provisionedThroughputMibPerSec の値を、ファイル共有のデプロイに必要な値に置き換えることを忘れないでください。
# The path to the file share resource to be modified.
resourceGroupName="<resource-group>"
storageAccountName="<storage-account>"
fileShareName="<file-share>"
# The provisioning desired on the file share. Delete the parameters if no
# change is desired.
provisionedStorageGib=10240
provisionedIops=10000
provisionedThroughputMibPerSec=2048
# Update the file share provisioning.
az storage share-rm update \
--resource-group $resourceGroupName \
--name $shareName \
--storage-account $storageAccountName \
--quota $provisionedStorageGib \
--provisioned-iops $provisionedIops \
--provisioned-bandwidth-mibps $provisionedThroughputMibPerSec
プロビジョニング済み v1 ファイル共有を作成した後、ファイル共有のプロビジョニングされるストレージ サイズを変更できます。 共有のプロビジョニングされるストレージを変更すると、プロビジョニングされる IOPS とプロビジョニングされるスループットの量も変更されます。 プロビジョニング済みストレージを縮小できるのは、最後にストレージを増やしてから 24 時間経過した後のみです。 ストレージ、IOPS、スループットの変更は、プロビジョニングの変更後、数分以内に有効になります。 詳細については、「プロビジョニング済み v1 のプロビジョニングの詳細」を参照してください。
以下の手順に従って、ファイル共有のプロビジョニングを更新します。
ストレージ アカウントに移動します。 サービス メニューの [データ ストレージ] で、[ファイル共有] を選択します。
ファイル共有の一覧で、プロビジョニングを変更する必要があるファイル共有を選択します。
ファイル共有の概要で、[サイズとパフォーマンスの変更] を選択します。
[サイズとパフォーマンス] ポップアウト ダイアログのオプションは、[プロビジョニングされるストレージ (GiB)] の 1 つだけです。 プロビジョニングされるストレージの指定された量で提供されるよりも多くの IOPS またはスループットが必要な場合は、プロビジョニングされるストレージ容量を増加して、追加の IOPS とスループットを得ることができます。
[保存] を選択して、プロビジョニングの変更を保存します。 ストレージ、IOPS、スループットの変更は、プロビジョニングの変更後、数分以内に有効になります。
注
必要に応じて、PowerShell と CLI を使用して有料バーストを有効化/無効化できます。 有料バーストは、プロビジョニングされた v1 課金モデルの高度な機能です。 有料バーストを有効にする前に、プロビジョニング済み v1 有料バーストを参照してください。
プロビジョニング済み v1 ファイル共有は、Update-AzRmStorageShare コマンドレットを使用して変更できます。 変数 $resourceGroupName、$storageAccountName、$fileShareName の値を、ファイル共有に必要な値に置き換えることを忘れないでください。
$provisionedStorageGib、$paidBurstingEnabled、$paidBurstingMaxIops、$paidBurstingMaxThroughputMibPerSec を null 以外の値 ($null) に設定して、ファイル共有に設定します。 有料バーストは、プロビジョニング済み v1 モデルの高度な機能です。 有効にする前に、プロビジョニン済み v1 有料バーストを参照してください。
# The path to the file share resource to be modified.
$resourceGroupName = "<resource-group>"
$storageAccountName = "<storage-account>"
$fileShareName = "<file-share>"
# The provisioning desired on the file share. Set to $null to keep at the
# current level of provisioning.
$provisionedStorageGib = 10240
# Paid bursting settings.
$paidBurstingEnabled = $null # Set to $true or $false.
$paidBurstingMaxIops = $null # Set to an integer value.
$paidBurstingMaxThroughputMibPerSec = $null # Set to an integer value.
# Configure parameter object for splatting.
$params = @{
ResourceGroupName = $resourceGroupName;
StorageAccountName = $storageAccountName;
Name = $fileShareName;
}
if ($null -ne $provisionedStorageGib) {
$params += @{ QuotaGiB = $provisionedStorageGib }
}
if ($null -ne $paidBurstingEnabled) {
$params += @{ PaidBurstingEnabled = $paidBurstingEnabled }
}
if ($null -ne $paidBurstingMaxIops) {
$params += @{ PaidBurstingMaxIops = $paidBurstingMaxIops }
}
if ($null -ne $paidBurstingMaxThroughputMibPerSec) {
$params += @{
PaidBurstingMaxBandwidthMibps = $paidBurstingMaxThroughputMibPerSec
}
}
# Update the file share provisioning.
Update-AzRmStorageShare @params
プロビジョニング済み v1 ファイル共有は、az storage share-rm update コマンドを使用して変更できます。 変数 resourceGroupName、storageAccountName、fileShareName、provisionedStorageGib の値を、ファイル共有に必要な値に置き換えることを忘れないでください。
# The path to the file share resource to be modified.
resourceGroupName="<resource-group>"
storageAccountName="<storage-account>"
fileShareName="<file-share>"
# The provisioning desired on the file share.
provisionedStorageGib=10240
# Update the file share provisioning.
az storage share-rm update \
--resource-group $resourceGroupName \
--storage-account $storageAccountName \
--name $fileShareName \
--quota $provisionedStorageGib
有料バーストを切り替えるには、--paid-bursting-enabled パラメーターを使用します。 有料バーストは、プロビジョニング済み v1 モデルの高度な機能です。 有効にする前に、プロビジョニン済み v1 有料バーストを参照してください。 必要に応じて、--paid-bursting-max-iops と --paid-bursting-max-bandwidth-mibps のフラグを使用して、コスト管理を目的として、有料バーストの上限を制限することができます。 変数 resourceGroupName、storageAccountName、fileShareName の値を、ファイル共有に必要な値に置き換えることを忘れないでください。
resourceGroupName="<resource-group>"
storageAccountName="<storage-account>"
fileShareName="<file-share>"
az storage share-rm update \
--resource-group $resourceGroupName \
--storage-account $storageAccountName \
--name $fileShareName \
--paid-bursting-enabled true
従量課金制ファイル共有を作成した後、次の 2 つのプロパティを変更することが必要になる場合があります。
アクセス層: ファイル共有のアクセス層は、ストレージと IOPS またはスループットのコストの比率を (トランザクションの形式で) 決定します。 アクセス層には、"トランザクション最適化"、"ホット"、"クール" の 3 つがあります。 Azure ファイル共有の層を変更すると、新しいアクセス層に移動するためのトランザクション コストが発生します。 詳細については、「アクセス層の切り替え」を参照してください。
クォータ: クォータは、ファイル共有のサイズの制限です。 クォータ プロパティは、プロビジョニング済み v2 およびプロビジョニング済み v1 モデルでは、"プロビジョニングされるストレージ容量" を意味するために使用されますが、従量課金制モデルでは、クォータが課金に直接影響することはありません。 これを変更する主な理由は 2 つあります。1 つは、従量課金制モデルで使用されるストレージまたはトランザクションのコストを制御するためにクォータを使用してファイル共有の増加を制限する場合です。もう 1 つは、5 TiB を超えてファイル共有を増加できる大規模なファイル共有機能が導入される前にストレージ アカウントがある場合です。 従量課金制ファイル共有の最大ファイル共有サイズは、100 TiB です。
次の手順に従って、Azure portal を使用してファイル共有のアクセス層を更新します。
ストレージ アカウントに移動します。 サービス メニューの [データ ストレージ] で、[ファイル共有] を選択します。
ファイル共有の一覧で、アクセス層を変更する必要があるファイル共有を選択します。
ファイル共有の概要で、[層の変更] を選択します。
表示されたドロップダウン リストから、必要な [アクセス層] を選択します。
[適用] を選択して、アクセス層の変更を保存します。
次の手順に従って、ファイル共有のクォータを更新します。
ストレージ アカウントに移動します。 サービス メニューの [データ ストレージ] で、[ファイル共有] を選択します。
ファイル共有の一覧で、クォータを変更する必要があるファイル共有を選択します。
ファイル共有の概要で、[クォータの編集] を選択します。
[クォータの編集] ポップアウトで、共有に必要な最大サイズを入力するか、[最大に設定] を選択します。 共有を最大サイズに設定しても、コストには影響ありません。
[OK] を 選択して、クォータの変更を保存します。 新しいクォータは、数分以内に有効になります。
従量課金制ファイル共有のアクセス層およびクォータの設定は、Update-AzRmStorageShare コマンドレットを使用して変更できます。 変数 $resourceGroupName、$storageAccountName、$fileShareName、$accessTier、$quotaGib の値を、ファイル共有に必要な値に置き換えることを忘れないでください。
# The path to the file share resource to be modified.
$resourceGroupName = "<resource-group>"
$storageAccountName = "<storage-account>"
$fileShareName = "<file-share>"
# The settings to be changed on the file share. Set to $null to skip setting.
$accessTier = "Cool"
$quotaGib = $null
# Construct a parameters hash table for cmdlet splatting.
$updateParams = @{
ResourceGroupName = $resourceGroupName
StorageAccountName = $storageAccountName
Name = $fileShareName
}
if ($null -ne $accessTier) { $updateParams += @{ AccessTier = $accessTier } }
if ($null -ne $quotaGib) { $updateParams += @{ QuotaGiB = $quotaGib } }
# Update the file share
Update-AzRmStorageShare @updateParams
従量課金制ファイル共有のアクセス層およびクォータの設定は、az storage share-rm update コマンドを使用して変更できます。 変数 resourceGroupName、storageAccountName、fileShareName、accessTier、quotaGib の値を、ファイル共有に必要な値に置き換えることを忘れないでください。
# The path to the file share resource to be modified.
resourceGroupName="<resource-group>"
storageAccountName="<storage-account>"
fileShareName="<file-share>"
# The settings to be changed on the file share. Set to the empty string to skip
# setting.
accessTier="Cool"
quotaGib=""
command="az storage share-rm update --resource-group $resourceGroupName"
command="$command --storage-account $storageAccountName --name $fileShareName"
if [ ! -z "${accessTier}" ]; then
command="$command --access-tier $accessTier"
fi
if [ ! -z "${quotaGib}" ]; then
command="$command --quota $quotaGib"
fi
# Update file share (command is in variable)
$command
注
Microsoft.FileShares とのファイル共有は現在プレビュー段階です。 Azure portal を使用することも、汎用の PowerShell または Azure CLI コマンドを使用してファイル共有を操作することもできます。 Microsoft.FileShares リソース プロバイダーの CLI プライベート パッケージを試す場合は、この アンケートに記入してください。
Azure portal を使用してファイル共有 (Microsoft.FileShares) のサイズとパフォーマンスを変更するには、次の手順に従います。 プロビジョニングするストレージ容量、IOPS、スループットは、ニーズの変化に応じて動的にスケールアップまたはスケールダウンできます。 ただし、プロビジョニング済み容量を減らすことができるのは、最後に容量を増やしてから 24 時間経過した後のみです。 ストレージ、IOPS、スループットの変更は、プロビジョニングの変更後、数分以内に有効になります。
変更するファイル共有を選択します。
コンテキスト メニューの [設定] を選択します。
[サイズとパフォーマンス] を選択します。
[サイズとパフォーマンス] ダイアログには、次のオプションがあります。
プロビジョニング済み容量 (GiB): 共有にプロビジョニングされたストレージの量。
プロビジョニングされる IOPS とスループット: [推奨されるプロビジョニング] と [IOPS とスループットを手動で指定する] のいずれかを選択できるラジオ ボタン グループ。 共有が、プロビジョニングされるストレージの量に対して推奨される IOPS およびスループットのレベルである場合は、[推奨プロビジョニング] がオンになります。それ以外の場合は、[IOPS とスループットを手動で指定する] がオンになります。 この 2 つのオプションを切り替えて、共有のプロビジョニングを変更できます。
IOPS: [IOPS とスループットを手動で指定する] をオンにした場合、このテキストボックスを使用して、このファイル共有にプロビジョニングする IOPS の量を変更できます。
スループット (MiB/秒): [IOPS とスループットを手動で指定する] をオンにした場合、このテキストボックスを使用して、このファイル共有にプロビジョニングするスループットの量を変更できます。
保存 を選択します。 ストレージ、IOPS、スループットの変更は、プロビジョニングの変更後、数分以内に有効になります。
PowerShell を使用してファイル共有 (Microsoft.FileShares) のサイズとパフォーマンスを変更するには、次のコマンドを使用します。
$Resource = Get-AzResource -ResourceType "Microsoft.FileShares/fileShares" `
-ResourceGroupName "<your-resource-group-name>" `
-ResourceName "<your-file-share-name>"
# You may update file share, provisioned capacity, IOPS, throughput, mount name, and nfsProtocolProperties here.
# For more info, refer to the property example for update section.
$Resource.Properties.provisionedStorageGiB = <intended capacity>
$Resource | Set-AzResource -Force
更新のプロパティの例:
-Properties @{
provisionedStorageGiB = 36
ProvisionedIoPerSec = 5005
ProvisionedThroughputMiBPerSec = 1003
mountName = "<intened-mount-name>"
nfsProtocolProperties = @{
rootSquash = "AllSquash"
}
}
ファイル共有情報を確認するには:
$Resource = Get-AzResource -ResourceType "Microsoft.FileShares/fileShares" `
-ResourceGroupName "<your-resource-group-name>" `
-ResourceName "<your-file-share-name>"
$Resource.properties
Azure CLI を使用してファイル共有 (Microsoft.FileShares) のサイズとパフォーマンスを変更するには、次のコマンドを使用します。
az resource update \
--resource-type "Microsoft.FileShares/fileShares" \
--name <your-file-share-name> \
--resource-group <your-resource-group-name> \
--set properties.provisionedStorageGiB=<intended capacity> \
properties.ProvisionedIoPerSec=<intended IOPS> \
properties.ProvisionedThroughputMiBPerSec=<intended througphput> \
properties.nfsProtocolProperties.rootSquash="AllSquash"
ファイル共有情報を確認するには:
az resource show \
--resource-type "Microsoft.FileShares/fileShares" \
--name <your-file-share-name> \
--resource-group <your-resource-group-name>
クラシック ファイル共有を削除する
ワークフローによっては、未使用または古くなったファイル共有を削除する必要がある場合があります。
論理的な削除が有効になっている ストレージ アカウント内のファイル共有は、保持期間内であれば回復できます。
Azure portal を使用してクラシック ファイル共有を削除するには、次の手順に従います。
ストレージ アカウントに移動します。 サービス メニューの [データ ストレージ] で、[ファイル共有] を選択します。
ファイル共有の一覧で、削除するファイル共有の [...] を選択します。
コンテキスト メニューから [共有の削除] を選択します。
[削除] ポップアウトに、ファイル共有を削除する理由に関するアンケートが表示されます。 これをスキップすることはできますが、特に何らかの動作異常がある場合は、Azure Files に関するフィードバックをぜひお寄せください。
ファイル共有名を入力して削除を確認し、[削除] を選択します。
ファイル共有は、Remove-AzRmStorageShare コマンドレットを使用して削除できます。 変数 $resourceGroupName、$storageAccountName、$fileShareName の値を、ファイル共有に必要な値に置き換えることを忘れないでください。
# The path to the file share resource to be deleted.
$resourceGroupName = "<resource-group>"
$storageAccountName = "<storage-account>"
$fileShareName = "<file-share>"
# Remove the file share
Remove-AzRmStorageShare `
-ResourceGroupName $resourceGroupName `
-StorageAccountName $storageAccountName `
-Name $fileShareName
ファイル共有は、az storage share-rm delete コマンドを使用して削除できます。 変数 resourceGroupName、storageAccountName、fileShareName の値を、ファイル共有に必要な値に置き換えることを忘れないでください。
resourceGroupName="<resource-group>"
storageAccountName="<storage-account>"
fileShareName="<file-share>"
az storage share-rm delete \
--resource-group $resourceGroupName \
--storage-account $storageAccountName \
--name $fileShareName
ファイル共有 (Microsoft.FileShares) の削除
注
Microsoft.FileShares とのファイル共有は現在プレビュー段階です。 Azure portal を使用することも、汎用の PowerShell または Azure CLI コマンドを使用してファイル共有を操作することもできます。 Microsoft.FileShares リソース プロバイダーの CLI プライベート パッケージを試す場合は、この アンケートに記入してください。
Azure portal を使用してファイル共有 (Microsoft.FileShares) を削除するには、次の手順に従います。
ファイル共有に移動します。
コンテキスト メニューから [削除] を選択します。
[削除] ポップアウトに、ファイル共有を削除する理由に関するアンケートが表示されます。 これをスキップすることはできますが、特に何らかの動作異常がある場合は、Azure Files に関するフィードバックをぜひお寄せください。
ファイル共有名を入力して削除を確認し、[削除] を選択します。
PowerShell を使用してファイル共有 (Microsoft.FileShares) を削除するには、次のコマンドを実行します。
Remove-AzResource -ResourceType "Microsoft.FileShares/fileShares" `
-ResourceName "<your-file-share-name>" `
-ResourceGroupName "<your-resource-group-name>" `
Azure CLI を使用してファイル共有 (Microsoft.FileShares) を削除するには、次のコマンドを実行します。
az resource delete \
--resource-type "Microsoft.FileShares/fileShares" \
--name <your-file-share-name> \
--resource-group <your-resource-group-name>
次のステップ