本文介绍如何使用 Azure 门户、Azure PowerShell 和 Azure CLI 调整 Azure 文件共享的大小、成本和性能特征。
适用于
管理模型 |
计费模式 |
媒体层 |
冗余 |
SMB |
NFS |
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(标准) |
GeoZone (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(标准) |
GeoZone (GZRS) |
|
|
创建文件共享后,可能需要调整共享的预配(预配模型)或访问层(即用即付模型)。 以下部分介绍如何调整共享的相关属性。
创建预配 v2 文件共享后,可以更改文件共享的一个或全部三个预配数量。 预配的存储、IOPS 和吞吐量可以根据需要动态纵向扩展或缩减。 但是,自上次增加数量以来,只能在 24 小时后减少预配数量。 存储量、IOPS 和吞吐量更改会在预配更改后的几分钟内生效。
按照以下说明更新文件共享的预配。
转到存储帐户。 在服务菜单中的“数据存储”下,选择“文件共享”。
在文件共享列表中,选择要更改其预配的文件共享。
在文件共享概述中,选择“更改大小和性能”。
“大小和性能”弹出对话框包含以下选项:
选择“保存”以保存预配更改。 存储量、IOPS 和吞吐量更改会在预配更改后的几分钟内生效。
可以使用 Update-AzRmStorageShare
cmdlet 修改预配 v2 文件共享。 请记得将变量 $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
可以使用 az storage share-rm update
命令修改预配 v2 文件共享。 请记得将变量 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)”。 如果需要的 IOPS 或吞吐量超出了给定的预配置存储量,则可以增加预配置存储容量以获取额外的 IOPS 和吞吐量。
选择“保存”以保存预配更改。 存储量、IOPS 和吞吐量更改会在预配更改后的几分钟内生效。
可以使用 Update-AzRmStorageShare
cmdlet 修改预配 v1 文件共享。 请记得将变量 $resourceGroupName
、$storageAccountName
和 $fileShareName
的值替换为文件共享所需的值。
# 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
# 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
可以使用 az storage share-rm update
命令修改预配 v1 文件共享。 请记得将变量 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
创建即用即付文件共享后,可能需要更改两个属性:
访问层:文件共享的访问层决定了存储与 IOPS/吞吐量成本(以交易的形式)的比率。 有三个访问层:事务优化层、热层和冷层。 更改 Azure 文件共享的层需要将其迁移到新访问层,这会产生交易成本。 有关详细信息,请参阅在访问层之间切换。
配额:配额是对文件共享大小的限制。 配额属性在预配 v2 和预配 v1 模型中用于表示“预配置的存储容量”,但是在即用即付模型中,配额对账单没有直接影响。 可能需要修改此设置的两个主要原因是,如果使用配额来限制文件共享的增长,需要修改此设置以控制即用即付模式下使用的存储/交易成本,或者如果存储帐户是在引入大文件共享功能之前创建的,此设置允许文件共享超过之前 5 TiB 的限制。 即用即付文件共享的最大文件共享大小为 100 TiB。
按照以下说明使用 Azure 门户更新文件共享的访问层。
转到存储帐户。 在服务菜单中的“数据存储”下,选择“文件共享”。
在文件共享列表中,选择要更改访问层的文件共享。
在文件共享概述中,选择“更改层”。
从提供的下拉列表中选择所需的访问层。
选择“应用”以保存访问层更改。
按照以下说明更新文件共享的配额。
转到存储帐户。 在服务菜单中的“数据存储”下,选择“文件共享”。
在文件共享列表中,选择要更改配额的文件共享。
在文件共享概述中,选择“编辑配额”。
在“编辑配额”弹出窗口中,输入所需的共享大小上限或选择“设置为最大值”。 将共享设置为最大大小不会产生任何成本。
选择“确定”,保存配额更改。 新配额会在几分钟内生效。
可以使用 Update-AzRmStorageShare
cmdlet 修改即用即付文件共享的访问层和配额设置。 请记得将变量 $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
删除经典文件共享
建议删除未使用的或过时的文件共享,具体视工作流而定。 可以在保留期内恢复启用软删除的存储帐户中的文件共享。
按照以下说明使用 Azure 门户删除经典文件共享。
转到存储帐户。 在服务菜单中的“数据存储”下,选择“文件共享”。
在文件共享列表中,选择要删除的文件共享的“...”。
从上下文菜单中选择“删除共享”。
“删除”弹出窗口包含有关删除文件共享的原因的调查。 可以跳过这一步,但我们很感谢你对 Azure 文件存储提出的反馈,当某些功能无法正常运行时更是如此。
输入文件共享名称以确认删除,然后选择“删除”。
可以使用 Remove-AzRmStorageShare
cmdlet 删除文件共享。 请记得将变量 $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
后续步骤