通过 Azure Arc 网关(预览版)简化网络配置要求
如果使用企业代理来管理出站流量,Azure Arc 网关可帮助简化启用连接的过程。
使用 Azure Arc 网关(目前为预览版),可以:
- 通过仅向七个完全限定域 (FQDN) 开放公共网络访问来连接到 Azure Arc。
- 查看并审核 Arc 代理通过 Arc 网关发送到 Azure 的所有流量。
Azure Arc 网关的工作原理
Arc 网关的工作原理是引入两个新组件:
- Arc 网关资源是一种 Azure 资源,用作 Azure 流量的常见前端。 此网关资源通过特定域/URL 提供。 必须按照本文中所述的步骤创建此资源。 成功创建网关资源后,此域/URL 将包含在成功响应中。
- Arc 代理是作为自己的 Pod(称为 Azure Arc 代理)运行的新组件。 此组件充当 Azure Arc 代理和扩展使用的转发代理。 Azure Arc 代理不需要你进行任何配置。
有关详细信息,请参阅 Azure Arc 网关的工作原理。
重要
Azure 本地和 AKS 不支持 TLS 终止代理、ExpressRoute/站点到站点 VPN 或专用终结点。 此外,每个 Azure 订阅限制为五个 Arc 网关资源。
开始之前
确保完成 在 Azure 本地上创建 AKS 群集的先决条件。
本文需要 Azure CLI 1.4.23 或更高版本。 如果使用 Azure CloudShell,则已安装最新版本。
创建 Arc 网关资源并管理其与 AKS Arc 群集的关联需要以下 Azure 权限:
Microsoft.Kubernetes/connectedClusters/settings/default/write
Microsoft.hybridcompute/gateways/read
Microsoft.hybridcompute/gateways/write
可以使用 Azure CLI 或 Azure 门户创建 Arc 网关资源。 有关如何为 AKS 群集和 Azure 本地创建 Arc 网关资源的详细信息,请参阅 在 Azure 中创建 Arc 网关资源。 创建 Arc 网关资源时,运行以下命令获取网关资源 ID:
$gatewayId = "(az arcgateway show --name <gateway's name> --resource-group <resource group> --query id -o tsv)"
确认对所需 URL 的访问权限
确保通过企业防火墙允许 Arc 网关 URL 和以下所有 URL:
URL | 目的 |
---|---|
[Your URL prefix].gw.arc.azure.com |
网关 URL。 可以通过在创建资源后运行 az arcgateway list 来获取此 URL。 |
management.azure.com |
Azure 资源管理器终结点,Azure 资源管理器控制通道需要。 |
<region>.obo.arc.azure.com |
使用时 az connectedk8s proxy 是必需的。 |
login.microsoftonline.com , <region>.login.microsoft.com |
用于获取标识访问令牌的 Microsoft Entra ID 终结点。 |
gbl.his.arc.azure.com , <region>.his.arc.azure.com |
用于与 Arc 代理通信的云服务终结点。 使用短名称;例如 eus 美国东部。 |
mcr.microsoft.com , *.data.mcr.microsoft.com |
拉取 Azure Arc 代理的容器映像所需的终结点。 |
创建已启用 Arc 网关的 AKS Arc 群集
运行以下命令,创建已启用 Arc 网关的 AKS Arc 群集:
az aksarc create -n $clusterName -g $resourceGroup --custom-location $customlocationID --vnet-ids $arcVmLogNetId --aad-admin-group-object-ids $aadGroupID --gateway-id $gatewayId --generate-ssh-keys
更新 AKS Arc 群集并启用 Arc 网关
运行以下命令以更新 AKS Arc 群集并启用 Arc 网关:
az aksarc update -n $clusterName -g $resourceGroup --gateway-id $gatewayId
在 AKS Arc 群集上禁用 Arc 网关
运行以下命令以禁用 AKS Arc 群集:
az aksarc update -n $clusterName -g $resourceGroup --disable-gateway
监视流量
若要审核网关流量,请查看网关路由器日志:
- 运行
kubectl get pods -n azure-arc
。 - 标识 Arc 代理 Pod(其名称以
arc-proxy-
开头)。 - 运行
kubectl logs -n azure-arc <Arc Proxy pod name>
。
其他方案
在公共预览期间,Arc 网关涵盖 AKS Arc 群集所需的终结点,以及其他已启用 Arc 的方案所需的一部分终结点。 根据采用的方案,仍必须在代理中允许其他终结点。
使用 Arc 网关时,必须在企业代理中允许以下方案中列出的所有终结点:
- Azure Monitor 中的容器见解:
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
*.monitoring.azure.com
- Azure Key Vault:
<vault-name>.vault.azure.net
- Azure Policy:
data.policy.core.windows.net
store.policy.core.windows.net
- Microsoft Defender for Containers:
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
- 已启用 Azure Arc 的数据服务
*.ods.opinsights.azure.com
*.oms.opinsights.azure.com
*.monitoring.azure.com