更新 Azure Stack Hub 中的市场项

云操作员的职责之一是更新 Azure Stack Hub 市场。 当 Azure 中提供了新版市场项时,可下载较新版本,以利用新功能、安全修补程序和稳定性改进。

市场项有以下四种类型:

  • 虚拟机映像
  • Extensions
  • 解决方案模板
  • 资源提供程序

当用户部署新资源时,系统自动使用新的虚拟机 (VM) 映像、扩展和解决方案模板。 资源提供程序使用 Azure Stack Hub 更新体验,本文不对资源提供程序进行介绍。

更新已部署的 VM 中的扩展需执行额外的步骤。

检索新版本

下载新版市场项的过程与初始下载市场项的过程相同。

  1. 首先,使用管理员门户在 Azure Stack Hub 市场中检查已下载的市场项的版本。

    Check the version in the Azure Stack Hub marketplace.

  2. 对于已连接或已断开连接的系统,请按照将市场项下载到 Azure Stack Hub 中的说明来下载新的市场项。 仅下载有新版本的市场项。

更新已部署的扩展

在操作员下载新版扩展后,用户必须执行以下两个操作之一,确保应用新的版本。

  1. 重启 VM。 启动 VM 时,扩展会自动更新。 可在 Azure Stack Hub 用户门户或 PowerShell 中完成此操作。
  2. 使用 PowerShell,在不重启的情况下更新扩展。 当无法为 VM 计划停机时间并且需要紧急更新时,这非常有用。

用户可使用以下步骤来查询 VM,列出已使用的扩展,并将已安装的扩展更新到新版本,而无需重启 VM。

运行 PowerShell cmdlet,列出所有 VM 和已安装的扩展。 在运行该 cmdlet 之前,请确保已安装适用于 Azure Stack Hub 的 PowerShell

$VMs=Get-AzVM

Foreach($VM in $VMs)
{
    Get-AzVMExtension -ResourceGroup $VM.ResourceGroupName -VMName $VM.name | ft VMName, Name, TypeHandlerVersion, Publisher, ExtensionType, Location
}

如果要列出运行特定扩展的 VM,可使用以下脚本。

$extensionname="SampleExtenionName"
$VMs=Get-AzVM

Foreach($VM in $VMs) {
    $VMExtensions=Get-AzVMExtension -ResourceGroup $VM.ResourceGroupName -VMName $VM.name
    $extensions=$VMExtensions.name

    Foreach($Extension in $Extensions) {
        if ($Extension -eq $extensionname)
        {
            write-host $VM.Name
        }
    }
}

运行 PowerShell,将扩展更新到最新版本。

Set-AzVMExtension -ResourceGroupName "SampleRG" -VMName "SampleVM" -Name "ExtensionName" -Publisher "PublisherName" -typeHandlerVersion "NewExtensionVersion" -ExtensionType SampleType -Location local

注意

更新扩展可能需要几分钟时间。 可安全地运行第一个命令,检查版本是否已更新。

最近更新的扩展的列表

名称 Publisher TypeHandlerVersion ExtensionType
Microsoft.EnterpriseCloud.Monitoring Microsoft.EnterpriseCloud.Monitoring 1.14 OmsAgentForLinux
microsoft.linuxdiagnostic-3.1.135 Microsoft.Azure.Diagnostics 4.0 LinuxDiagnostic

注意

如果已安装以下两个扩展的任何版本:

  • Azure 更新和配置管理
  • 适用于 Linux 的 Azure 更新和配置管理

请确保将它们替换为“适用于 Linux 的 Azure Monitor、更新和配置管理”扩展最低版本 1.14.02。

后续步骤

有关 Azure Stack Hub 市场的详细信息,请参阅 Azure Stack Hub 市场概述