Azure 虚拟机无法添加扩展

Azure Virtual Machine Cannot Add Extensions

我安装了最新版本的 Azure Powershell (0.9.7)。我有一个通过预览门户创建的新虚拟机。它是使用新的资源组模型创建的。

我正在尝试安装一些扩展,但我无法确定正确的 Powershell 命令。大多数说明都说使用 Get-AzureVM。这不是 return 我的虚拟机。如果我对 AzureResourceManager 使用 Switch-AzureMode,我可以使用 Get-AzureVM 列出我的 VM(我假设是 v2)。

似乎 none 的扩展脚本是为资源管理器模式设置的。大多数示例脚本都说要使用: Get-AzureVM -ServiceName 'CLFeb19WS12R2A' -Name 'CLFeb19WS12R2A' | Set-AzureVMBGInfoExtension -Disable -ReferenceName 'BGInfo' | Update-AzureVM

各种方法都试过了。 AzureVMBGInfoExtension cmdlet 在资源管理器模式下不可用。

有什么建议吗?

创建虚拟机

我创建了一个新的 VM,以便为您提供帮助。我使用 portal.azure.com > New > Compute > Marketplace > Windows Server > Windows Server 2008 R2 SP1 并选择资源管理器部署模型。

创建 Active Directory 用户

由于我们使用的是 Azure 资源管理器,我需要创建一个新的 Active Directory 用户,以便我可以使用 Azure PowerShell 进行身份验证。这是我可以进行身份​​验证的唯一方法。

您可以使用以下步骤创建一个。

  1. 登录到 Azure 门户,然后 select Active Directory。

  2. 如果不存在目录,select创建您的目录并提供请求的信息。

  3. Select 您的目录并添加一个新用户。这个新用户是工作或学校帐户。

  4. 在创建用户的过程中,您将获得用户的电子邮件地址和临时密码。保存此信息,因为稍后需要。

  5. 从 Azure 门户,select 设置,然后 select 管理员。 Select 添加,并将新用户添加为共同管理员。这允许工作或学校帐户管理你的 Azure 订阅。

  6. 最后,退出 Azure 门户,然后使用新的工作或学校帐户重新登录。如果这是第一次使用此帐户登录,系统将提示您更改密码。

  7. 确保在以工作或学校帐户登录时看到您的订阅。

奇怪的是,如果我们使用其中一种类型的帐户进行身份验证,Azure 资源管理器似乎最适合(或仅适用)。

安装最新的 Azure PowerShell 模块

由于我们需要访问 Extension 相关的命令行开关,I installed the most recent version of Azure PowerShell。 link 展示了如何通过 Web 平台安装程序安装它。完成后,您可以通过 运行ning 来确定您是否拥有正确的:

> (Get-Module azureresourcemanager).Version

Major  Minor  Build  Revision
-----  -----  -----  --------
0      9      7      -1

当我们运行以下时,查看所有Extension相关的命令行开关。万岁!

> 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 设置扩展

通过 Add-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

祝你好运。如果您有任何问题,请告诉我。