你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
如何通过 Azure Arc 网关(公共预览版)简化网络配置要求
如果使用企业代理来管理出站流量,Azure Arc 网关允许你仅使用七 (7) 个终结点将基础架构加入 Azure Arc。 使用 Azure Arc 网关,可以:
- 通过仅向七 (7) 个完全限定域 (FQDN) 开放公共网络访问来连接到 Azure Arc。
- 查看和审核 Azure Connected Machine Agent 通过 Arc 网关发送到 Azure 的所有流量。
本文介绍如何设置和使用 Arc 网关(公共预览版)。
重要
目前,在存在已启用 Azure Arc 的服务器的所有区域中,已启用 Azure Arc 的服务器的 Arc 网关功能均以公共预览版提供。 有关 beta 版本、公共预览版或尚未正式发布 (GA) 的版本的 Azure 功能所适用的法律条款,请参阅 Microsoft Azure 预览版的补充使用条款
Azure Arc 网关的工作原理
Azure Arc 网关包含两个主要组件:
Arc 网关资源:充当常见 Azure 流量前端的 Azure 资源。 此网关资源在特定域中提供。 创建 Arc 网关资源后,域会以成功响应的形式返回给你。
Arc 代理:添加到 Arc 代理的新组件。 此组件作为服务(名为“Azure Arc 代理”)运行,充当 Azure Arc 代理和扩展所使用的转发代理。 Arc 代理不需要你进行任何配置。 此代理是 Arc 核心代理的一部分,在已启用 Arc 的资源的上下文中运行。
网关设置好后,流量流经以下跃点:Arc 代理 → Arc 代理 → 企业代理 → Arc 网关 → 目标服务
当前限制
在规划设置时,Arc 网关对象有一些限制需要加以考虑。 这些限制仅适用于公共预览版。 当 Arc 网关功能正式发布时,这些限制可能不再适用。
- 不支持 TLS 终止代理(公共预览版)
- 不支持与 Arc 网关(公共预览版)一起使用的 ExpressRoute/站点到站点 VPN 或专用终结点。
- 每个 Azure 订阅限制为五 (5) 个 Arc 网关(公共预览版)资源。
所需的权限
若要创建 Arc 网关资源并管理它们与已启用 Arc 的服务器的关联,需要以下权限:
- Microsoft.HybridCompute/settings/write
- Microsoft.hybridcompute/gateways/read
- Microsoft.hybridcompute/gateways/write
如何使用 Arc 网关(公共预览版)
使用 Arc 网关需要四个步骤:
- 创建 Azure 网关资源。
- 确保环境中允许所需的 URL。
- 将 Azure Arc 资源与 Arc 网关资源集成,或配置现有 Azure Arc 资源以使用 Arc 网关。
- 验证设置是否成功。
步骤 1:创建 Arc 网关资源
可以使用 Azure 门户、Azure CLI 或 Azure PowerShell 来创建 Arc 网关资源。
在浏览器中,登录到 Azure 门户。
导航到“Azure Arc | Azure Arc 网关”页,然后选择“创建”。
选择要在 Azure 中管理 Arc 网关资源的订阅和资源组。 Arc 网关资源可由同一 Azure 租户中已启用 Arc 的任何资源使用。
对于“名称”,请输入 Arc 网关资源的名称。
对于“位置”,请输入 Arc 网关资源应所在的区域。 Arc 网关资源可由同一 Azure 租户中启用 Arc 的任何资源使用。
选择下一步。
在“标记”页上,指定一个或多个自定义标记,以支持你的标准。
选择“查看 + 创建”。
查看输入的详细信息,然后选择“创建”。
网关创建过程需要 9-10 分钟才能完成。
步骤 2:确保环境中允许所需的 URL
创建资源后,成功响应包括 Arc 网关 URL。 确保 Arc 资源所在的环境中允许 Arc 网关 URL 和下表中的所有 URL。 所需 URL 包括:
URL | 目的 |
---|---|
[URL 前缀].gw.arc.azure.com | 网关 URL(可以通过在创建网关资源后运行 az arcgateway list 来获取此 URL) |
management.azure.com | Azure 资源管理器控制通道所需的 Azure 资源管理器终结点 |
login.microsoftonline.com | 用于获取标识访问令牌的 Microsoft Entra ID 终结点 |
gbl.his.arc.azure.com | 用于与 Azure Arc 代理通信的云服务终结点 |
<地区>.his.arc.azure.com | 用于 Arc 的核心控制通道 |
packages.microsoft.com | 获取基于 Linux 的 Arc 代理有效负载所必需,仅在将 Linux 服务器连接到 Arc 时才需要 |
步骤 3a:使用 Arc 网关资源加入 Azure Arc 资源。
生成安装脚本。
按照快速入门:使用启用了 Azure Arc 的服务器连接混合计算机中的说明操作,创建一个脚本,以便自动下载和安装 Azure Connected Machine Agent,并与 Azure Arc 建立连接。
重要
生成加入脚本时,选择“连接方法”下的“代理服务器”以显示“网关资源”的下拉列表。
运行安装脚本,将服务器加入 Azure Arc。
在脚本中,Arc 网关资源的 ARM ID 显示为
--gateway-id
。
步骤 3b:配置现有 Azure Arc 资源以使用 Arc 网关
可以使用 Azure 门户、Azure CLI 或 Azure PowerShell 将现有 Azure Arc 资源配置为使用 Arc 网关。
在 Azure 门户上,转到“Azure Arc - Azure Arc 网关”页。
选择要与已启用 Arc 的服务器关联的 Arc 网关资源。
转到网关资源的“关联资源”页。
选择 添加 。
选择要与 Arc 网关资源关联的已启用 Arc 的资源。
选择“应用”。
通过运行
azcmagent config set connection.type gateway
,将已启用 Arc 的服务器更新为使用 Arc 网关。
步骤 4:验证设置是否成功
在加入的服务器上运行以下命令:azcmagent show
结果应指示以下值:
- “代理状态”应显示为“已连接”。
- “使用 HTTPS 代理”应显示为 http://localhost:40343。
- “上游代理”应显示为你的企业代理(如果已设置一个)。 网关 URL 应反映网关资源的 URL。
此外,若要验证设置成功,可以运行以下命令:azcmagent check
结果应指示已将 connection.type
设置为网关,“可访问”列对于所有 URL 均应指示“true”。
将计算机与新的 Arc 网关相关联
要将计算机与新的 Arc 网关相关联,请执行以下操作:
在 Azure 门户上,转到“Azure Arc - Azure Arc 网关”页。
选择要与计算机关联的新 Arc 网关资源。
转到网关资源的“关联资源”页。
选择 添加 。
选择要与新的 Arc 网关资源关联的已启用 Arc 的计算机。
选择“应用”。
通过运行
azcmagent config set connection.type gateway
,将已启用 Arc 的服务器更新为使用 Arc 网关。
移除 Arc 网关关联(改用直接路由)
通过运行以下命令,将已启用 Arc 的服务器的连接类型设置为“direct”,而不是“gateway”:
azcmagent config set connection.type direct
注意
如果执行此步骤,则必须在环境中满足所有 Azure Arc 网络要求才能继续利用 Azure Arc。
将 Arc 网关资源从计算机分离:
在 Azure 门户上,转到“Azure Arc - Azure Arc 网关”页。
选择 Arc 网关资源。
转到网关资源的“关联资源”页并选择服务器。
选择“删除” 。
删除 Arc 网关资源
注意
此操作可能需要 4-5 分钟才能完成。
在 Azure 门户上,转到“Azure Arc - Azure Arc 网关”页。
选择 Arc 网关资源。
选择“删除”。
故障排除
可以通过查看 Azure Arc 代理日志来审核 Arc 网关流量。
若要在 Windows 系统上查看 Arc 代理日志,请执行以下操作:
- 在 PowerShell 中运行
azcmagent logs
。 - 在生成的 .zip 文件中,日志位于
C:\ProgramData\Microsoft\ArcProxy
文件夹中。
若要在 Linux 系统上查看 Arc 代理日志,请执行以下操作:
- 运行
sudo azcmagent logs
并共享生成的文件。 - 在生成的日志文件中,日志位于
/usr/local/arcproxy/logs/
文件夹中。
其他方案
在公共预览期间,Arc 网关涵盖加入服务器所需的终结点,以及其他支持 Arc 的方案所需的部分终结点。 根据采用的方案,代理中必须允许其他终结点。
不需要其他终结点的方案
- Windows 管理中心
- SSH
- 扩展的安全更新
- Microsoft Defender
- 适用于 SQL Server 的 Azure 扩展
需要其他终结点的方案
使用 Arc 网关时,必须在企业代理中允许以下场景中列出的终结点:
已启用 Azure Arc 的数据服务
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
*.monitoring.azure.com
Azure Monitor 代理
<log-analytics-workspace-id>.ods.opinsights.azure.com
<data-collection-endpoint>.<virtual-machine-region-name>.ingest.monitor.azure.com
Azure Key Vault 证书同步
- <vault-name>.vault.azure.net
Azure 自动化混合 Runbook 辅助角色扩展
- \* .azure-automation.net
Windows OS 更新扩展/Azure 更新管理器
- 环境必须满足 Windows 更新的所有先决条件
已知问题
下面是对 Arc 网关当前已知问题的说明。
Azure Connected Machine 代理加入后需要刷新
使用加入脚本(或 azcmagent connect
命令)加入具有指定网关资源 ID 的服务器时,资源将成功使用 Arc 网关。 但是,由于已知错误(目前正在修复),除非刷新资源设置,否则启用 Arc 的服务器不会在 Azure 门户中显示为关联资源。 按照以下过程来执行此刷新:
在 Azure 门户中,导航到“Azure Arc | Arc 网关”页。
选择要与已启用 Arc 的服务器关联的 Arc 网关资源。
导航到网关资源的“关联资源”页。
选择 添加 。
选择要与 Arc 网关资源关联的已启用 Arc 的资源,然后选择“应用”。
从计算机分离网关资源后需要刷新 Arc 代理
从计算机分离 Arc 网关资源后,必须刷新 Arc 代理才能清除 Arc 网关配置。 为此,请执行以下步骤:
停止运行 arc 代理
- Windows:
Stop-Service arcproxy
- Linux:
sudo systemctl stop arcproxyd
- Windows:
删除
cloudconfig.json
文件,- Windows:“C:\ProgramData\AzureConnectedMachineAgent\Config\cloudconfig.json”
- Linux:“/var/opt/azcmagent/cloudconfig.json”
启动 arc 代理
- Windows:
Start-Service arcproxy
- Linux:
sudo systemctl start arcproxyd
- Windows:
重启 himds(可选,但建议执行)。
- Windows:
Restart-Service himds
- Linux:
sudo systemctl restart himdsd
- Windows:
需要刷新在没有网关的情况下重新启用的计算机
如果从 Azure Arc 中删除了具有 Arc 网关且已启用 Arc 的计算机,并在没有 Arc 网关的情况下重新启用了 Arc,则需要刷新计算机才能更新其在 Azure 门户中的状态。
重要
仅当资源使用与其初次启用时使用的相同 ARM ID 重新启用 Arc 时,才会出现此问题。
在这种情况下,计算机在 Azure 门户中错误地显示为与 Arc 网关关联的资源。 若要防止这种情况,如果你打算为没有 Arc 网关的计算机启用 Arc,而该计算机之前已使用 Arc 网关启用 Arc,则必须在加入后更新 Arc 网关关联。 为此,请按照以下过程操作:
在 Azure 门户中,导航到“Azure Arc | Arc 网关”页。
选择 Arc 网关资源。
导航到网关资源的“关联资源”页。
选择夫妻,然后选择“移除”。
删除后需要手动关联网关
如果在计算机仍连接到 Arc 网关时删除该网关,则必须使用 Azure 门户将该计算机与任何其他 Arc 网关资源关联。
若要避免此问题,请在删除网关资源之前,从 Arc 网关分离所有已启用 Arc 的资源。 如果遇到此错误,请使用 Azure 门户将计算机与新的 Arc 网关资源关联。