你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Set-AzureVMDscExtension
在虚拟机上配置 DSC 扩展。
注意
本文档中引用的 cmdlet 用于管理使用 Azure Service Manager (ASM) API 的旧式 Azure 资源。 创建新资源时,建议不要使用旧的 PowerShell 模块,因为计划将停用 ASM。 有关详细信息,请参阅 Azure Service Manager 停用。
Az PowerShell 模块是建议用于管理 PowerShell 的 Azure 资源管理器 (ARM) 资源的 PowerShell 模块。
语法
Set-AzureVMDscExtension
[-ReferenceName <String>]
[-ConfigurationArgument <Hashtable>]
[-ConfigurationDataPath <String>]
[-ConfigurationArchive] <String>
[-ConfigurationName <String>]
[-ContainerName <String>]
[-Force]
[-StorageContext <AzureStorageContext>]
[-Version <String>]
[-StorageEndpointSuffix <String>]
[-WmfVersion <String>]
[-DataCollection <String>]
-VM <IPersistentVM>
[-Profile <AzureSMProfile>]
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
Set-AzureVMDscExtension cmdlet 在虚拟机上配置 Desired State Configuration (DSC) 扩展。
示例
示例 1:在虚拟机上配置 DSC 扩展
PS C:\> Set-AzureVMDscExtension -VM $VM -ConfigurationArchive MyConfiguration.ps1.zip -ConfigurationName MyConfiguration -ConfigurationArgument @{ Path = 'C:\MyDirectory' }
DeploymentName : my-vm-svc
Name : my-vm
Label :
VM : Microsoft.WindowsAzure.Commands.ServiceManagement.Model.PersistentVM
InstanceStatus : ReadyRole
IpAddress : 10.10.10.10
InstanceStateDetails :
PowerState : Started
InstanceErrorCode :
InstanceFaultDomain : 0
InstanceName : my-vm
InstanceUpgradeDomain : 0
InstanceSize : Small
AvailabilitySetName :
DNSName : http://my-vm-svc.cloudapp.net/
Status : ReadyRole
GuestAgentStatus : Microsoft.WindowsAzure.Commands.ServiceManagement.Model.PersistentVMModel.GuestAgentStatus
ResourceExtensionStatusList : {Contoso.Compute.BGInfo}
PublicIPAddress :
PublicIPName :
ServiceName : my-vm-svc
OperationDescription : Get-AzureVM
OperationId : a0217a7af900c1f8a212299a3333cdbd6
OperationStatus : OK
此命令在虚拟机上配置 DSC 扩展。
以前必须使用 Publish-AzureVMDscConfiguration 命令将MyConfiguration.ps1.zip包上传到 Azure 存储 ,并包含 MyConfiguration.ps1 脚本及其所依赖的模块。
MyConfiguration 参数指示要执行的脚本中的特定 DSC 配置。 -ConfigurationArgument 参数指定一个哈希表,其中包含传递给配置函数的参数。
示例 2:使用配置数据的路径在虚拟机上配置 DSC 扩展
PS C:\> $VM | Set-AzureVMDscExtension -ConfigurationArchive MyConfiguration.ps1.zip -ConfigurationName MyConfiguration -ConfigurationArgument @{ Credential = Get-Credential } -ConfigurationDataPath MyConfigurationData.psd1
DeploymentName : my-vm-svc
Name : my-vm
Label :
VM : Microsoft.WindowsAzure.Commands.ServiceManagement.Model.PersistentVM
InstanceStatus : ReadyRole
IpAddress : 10.10.10.10
InstanceStateDetails :
PowerState : Started
InstanceErrorCode :
InstanceFaultDomain : 0
InstanceName : my-vm
InstanceUpgradeDomain : 0
InstanceSize : Small
AvailabilitySetName :
DNSName : http://my-vm-svc.cloudapp.net/
Status : ReadyRole
GuestAgentStatus : Microsoft.WindowsAzure.Commands.ServiceManagement.Model.PersistentVMModel.GuestAgentStatus
ResourceExtensionStatusList : {Microsoft.Compute.BGInfo, Microsoft.Powershell.DSC}
PublicIPAddress :
PublicIPName :
ServiceName : my-vm-svc
OperationDescription : Get-AzureVM
OperationId : a0217a7af900c1f8a212299a3333cdbd7
OperationStatus : OK
此命令使用配置数据的路径在虚拟机上配置 DSC 扩展。
参数
-ConfigurationArchive
指定以前由 Publish-AzureVMDscConfiguration 上传的配置包(.zip文件)的名称。 此参数必须仅指定文件的名称,而不指定任何路径。
类型: | String |
Position: | 1 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-ConfigurationArgument
指定指定配置函数的参数的哈希表。 这些键对应于参数名称和参数值。
此参数的可接受值为:
- 基元类型
- string
- array
- PSCredential
类型: | Hashtable |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-ConfigurationDataPath
指定指定配置函数数据的 .psd1 文件的路径。 此文件必须包含一个哈希表,如分离配置和环境数据中所述https://msdn.microsoft.com/en-us/PowerShell/DSC/configData.
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-ConfigurationName
指定由 DSC 扩展调用的配置脚本或模块的名称。
此参数的值必须是 ConfigurationArchive 中打包的脚本或模块中包含的配置函数之一的名称。
如果省略此参数(不包括任何扩展名),则此 cmdlet 默认为 ConfigurationArchive 参数提供的文件的名称。 例如,如果 ConfigurationArchive 为“SalesWebSite.ps1.zip”,则 ConfigurationName 的默认值为“SalesWebSite”。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Confirm
提示你在运行 cmdlet 之前进行确认。
类型: | SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ContainerName
指定 ConfigurationArchive 所在的 Azure 存储容器的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-DataCollection
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Force
指示此 cmdlet 覆盖现有 Blob。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-InformationAction
指定此 cmdlet 如何响应信息事件。
此参数的可接受值为:
- 继续
- 忽略
- 询问
- SilentlyContinue
- 停止
- Suspend
类型: | ActionPreference |
别名: | infa |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-InformationVariable
指定信息变量。
类型: | String |
别名: | iv |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Profile
指定此 cmdlet 从中读取的 Azure 配置文件。 如果未指定配置文件,此 cmdlet 将从本地默认配置文件中读取。
类型: | AzureSMProfile |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ReferenceName
指定可用于引用扩展的用户定义字符串。 首次将扩展添加到虚拟机时指定此参数。 对于后续更新,应在更新扩展时指定以前使用的引用名称。 使用 Get-AzureVM cmdlet 返回分配给扩展的 ReferenceName。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-StorageContext
指定提供用于访问配置脚本的安全设置的 Azure 存储上下文。 此上下文提供对 ContainerName 参数指定的容器的读取访问权限。
类型: | AzureStorageContext |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-StorageEndpointSuffix
指定所有存储服务的 DNS 终结点后缀,例如“core.contoso.net”。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Version
指定要使用的 DSC 扩展的特定版本。 如果未指定此参数,则默认值设置为“1.*”。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-VM
指定持久性虚拟机对象。
类型: | IPersistentVM |
别名: | InputObject |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-WhatIf
显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。
类型: | SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-WmfVersion
指定要在虚拟机上安装的 Windows Management Framework(WMF)版本。 DSC 扩展取决于仅在 WMF 更新中可用的 DSC 功能。 此参数指定要在虚拟机上安装的更新版本。 此参数的可接受值为:
- 4.0. 除非已安装较新版本,否则安装 WMF 4.0。
- 5.0. 安装最新版本的 WMF 5.0。
- 最近的。 安装最新的 WMF(当前 WMF 5.0)。
默认值为 latest。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |