2016-04-11 10 views
1

Azure Powershell 1.0を介してPuppetエージェントを既存のAzure VMに追加しようとしています。公式ドキュメントは、次の使用を意味する:Azure VMのパペット拡張機能を設定する

Parameter Set: SetPuppetExtension 
Set-AzureVMPuppetExtension [-PuppetMasterServer] <String> [[-Version] <String> ] [[-Disable]] [[-ReferenceName] <String> ] -VM <IPersistentVM> [ <CommonParameters>] 

私は(ところでVMの詳細を返す)のget-AzureRmVm経由アズールの外に - VMパラメータを取得しようとしていますが、-AzureVMPuppetExtensionセットはそれを持っていません:

Set-AzureVMPuppetExtension : Cannot bind parameter 'VM'. Cannot convert the "$VM" value of type "System.String" to type 
"Microsoft.WindowsAzure.Commands.ServiceManagement.Model.IPersistentVM". 

答えて

0

あなたが持っている問題はSet-AzureVMPuppetExtensionGet-AzureVMからの出力を期待していることGet-AzureRmVmない

これは、古いサービスモデル、古典的な仮想マシン、物事の方法です。今はかなり複雑になっています。まず、あなたはあなたがあなたが

Set-AzureRmVMExtension 
+0

で使用するために必要な詳細情報を提供します

Get-AzureRmVMExtensionImageType -PublisherName puppetlabs -Location $location 

を使用することができます

Get-AzureRmVMImagePublisher -Location $location 

を使用する必要がしたい拡張子を見つけるため

これは実際に働いた(種類): 'Set-AzureRmVMExtension -ResourceGroupName -VMName -Name PuppetEnterpriseAgent -Publisher PuppetLabs -ExtensionType PuppetEnterpriseAgent -location $ location -TypeHandlerVersion "3.8" ' – Marcinf

関連する問題