你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
如果使用企业代理来管理出站流量,Azure Arc 网关允许你仅使用七个终结点将基础结构加入 Azure Arc。 使用 Azure Arc 网关,可以:
- 通过仅向七个完全限定域 (FQDN) 开放公共网络访问来连接到 Azure Arc。
- 查看和审核 Azure Connected Machine 代理通过 Arc 网关发送到 Azure 的所有流量。
Azure Arc 网关的工作原理
Azure Arc 网关包含两个主要组件:
Arc 网关资源: 一种 Azure 资源,作为 Azure 流量的常见前端。 此网关资源在特定域中提供。 创建 Arc 网关资源后,域会以成功响应的形式返回给你。
Arc 代理:添加到 Azure Arc 代理的新组件。 作为名为“Azure Arc Proxy”的服务,此组件在已启用 Arc 的资源的上下文中运行。 它充当 Azure Arc 代理和扩展使用的转发代理。 此代理无需配置。
网关准备就绪后,流量通过以下跃点流动: Arc 代理→ Arc 代理→企业代理→ Arc 网关→目标服务。 有关 Arc 网关转发协议的详细信息,请参阅 Arc 网关转发协议体系结构。
若要以高分辨率下载体系结构图,请访问 Jumpstart Gems。
当前限制
Arc 网关具有以下当前限制。 规划配置时,请考虑这些因素。
- 当 Arc 网关正在使用时,不支持代理旁路;即使尝试通过运行
azcmagent config set proxy.bypass该功能,流量也不会绕过代理。 - 每个 Azure 订阅的 Arc 网关资源限制为 5 个(5)。
- Arc 网关只能用于 Azure 公有云中的连接。
- 不建议在需要 TLS 终止/检查的环境中使用 Arc 网关。 如果你的环境需要 TLS 终止/检查,我们建议跳过 Arc 网关终结点 (
<Your URL prefix>.gw.arc.azure.com) 的 TLS 检查。 有关详细信息,请参阅 Arc 网关和 TLS 检查。
Important
虽然 Azure Arc 网关提供了使用 Azure Arc 启用的服务器所需的连接性,但在你的环境中,你可能仍需手动将其他终结点加入允许列表,以便在已连接的计算机上使用某些扩展和服务。 有关详细信息,请参阅其他方案。 随着时间的推移,Arc 网关将逐步涵盖更多端点,进一步减少了对这些手动设置的需求。
规划 Arc 网关设置
- 区域选择: Arc 网关是一项全局服务。 运行时连接通过 Microsoft 的 Azure Front Door 全局边缘网络提供,该网络会自动将客户端路由到最近的状态点,以实现低延迟访问和无缝故障转移。 创建网关时选择的区域仅确定控制平面(网关资源和管理元数据所在的位置,以及创建/更新/删除发生的位置):它不会限制网关的运行时终结点或性能。 例如,选择美国东部与欧洲西部不会更改客户端在运行时连接的位置;它仅影响管理平面放置和策略/RBAC 区域。
- 每个 Arc 网关资源可支持的 Arc 启用资源数量:在规划使用 Arc 网关的 Azure Arc 部署时,你必须确定环境需要多少个网关资源。 这取决于计划在每个 Azure 区域中管理的资源数量。 对于已启用 Arc 的服务器,一般经验规则是,一个 Arc 网关资源可以处理每个 Azure 区域的 2,000 个资源。 如果将 Arc 网关与已启用 Arc 的服务器、已启用 Arc 的 Kubernetes 群集和 Azure 本地实例结合使用,请使用 提供的公式 计算所需的 Arc 网关资源数。
所需的权限
若要创建 Arc 网关资源并管理其与已启用 Arc 的服务器的关联,用户必须具有 Arc 网关管理器 角色。
创建 Arc 网关资源
可以使用 Azure 门户、Azure CLI 或 Azure PowerShell 创建 Arc 网关资源。 完成这些步骤后,创建 Arc 网关资源通常需要大约 10 分钟。
在浏览器中,登录到 Azure 门户。
导航到 Azure Arc。在服务菜单中的 “管理”下,选择 “Azure Arc 网关”,然后选择“ 创建”。
选择要在 Azure 中管理 Arc 网关资源的订阅和资源组。 Arc 网关资源可由同一 Azure 租户中已启用 Arc 的任何资源使用。
对于“名称”,请输入 Arc 网关资源的名称。
对于“位置”,请输入 Arc 网关资源应所在的区域。 Arc 网关资源可由同一 Azure 租户中启用 Arc 的任何资源使用。
选择下一步。
在“标记”页上,根据需要指定一个或多个自定义标记来支持你的标准。
选择“查看 + 创建”。
查看输入的详细信息,然后选择“创建”。
确认对所需 URL 的访问权限
成功创建资源后,成功响应将包括 Arc 网关 URL。 确保 Arc 资源所在的环境中允许 Arc 网关 URL 和所有这些 URL。
Important
此列表近期已更新。 如果之前已启用对这些 URL 的访问,则可能需要查看列表并更新网络配置,确保允许每个终结点。
| URL | Purpose |
|---|---|
<Your URL prefix>.gw.arc.azure.com |
网关 URL(在创建网关资源后运行 az arcgateway list 获取) |
management.azure.com |
Azure 资源管理器控制通道所需的 Azure 资源管理器终结点 |
login.microsoftonline.com、<region>.login.microsoft.com |
用于获取标识访问令牌的 Microsoft Entra ID 终结点 |
gbl.his.arc.azure.com |
用于与 Azure Arc 代理通信的云服务终结点 |
<region>.his.arc.azure.com |
用于 Arc 的核心控制通道 |
packages.microsoft.com |
连接 Linux 服务器到 Arc 的必要条件 |
download.microsoft.com |
用于下载 Windows 安装包 |
使用 Arc 网关资源加载新的 Azure Arc 资源
生成安装脚本。
按照快速入门:使用启用了 Azure Arc 的服务器连接混合计算机中的说明操作,创建一个脚本,以便自动下载和安装 Azure Connected Machine Agent,并与 Azure Arc 建立连接。
Important
生成载入脚本时,请确保在“连接方法”部分选择了“公共终结点”,并确保在“网关资源”下拉列表中选择 Arc 网关资源。
运行安装脚本,将服务器加入 Azure Arc。
在脚本中,Arc 网关资源的 ARM ID 显示为
--gateway-id。
配置现有的 Azure Arc 资源以使用 Arc 网关
可以使用 Azure 门户、Azure CLI 或 Azure PowerShell 将现有 Azure Arc 资源与 Arc 网关资源相关联。
在 Azure 门户中,转到 Azure Arc - Azure Arc 网关。
选择要与已启用 Arc 的服务器关联的 Arc 网关资源。
在网关资源的服务菜单中,选择“关联资源”。
选择 并添加。
选择已启用 Arc 的服务器资源以与 Arc 网关资源关联。
选择应用。
使用 1.50 或更早版本的 Connected Machine 代理,还必须运行 azcmagent config set connection.type gateway 以更新已启用 Arc 的服务器以使用 Arc 网关。 对于代理版本 1.51 及更高版本,无需执行此步骤,因为作会自动发生。 建议使用 最新版本的 Connected Machine 代理。
验证 Arc 网关设置是否成功
在载入的服务器上运行以下命令: azcmagent show
结果应指示以下值:
- “代理状态”应显示为“已连接”。
-
“使用 HTTPS 代理”应显示为
http://localhost:40343。 - “上游代理”应显示为你的企业代理(如果已设置一个)。 网关 URL 应反映网关资源的 URL。
此外,若要验证成功设置,请运行以下命令: azcmagent check
结果应指示 connection.type 已设置为网关,并且 Reachable 列应为所有 URL 指示 true。
删除 Arc 网关关联
可以禁用 Arc 网关并删除 Arc 网关资源与已启用 Arc 的群集之间的关联。 这会导致已启用 Arc 的群集改用直接流量。
Note
此操作仅适用于启用 Azure Arc 的服务器的 Azure Arc 网关,不适用于 Azure Local。 如果在 Azure Local 上使用 Azure Arc 网关,请参阅 关于 Azure Local 的 Azure Arc 网关 以获取移除信息。
运行以下命令,将已启用 Arc 的服务器的连接类型设置为“direct”而不是“gateway” :
azcmagent config set connection.type directNote
如果执行此步骤,则必须在环境中满足所有 Azure Arc 网络要求 才能继续使用 Azure Arc。
将 Arc 网关资源从计算机分离:
在 Azure 门户中,转到 Azure Arc - Azure Arc 网关。
选择 Arc 网关资源。
在网关资源的服务菜单中,选择“关联资源”。
选择服务器。
选择“删除”。
删除 Arc 网关资源
可以使用 Azure 门户、Azure CLI 或 Azure PowerShell 删除 Arc 网关资源。 此操作可能最多需要 5 分钟才能完成。
在 Azure 门户中,转到 Azure Arc - Azure Arc 网关。
选择 Arc 网关资源。
选择“删除”,然后确认删除。
监视 Arc 网关流量
可以通过查看 Azure Arc 代理日志来审核 Arc 网关流量。
若要查看 Windows 上的 Arc 代理日志,请执行以下作:
- 在 PowerShell 中运行
azcmagent logs。 - 在生成的 .zip 文件中,
arcproxy.log该文件位于ProgramData\AzureConnectedMachineAgent\Log文件夹中。
若要查看 Linux 上的 Arc 代理日志,请执行以下作:
- 运行
sudo azcmagent logs。 - 在生成的 .zip 文件中,
arcproxy.log该文件位于/var/opt/azcmagent/log/文件夹中。
多个资源类型的 Arc 网关资源规划
若要确定多个资源类型每个 Azure 区域所需的网关资源数,请使用以下公式:
分数 = (服务器 ÷ 20) + (K8s 群集 ÷ 10) + (Azure 本地实例 ÷ 10)
Where:
- 服务器 = 总独立服务器 + 预配的 VM (在 Azure 本地)
- K8s 群集 = 独立 Kubernetes 群集总数 + AKS Arc 群集(在 Azure 本地)
- Azure 本地实例 = Azure 本地部署总数
如果计划管理的资源所在的所有区域的评分都 < 100,那么一个 Arc 网关资源就足够了。
如果你计划从某个区域管理资源,且该区域的评分≥100,则在该区域需要部署多个 Arc 网关资源。
以下示例提供了更多上下文:
示例 1:
| 区域 | Servers | K8s 群集 | Azure 本地实例 | 分数计算 | Score |
|---|---|---|---|---|---|
| 美国东部 | 300 | 20 | 5 | 300/20 + 20/10 + 5/10 | 17.5 |
| 西欧 | 800 | 50 | 10 | 800/20 + 50/10 + 10/10 | 46.0 |
| 日本东部 | 100 | 5 | 2 | 100/20 + 5/10 + 2/10 | 5.7 |
- 每个区域的分数 < 100。 一个 Arc 网关资源就足够了。
示例 2:
| 区域 | Servers | K8s 群集 | Azure 本地实例 | 分数计算 | Score |
|---|---|---|---|---|---|
| 美国东部 | 6,000 | 300 | 40 | 6000/20 + 300/10 + 40/10 | 334.0 |
| 西欧 | 2,500 | 120 | 二十五 | 2500/20 + 120/10 + 25/10 | 139.5 |
| 东南亚 | 900 | 30 | 8 | 900/20 + 30/10 + 8/10 | 48.8 |
- 美国东部得分 > 100。 需要三个 Arc 网关资源来支持此区域中的负载。
- 西欧得分 > 100。 需要两个 Arc 网关资源来支持此区域中的负载。
- 东南亚得分 < 100。 需要一个 Arc 网关资源来支持此区域中的负载。
在此方案中,总共只需要三个网关资源,因为计算基于每个区域的最大负载,而不是跨所有区域的组合负载。
其他方案
Arc 网关涵盖载入服务器所需的终结点,以及支持多个已启用 Arc 的其他方案的终结点。 根据您采用的情景,可能需要在环境中允许额外的终结点。
不需要其他终结点的方案
- Windows Admin Center
- SSH
- 扩展的安全更新
- 适用于 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>.ingest.monitor.azure.com
Azure Key Vault 证书同步
<vault-name>.vault.azure.net
Azure 自动化混合 Runbook 辅助角色扩展
*.azure-automation.net
Windows OS 更新扩展/Azure 更新管理器
- 环境必须满足 Windows 更新的所有先决条件
Microsoft Defender
- 你的环境必须满足 Microsoft Defender 的所有先决条件
Arc 网关体系结构
查看以下信息,详细了解 Arc 网关的体系结构。
Arc 网关转发协议
Arc 网关与 TLS 监测
Arc 网关的工作原理是在 Azure 中的 Arc 代理与 Arc 网关之间建立 TLS 会话。 在此 TLS 会话中,Arc 代理将嵌套的 HTTP 连接请求发送到 Arc 网关资源,请求将连接转发到目标目标。 随后,如果目标目标本身位于 TLS 上,则会在 Arc 代理和目标目标之间建立内部端到端 TLS 会话。
在 Arc 网关中使用终止代理时,代理将会看到嵌套的 HTTP 连接请求。 它可能允许此类请求,但除非它执行嵌套 TLS 终止,否则它将无法截获到目标目标的 TLS 加密流量。 这超出了标准 TLS 终止代理的功能。 因此,使用终止代理时,建议跳过 Arc 网关终结点的 TLS 检查。
Arc 网关端点列表
如需获取所在环境中不再需要手动授权的全部终结点列表,请参阅“Arc 网关终结点”。