使用 Arc 网关将 Azure 本地服务注册到 Azure Arc

本文详细介绍了如何使用 Azure Arc 网关和启用代理配置注册 Azure 本地。 在 Azure 订阅中创建 Arc 网关资源后,即可启用 Arc 网关功能。 有关 Arc 网关的概述,请参阅 关于 Azure Local 的 Azure Arc 网关

  • 使用脚本配置代理:使用此方法,可以使用脚本配置 Arc 代理。 此方法非常有用,因为无需手动跨 WinInet、WinHttp 或环境变量配置 Arc 代理。

  • 通过 Configurator 应用设置代理:使用此方法,可以通过用户界面配置 Arc 代理。 如果不想使用脚本或想要以交互方式配置代理设置,则此方法非常有用。

先决条件

步骤 1:获取 Arc 网关 ID

  • 获取 Arc 网关 ID。 若要创建 Azure Arc 网关,请参阅 设置 Azure Arc 网关 并获取 Arc 网关的资源 ID。 这也称为 ArcGatewayID

    1. 在 Azure 门户中,转到创建的 Arc 网关资源。
    2. “概述 ”页上,复制 资源 ID。 稍后将使用此 Arc 网关 ID。

    Azure Arc 网关的“概述”页中“资源 ID”的屏幕截图。

步骤 2:设置参数

  1. 设置注册脚本所需的参数。

    下面是一个示例,说明应如何更改初始化脚本的 Invoke-AzStackHciArcInitialization 这些参数。

    #Define the tenant you will use to register your machine as Arc device
    $Tenant = "YourTenantID"
    
    #Define the subscription where you want to register your Azure Local machine with Arc.
    $Subscription = "yourSubscriptionID" 
    
    #Define the resource group where you want to register your Azure Local machine with Arc.
    $RG = "yourResourceGroupName" 
    
    #Define the region to use to register your server as Arc device
    #Do not use spaces or capital letters when defining region
    $Region = "eastus"
    
    #Define the proxy address for your Azure Local deployment to access the internet via proxy.
    $ProxyServer = "http://proxyaddress:port"    
    
    #Define the bypass list for the proxy. Use comma to separate each item from the list.  
    # Parameters must be separated with a comma `,`.
    # Use "localhost" instead of <local> 
    # Use specific IPs such as 127.0.0.1 without mask 
    # Use * for subnets allowlisting. 192.168.1.* for /24 exclusions. Use 192.168.*.* for /16 exclusions. 
    # Append * for domain names exclusions like *.contoso.com 
    # DO NOT INCLUDE .svc on the list. The registration script takes care of Environment Variables configuration. 
    # At least the IP address of each Azure Local machine.
    # At least the IP address of the Azure Local cluster.
    # At least the IPs you defined for your infrastructure network. Arc resource bridge, Azure Kubernetes Service (AKS), and future infrastructure services using these IPs require outbound connectivity.
    # NetBIOS name of each machine.
    # NetBIOS name of the Azure Local cluster.
    
    $ProxyBypassList = "localhost,127.0.0.1,*.contoso.com,machine1,machine2,machine3,machine4,machine5,192.168.*.*,AzureLocal-1" 
    
    #Define the Arc gateway resource ID from Azure 
    $ArcgwId = "/subscriptions/yourarcgatewayid/resourceGroups/yourResourceGroupName/providers/Microsoft.HybridCompute/gateways/yourArcGatewayName" 
    

步骤 3:运行注册脚本

注释

如果 Azure 本地系统预安装了过时或不受支持的原始设备制造商(OEM)映像,则会自动触发更新。 更新通常需要 40-45 分钟才能完成,并包括系统重启。 重新启动后,重新运行 cmdlet 以继续。 有关更新流的更多说明,请参阅 适用于具有 OEM 映像的系统的 Azure Arc 注册工作流

  1. 运行 Arc 注册脚本。 运行脚本需要几分钟时间。

    #Invoke the registration script with Proxy and ArcgatewayID 
    Invoke-AzStackHciArcInitialization -TenantID $Tenant -SubscriptionID $Subscription -ResourceGroup $RG -Region $Region -Cloud "AzureCloud" -Proxy $ProxyServer -ArcGatewayID $ArcgwId -ProxyBypass $ProxyBypassList 
    
  2. 在 Arc 注册过程中,必须使用 Azure 帐户进行身份验证。 控制台窗口显示必须在应用中输入的代码(显示在应用中)才能进行身份验证。 按照说明完成身份验证过程。

    控制台窗口的屏幕截图,其中显示了要打开的设备代码和 URL。

步骤 4:验证 Azure Arc 网关设置是否成功

注册完成后,请按照以下步骤验证 Azure Arc 网关设置是否成功。

  1. 从系统连接到第一台 Azure 本地计算机。

  2. 打开 Arc 网关日志,监视要重定向到 Arc 网关的终结点,以及哪些终结点继续使用防火墙或代理。 可在以下位置找到 Arc 网关日志: c:\programdata\AzureConnectedMAchineAgent\Log\arcproxy.log

    显示使用脚本的 Arc 网关日志的屏幕截图。

  3. 若要检查 Arc 代理配置并验证它是否正在使用网关,请运行以下命令:

    C:\program files\AzureConnectedMachineAgent>.\azcmagent show
    

    显示的值应如下所示:

    1. 代理版本1.45 或更高版本。

    2. “代理状态”应显示为“已连接”

    3. 使用 HTTPS 代理 将显示 http://localhost:40343为启用 Arc 网关时。

    4. 上游代理 显示企业代理服务器和端口。

    5. 启用 Arc 网关时,Azure Arc 代理显示为正在运行

    屏幕截图显示了使用脚本且有网关的 Arc 代理。

  4. 此外,若要验证设置是否已成功完成,请运行以下命令:

    C:\program files\AzureConnectedMachineAgent>.\azcmagent check
    

    响应应指示 connection.type 设置为“网关”,并且所有 URL 的“可访问”列应指示 true。

    下面是使用 Arc 网关的 Arc 代理的示例:

    屏幕截图显示了使用脚本且有 Arc 网关的 Arc 代理。

    还可以通过查看网关路由器日志来审核网关流量。

    若要查看 Windows 上的网关路由器日志,请在 PowerShell 中运行 azcmagent logs 命令。 在生成的.zip文件中,日志位于 C:\ProgramData\Microsoft\ArcGatewayRouter 文件夹中。

本文详细介绍了如何在 Azure 本地上使用 Azure Arc 网关注册,而无需代理配置。 可以通过 Arc 脚本或配置器应用进行注册。 有关 Arc 网关的概述,请参阅 关于 Azure Local 的 Azure Arc 网关

  • 使用脚本进行配置:使用此方法,通过脚本配置注册设置。

  • 通过配置器应用设置:通过用户界面配置 Azure Arc 网关。 如果不想使用脚本或想要以交互方式配置注册设置,则此方法非常有用。

先决条件

步骤 1:获取 Arc 网关 ID

  • 获取 Arc 网关 ID。 若要创建 Azure Arc 网关,请参阅 设置 Azure Arc 网关 并获取 Arc 网关的资源 ID。 这也称为 ArcGatewayID

    1. 在 Azure 门户中,转到创建的 Arc 网关资源。
    2. “概述 ”页上,复制 资源 ID。 稍后将使用此 Arc 网关 ID。

    Azure Arc 网关的“概述”页中“资源 ID”的屏幕截图。

步骤 2:设置参数

#Define the tenant you will use to register your machine as Arc device
$Tenant = "YourTenantID"

#Define the subscription where you want to register your Azure Local machine with Arc.
$Subscription = "yoursubscriptionID" 

#Define the resource group where you want to register your Azure Local machine with Arc.
$RG = "yourresourcegroupname" 

#Define the Arc gateway resource ID from Azure 
$ArcgwId = "/subscriptions/yourarcgatewayid/resourceGroups/yourresourcegroupname/providers/Microsoft.HybridCompute/gateways/yourarcgatewayname" 

步骤 3:运行注册脚本

注释

如果 Azure 本地系统预安装了过时或不受支持的原始设备制造商(OEM)映像,则会自动触发更新。 更新通常需要 40-45 分钟才能完成,并包括系统重启。 重新启动后,重新运行 cmdlet 以继续。 有关更新流的更多说明,请参阅 适用于具有 OEM 映像的系统的 Azure Arc 注册工作流

若要对没有代理的 Azure 本地系统使用 Arc 网关功能,请仅使用 ArcGatewayID 参数。

  1. 按如下方式运行初始化脚本。

    
    #Invoke the registration script with ArcgatewayID 
    Invoke-AzStackHciArcInitialization -TenantID $Tenant -SubscriptionID $Subscription -ResourceGroup $RG -Region $Region -Cloud "AzureCloud" -ArcGatewayID $ArcgwId
    
  2. 在 Arc 注册过程中,必须使用 Azure 帐户进行身份验证。 控制台窗口显示必须在 URL 中输入的代码,以便进行身份验证。 按照说明完成身份验证过程。

    控制台窗口的屏幕截图,其中显示了要打开的设备代码和 URL。

步骤 4:验证设置是否成功

注册完成后,请按照以下步骤验证 Azure Arc 网关设置是否成功。

  1. 从系统连接到第一台 Azure 本地计算机。

  2. 打开 Arc 网关日志,监视重定向到 Arc 网关的终结点,以及哪些终结点继续使用防火墙。 可在以下位置找到 Arc 网关日志: c:\programdata\AzureConnectedMAchineAgent\Log\arcproxy.log

    显示使用脚本的 Arc 网关日志的屏幕截图。

  3. 若要检查 Arc 代理配置并验证它是否正在使用网关,请运行以下命令:

    C:\program files\AzureConnectedMachineAgent>.\azcmagent show
    

    显示的值应如下所示:

    1. 代理版本1.45 或更高版本。

    2. “代理状态”应显示为“已连接”

    3. 使用 HTTPS 代理 将显示 http://localhost:40343为启用 Arc 网关时。

    4. 上游代理 显示企业代理服务器和端口。

    5. 启用 Arc 网关时,Azure Arc 代理显示为正在运行

    使用 Arc 网关的 Arc 代理:

    屏幕截图显示了使用脚本且有网关的 Arc 代理。

  4. 此外,若要验证设置是否已成功完成,请运行以下命令:

    C:\program files\AzureConnectedMachineAgent>.\azcmagent check
    

    响应应指示 connection.type 设置为“网关”,并且所有 URL 的“可访问”列应指示 true。

    使用 Arc 网关的 Arc 代理:

    屏幕截图显示了使用脚本且有 Arc 网关的 Arc 代理。

    还可以通过查看网关路由器日志来审核网关流量。

    若要查看 Windows 上的网关路由器日志,请在 PowerShell 中运行 azcmagent logs 命令。 在生成的.zip文件中,日志位于 C:\ProgramData\Microsoft\ArcGatewayRouter 文件夹中。

后续步骤

此功能仅在 Azure 本地 2506 或更高版本中可用。