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

Set-AzVMChefExtension

将 Chef 扩展添加到虚拟机。

语法

Set-AzVMChefExtension
   [-ResourceGroupName] <String>
   [-VMName] <String>
   [[-TypeHandlerVersion] <String>]
   -ValidationPem <String>
   [-ClientRb <String>]
   [-BootstrapOptions <String>]
   [-JsonAttribute <String>]
   [-ChefDaemonInterval <String>]
   [-Daemon <String>]
   [-Secret <String>]
   [-SecretFile <String>]
   [-RunList <String>]
   [-ChefServerUrl <String>]
   [-ValidationClientName <String>]
   [-OrganizationName <String>]
   [-BootstrapVersion <String>]
   [-Linux]
   [[-Location] <String>]
   [[-Name] <String>]
   [[-AutoUpgradeMinorVersion] <Boolean>]
   [-NoWait]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzVMChefExtension
   [-ResourceGroupName] <String>
   [-VMName] <String>
   [[-TypeHandlerVersion] <String>]
   -ValidationPem <String>
   [-ClientRb <String>]
   [-BootstrapOptions <String>]
   [-JsonAttribute <String>]
   [-ChefDaemonInterval <String>]
   [-Daemon <String>]
   [-Secret <String>]
   [-SecretFile <String>]
   [-RunList <String>]
   [-ChefServerUrl <String>]
   [-ValidationClientName <String>]
   [-OrganizationName <String>]
   [-BootstrapVersion <String>]
   [-Windows]
   [[-Location] <String>]
   [[-Name] <String>]
   [[-AutoUpgradeMinorVersion] <Boolean>]
   [-NoWait]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

Set-AzVMChefExtension cmdlet 将 Chef 扩展添加到虚拟机。

示例

示例 1:将 Chef 扩展添加到 Windows 虚拟机

Set-AzVMChefExtension -ResourceGroupName "ResourceGroup001" -VMName "WindowsVM001" -ValidationPem "C:\my-org-validator.pem" -ClientRb "C:\client.rb" -RunList "Apache" -Daemon "service" -SecretFile "C:\my_encrypted_data_bag_secret" -Windows

此命令将 Chef 扩展添加到名为 WindowsVM001 的 Windows 虚拟机。 虚拟机启动时,Chef 会启动虚拟机以运行 Apache。

示例 2:将 Chef 扩展添加到 Linux 虚拟机

Set-AzVMChefExtension -ResourceGroupName "ResourceGroup002" -VMName "LinuxVM001" -ValidationPem "C:\my-org-validator.pem" -ClientRb "C:\client.rb" -RunList "Apache" -Secret "my_secret" -Linux

此命令将 Chef 扩展添加到名为 LinuxVM001 的 Linux 虚拟机。 虚拟机启动时,Chef 会启动虚拟机以运行 Apache。

示例 3:使用启动选项将 Chef 扩展添加到 Windows 虚拟机

Set-AzVMChefExtension -ResourceGroupName "ResourceGroup003" -VMName "WindowsVM002" -ValidationPem C:\my-org-validator.pem -ClientRb C:\client.rb -BootstrapOptions '{"chef_node_name":"your_node_name","chef_server_url":"https://api.opscode.com/organizations/some-org", "validation_client_name":"some-org-validator"}' -RunList "Apache" -Windows

此命令将 Chef 扩展添加到名为 WindowsVM002 的 Windows 虚拟机。 虚拟机启动时,Chef 会启动虚拟机以运行 Apache。 启动后,虚拟机引用 JSON 格式指定的 BootstrapOptions。

参数

-AutoUpgradeMinorVersion

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

-BootstrapOptions

指定client_rb选项中的配置设置。

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

-BootstrapVersion

指定启动配置的版本。

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

-ChefDaemonInterval

指定 chef-service 运行的频率(以分钟为单位)。 如果不希望在 Azure VM 上安装 chef-service,请在此字段中将值设置为 0。

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

-ChefServerUrl

将 Chef 服务器链接指定为 URL。

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

-ClientRb

指定 Chef client.rb 的完整路径。

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

-Confirm

提示你在运行 cmdlet 之前进行确认。

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

-Daemon

为无人参与的执行配置 chef-client 服务。 节点平台应为 Windows。 允许的选项:“none”、“service”和“task”。 none - 当前阻止 chef-client 服务配置为服务。 service - 将 chef-client 配置为在后台即服务中自动运行。 任务 - 将 chef-client 配置为作为计划任务在后台自动运行。

类型:String
接受的值:none, service, task
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

类型:IAzureContextContainer
别名:AzContext, AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-JsonAttribute

要添加到 chef-client 首次运行的 JSON 字符串。 例如 -JsonAttribute '{“foo” : “bar”}'

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

-Linux

指示此 cmdlet 创建 Windows 虚拟机。

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

-Location

指定虚拟机的位置。

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

-Name

指定 Chef 扩展的名称。

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

-NoWait

在操作完成之前立即启动操作并返回。 若要确定操作是否已成功完成,请使用一些其他机制。

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

-OrganizationName

指定 Chef 扩展的组织名称。

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

-ResourceGroupName

指定包含虚拟机的资源组的名称。

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

-RunList

指定 Chef 节点运行列表。

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

-Secret

用于加密和解密数据包项值的加密密钥。

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

-SecretFile

包含用于加密和解密数据包项值的加密密钥的文件的路径。

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

-TypeHandlerVersion

指定要用于此虚拟机的扩展版本。

类型:String
别名:HandlerVersion, Version
Position:9
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-ValidationClientName

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

-ValidationPem

指定 Chef 验证程序 .pem 文件路径

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

-VMName

指定虚拟机的名称。 此 cmdlet 为此参数指定的虚拟机添加 Chef 扩展。

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

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

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

-Windows

指示此 cmdlet 创建 Windows 虚拟机。

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

输入

String

Boolean

输出

PSAzureOperationResponse