你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Set-AzureDataDisk

修改 Azure 虚拟机上现有数据磁盘的主机缓存。

注意

本文档中引用的 cmdlet 用于管理使用 Azure Service Manager (ASM) API 的旧式 Azure 资源。 创建新资源时,建议不要使用旧的 PowerShell 模块,因为计划将停用 ASM。 有关详细信息,请参阅 Azure Service Manager 停用

Az PowerShell 模块是建议用于管理 PowerShell 的 Azure 资源管理器 (ARM) 资源的 PowerShell 模块。

语法

Set-AzureDataDisk
   [-HostCaching] <String>
   [-LUN] <Int32>
   -VM <IPersistentVM>
   [-Profile <AzureSMProfile>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
Set-AzureDataDisk
   [-DiskName] <String>
   [-ResizedSizeInGB] <Int32>
   -VM <IPersistentVM>
   [-Profile <AzureSMProfile>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]

说明

Set-AzureDataDisk cmdlet 修改 Azure 虚拟机上现有数据磁盘的缓存属性。 指定要按其逻辑单位号(LUN)更新的数据磁盘。

示例

示例 1:修改数据磁盘的主机缓存

PS C:\> Get-AzureVM "ContosoService" | Set-AzureDataDisk -VM "VirtualMachine07" -LUN 2 -HostCaching ReadOnly | Update-AzureVM

此命令使用 Get-AzureVM cmdlet 获取在名为 ContosoService 的服务上运行的虚拟机。 该命令使用管道运算符将它们传递到当前 cmdlet。 该 cmdlet 将名为 VirtualMachine07 的虚拟机 LUN 2 的数据磁盘设置为使用 ReadOnly 主机缓存。 该命令使用 Update-AzureVM cmdlet 更新虚拟机以反映所做的更改

示例 2:修改虚拟机上所有数据磁盘的主机缓存

PS C:\> Get-AzureVM "ContosoService" -Name "VirtualMachine07" | Get-AzureDataDisk | Set-AzureDataDisk -HostCaching ReadWrite | Update-AzureVM

此命令获取 ContosoService 云服务上名为 VirtualMachine07 的虚拟机的对象。 该命令将它 传递给 Get-AzureDataDisk cmdlet,该 cmdlet 获取该虚拟机的数据磁盘。 然后,当前 cmdlet 将每个数据磁盘的主机缓存模式设置为 ReadWrite。 该命令将更新虚拟机以反映更改。

参数

-DiskName

指定此 cmdlet 修改的数据磁盘配置的名称。

类型:String
Position:3
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-HostCaching

警告

等于或大于 4 TiB 的磁盘不支持磁盘缓存。 如果将多个磁盘附加到 VM,则每个小于 4 TiB 的磁盘都会支持缓存。

更改 Azure 磁盘的缓存设置可分离和重新附加目标磁盘。 如果它是操作系统磁盘,则重启 VM。 更改磁盘缓存设置前,停止所有可能受此中断影响的应用程序/服务。 不遵循以下建议会导致数据损害。

指定磁盘的主机级缓存设置。 有效值为:

  • ReadOnly
  • ReadWrite
类型:String
Position:0
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-InformationAction

指定此 cmdlet 如何响应信息事件。

此参数的可接受值为:

  • 继续
  • 忽略
  • 询问
  • SilentlyContinue
  • 停止
  • Suspend
类型:ActionPreference
别名:infa
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InformationVariable

指定信息变量。

类型:String
别名:iv
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-LUN

指定虚拟机中数据驱动器的 LUN。 有效值为:0 到 15。

类型:Int32
Position:1
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Profile

指定此 cmdlet 从中读取的 Azure 配置文件。 如果未指定配置文件,此 cmdlet 将从本地默认配置文件中读取。

类型:AzureSMProfile
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ResizedSizeInGB

指定数据磁盘的新大小(以 GB 为单位)。 新大小必须大于当前大小。

类型:Int32
Position:4
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-VM

指定附加到数据磁盘的虚拟机对象。 若要获取虚拟机对象,请使用 Get-AzureVM cmdlet。

类型:IPersistentVM
别名:InputObject
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False