Azure虚拟机无法添加扩展
我已安装最新版本的Azure Powershell(0.9.7)。我有一个通过预览门户创建的新虚拟机。它是使用新的资源组模型创建的 我正在尝试安装一些扩展,但无法找到正确的Powershell命令。大多数说明都说使用Azure虚拟机无法添加扩展,azure,azure-powershell,azure-resource-manager,Azure,Azure Powershell,Azure Resource Manager,我已安装最新版本的Azure Powershell(0.9.7)。我有一个通过预览门户创建的新虚拟机。它是使用新的资源组模型创建的 我正在尝试安装一些扩展,但无法找到正确的Powershell命令。大多数说明都说使用获取AzureVM。这不会返回我的虚拟机。如果我使用将AzureMode切换到AzureResourceManager,我可以使用获取AzureVM列出我的VM(我假设是v2) 似乎没有为资源管理器模式设置任何扩展脚本。大多数示例脚本都表示要使用: 获取AzureVM-Service
获取AzureVM
。这不会返回我的虚拟机。如果我使用将AzureMode
切换到AzureResourceManager,我可以使用获取AzureVM
列出我的VM(我假设是v2)
似乎没有为资源管理器模式设置任何扩展脚本。大多数示例脚本都表示要使用:
获取AzureVM-ServiceName'CLFeb19WS12R2A'-Name'CLFeb19WS12R2A'
设置AzureVMBGInfoExtension-禁用-ReferenceName'BGInfo'
更新AzureVM
我试过各种方法。AzureVMBGInfoExtension cmdlet在资源管理器模式下不可用
有什么建议吗?创建虚拟机
我创建了一个新的虚拟机,以便能够帮助您。我使用了portal.azure.com>New>Compute>Marketplace>windowsserver>windowsserver2008r2sp1并选择了资源管理器部署模型
创建Active Directory用户
因为我们使用的是Azure资源管理器,所以我需要创建一个新的Active Directory用户,以便能够通过Azure PowerShell进行身份验证。这是我唯一可以认证的方法
您可以使用以下步骤创建一个
扩展
相关的commandlet。该链接显示如何通过Web平台安装程序进行安装。完成后,您可以通过运行以下命令来确定是否有正确的选项:
> (Get-Module azureresourcemanager).Version
Major Minor Build Revision
----- ----- ----- --------
0 9 7 -1
当我们运行以下命令时,请查看所有与扩展相关的commandlet。万岁
> Switch-AzureMode -Name AzureResourceManager
> Get-Command *extension* -Module AzureResourceManager
Get-AzureVMAccessExtension
Get-AzureVMCustomScriptExtension
Get-AzureVMDiagnosticsExtension
Get-AzureVMDscExtension
Get-AzureVMExtension
Get-AzureVMExtensionImage
Get-AzureVMExtensionImageType
Remove-AzureVMAccessExtension
Remove-AzureVMCustomScriptExtension
Remove-AzureVMDiagnosticsExtension
Remove-AzureVMDscExtension
Remove-AzureVMExtension
Set-AzureVMAccessExtension
Set-AzureVMCustomScriptExtension
Set-AzureVMDiagnosticsExtension
Set-AzureVMDscExtension
Set-AzureVMExtension
在资源管理器模式下,我们可以访问这些。要了解如何使用它们,请对每个感兴趣的组件运行Get Help Set AzureVMAccessExtension-example
。然后用这个例子来玩玩
验证Azure PowerShell并为您的VM设置扩展
通过添加AzureAccount
进行身份验证时,请使用我们创建的Active Directory用户。然后您可以查询您的虚拟机
> Add-AzureAccount
> Get-AzureResource -ResourceType Microsoft.Compute/virtualMachines
一旦了解了VM的详细信息,就可以添加扩展。这里有一个对我有用的例子
> Set-AzureVMAccessExtension -ResourceGroupName "mvp1" -Location "West US" -VMName "mvp1" -Name "mvp1test" -TypeHandlerVersion "2.0" -UserName "shaunluttin" -Password "Password
EndTime : 9/1/2015 9:35:57 PM -07:00
Error :
Output :
StartTime : 9/1/2015 9:35:20 PM -07:00
Status : Succeeded
TrackingOperationId : f03210e0-e67e-40d7-aad7-d9acef64bebe
RequestId : 95f42767-edcf-443a-8977-4c9f6d0eafef
StatusCode : OK
祝你好运。如果你有任何问题,请告诉我 这并不是离题,因为它是关于“程序员常用的软件工具”的。不过,它可能更适合。它是什么类型的虚拟机?Windows,Linux,其他?它是一个Windows虚拟机。我应该把它贴在服务器故障上。你说到点子上了。在我看来,Stackoverflow很好。我最终采用了与您相同的流程。active directory步骤把我搞砸了。不幸的是,在V1下可用的许多扩展在V2下不能直接使用,这很令人困惑。另外,一些其他项目(Azure备份)还不能与ARM型号配合使用。@Jonathan我发现Azure PowerShell比Azure命令行界面(CLI)更难使用。您是否尝试过CLI?对于V2下似乎不可用的扩展,您是否尝试过通过
Set-AzureVMExtension
按名称添加它们。虽然我自己还没有试过,但可能值得一试。当我完成这项工作时,我最终进入了CLI。我无法让cmdlet正常工作。我试图通过CLI添加扩展,但我不知道足够的详细信息(Publisher和其他一些特定的东西)。我放弃了,找到了另一条路。如果你还有其他问题,请告诉我。