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

自承载集成运行时自动更新和过期通知

适用于:Azure 数据工厂 Azure Synapse Analytics

提示

试用 Microsoft Fabric 中的数据工厂,这是一种适用于企业的一站式分析解决方案。 Microsoft Fabric 涵盖从数据移动到数据科学、实时分析、商业智能和报告的所有内容。 了解如何免费开始新的试用

本文介绍如何让自承载集成运行时自动更新到最新版本,还介绍了 Azure 数据工厂 (ADF) 如何管理自承载集成运行时的版本。

如何检查自承载集成运行时版本

可以在自承载集成运行时客户端或 ADF 门户中检查版本:

显示自承载集成运行时客户端中的版本的屏幕截图。

显示 Azure 数据工厂门户中的版本的屏幕截图。

自承载集成运行时自动更新

通常,在本地计算机或 Azure 虚拟机中安装自承载集成运行时时,可以通过两个选项来管理自承载集成运行时的版本:自动更新或手动维护。 通常,ADF 每月都会发布一个新版本的自承载集成运行时,其中包括新功能版、bug 修复和增强功能。 因此,建议用户更新到最新版本。

最方便的方法是在创建或编辑自承载集成运行时时启用自动更新。 自承载集成运行时会自动更新到较新版本。 还可以根据需要在最合适的时间段计划更新。

启用自动更新

可以在自承载集成运行时客户端中检查上次更新日期/时间。

检查更新时间的屏幕截图

你可以使用此 PowerShell 命令来获取自动更新版本。

注意

如果你有多个自承载集成运行时节点,则自动更新期间不会停机。 自动更新先在一个节点中进行,与此同时,其他节点可以处理任务。 当第一个节点完成更新时,它会接管其他节点正在更新的剩余任务。 如果你只有一个自承载集成运行时,则自动更新期间会停机一段时间。

自动更新版本与最新版本

为了确保自承载集成运行时的稳定性,我们每月发布一个新版本,并使用前三个月的稳定版本每三个月推送一次自动更新。 因此,你会发现,自动更新的版本就是实际最新版本的前一版本。 如果要获取最新版本,可以到下载中心手动下载。 此外,对新版本的自动更新是在内部进行管理。 你无法更改此项。

如果当前版本较旧,ADF 门户中自承载集成运行时的“自动更新”页将显示较新版本。 当自承载集成运行时联机时,此版本将成为自动更新版本,并且会按计划的时间自动更新自承载集成运行时。 但是,如果自承载集成运行时已脱机,则该页只会显示最新版本。

门户不提供日期选择。 这意味着你只能选择时间,而日期则由后端系统确定。 通常,日期将设置在自承载集成运行时收到自动更新通知后的几天,以便客户有足够的时间来做出选择。

显示 UI 中的自动更新日期的屏幕截图。

如果有多个节点,并且由于某种原因,其中一些节点未成功自动更新。 然后这些节点会回滚到自动更新之前所有节点一致具有的版本。

自承载集成运行时过期通知

如果要手动控制自承载集成运行时的版本,则可以禁用自动更新设置并进行手动安装。 自承载集成运行时的每个版本都会在一年后过期。 ADF 门户和自承载集成运行时客户端会在过期前 90 天内显示过期消息

警告

如果自承载集成运行时过期,它将显示脱机状态,不再正常工作。

收到过期通知时,可以使用以下 PowerShell 命令查找环境中所有已过期和即将过期的自承载集成运行时。 然后,可以对其进行相应的升级。

$upperVersion = "<expiring version>" # the format is [major].[minor]. For example: 5.25
$subscription = "<subscription id>"
 
az login
az account set --subscription "$subscription"
 
$factories = az datafactory list | ConvertFrom-Json
 
$results = @();
for ($i = 0; $i -lt $factories.Count; $i++) {
    $factory = $factories[$i]
    Write-Progress -Activity "Checking data factory '$($factory.name)'" -PercentComplete $($i * 100.0 / $factories.Count)
    $shirs = az datafactory integration-runtime list --factory-name $factory.name --resource-group $factory.resourceGroup | ConvertFrom-Json | Where-Object {$_.properties.type -eq "SelfHosted"}
    for ($j = 0; $j -lt $shirs.Count; $j++) {
        $shir = $shirs[$j]
        Write-Progress -Activity "Checking data factory '$($factory.name)', checking integration runtime '$($shir.name)'" -PercentComplete $($i * 100.0 / $factories.Count + (100.0 * $j / ($factories.Count * $shirs.Count)))
        $status = az datafactory integration-runtime get-status --factory-name $factory.name --resource-group $factory.resourceGroup --integration-runtime-name $shir.name | ConvertFrom-Json
        $shirVersion = $status.properties.version
        $result = @{
            subscription = $subscription
            resourceGroup = $factory.resourceGroup
            factory = $factory.name
            integrationRuntime = $shir.name
            integrationRuntimeVersion = $shirVersion
            expiring_or_expired = (-not [string]::IsNullOrWhiteSpace($shirVersion) -and ((([Version]$shirVersion) -lt ([Version]"$($upperVersion).0.0")) -or $shirVersion.StartsWith("$($upperVersion).")))
        }
        $result | Format-Table -AutoSize
        $results += [PSCustomObject]$result
    }
}
 
Write-Host "Expiring or expired Self-Hosted Integration Runtime includes: "
$results | Where-Object {$_.expiring_or_expired -eq $true} | Select-Object -Property subscription,resourceGroup,factory,integrationRuntime,integrationRuntimeVersion | Format-Table -AutoSize