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

在 Azure Arc 上部署 Azure API 管理网关(预览版)

适用于:开发人员 | 高级

通过 Azure API 管理与 Kubernetes 上的 Azure Arc 之间的集成,可以将 API 管理网关组件部署为已启用 Azure Arc 的 Kubernetes 群集中的扩展

在已启用 Azure Arc 的 Kubernetes 群集上部署 API 管理网关会扩展对混合和多云环境的 API 管理支持。 使用群集扩展启用部署,使对已启用 Azure Arc 的群集进行管理和应用策略成为一致体验。

重要

Azure Arc 上的 API 管理自承载网关目前为预览版。 在预览期间,API 管理网关扩展在以下区域可用:

  • 亚洲(东部、东南部)
  • 澳大利亚(中部、中部 2、东部和东南部)
  • 巴西(南部和东南部)
  • 加拿大(中部、东部)
  • 欧洲(北部、西部)
  • 法国(中部和南部)
  • 德国(北部和中西部)
  • 印度(中部、南部、西部、Jio 中部和 Jio 西部)
  • 日本(东部和西部)
  • 韩国(中部和南部)
  • 挪威(东部和西部)
  • 南非(北部和西部)
  • 瑞典(中部)
  • 瑞士(北部和西部)
  • 阿拉伯联合酋长国(阿联酋 - 中部和北部)
  • 英国(英国南部)
  • 美国(美国中部、中部 EUAP、东部、东部 2、东部 2 EUAP、中北部、中南部、中西部、西部、西部 2、西部 3)

注意

还可以将自承载网关直接部署到 Kubernetes

先决条件

使用 Azure CLI 部署 API 管理网关扩展

  1. 在 Azure 门户,导航到 API 管理实例。

  2. 从侧边导航菜单中选择“网关”。

  3. 从列表中选择并打开预配的网关资源。

  4. 在预配的网关资源中,单击侧边导航菜单中的“部署”。

  5. 记下下一步的“令牌”和“配置 URL”值 。

  6. 在 Azure CLI 中,使用 az k8s-extension create 命令部署网关扩展。 填写 tokenconfiguration URL 值。

    • 以下示例使用 service.type='LoadBalancer' 扩展配置。 请参阅更多可用扩展配置
    az k8s-extension create --cluster-type connectedClusters --cluster-name <cluster-name> \
        --resource-group <rg-name> --name <extension-name> --extension-type Microsoft.ApiManagement.Gateway \
        --scope namespace --target-namespace <namespace> \
        --configuration-settings gateway.configuration.uri='<Configuration URL>' \
        --config-protected-settings gateway.auth.token='<token>' \
        --configuration-settings service.type='LoadBalancer' --release-train preview
    

    提示

    gateway.auth.token-protected- 标记是可选的,但建议使用。

  7. 使用以下 CLI 命令验证部署状态:

    az k8s-extension show --cluster-type connectedClusters --cluster-name <cluster-name> --resource-group <rg-name> --name <extension-name>
    
  8. 导航回“网关”列表,验证网关状态是否显示具有节点计数的绿色选中标记。 此状态表示已部署的自承载网关 Pod:

    • 已成功与 API 管理服务通信。
    • 具有常规的“检测信号”。

使用 Azure 门户部署 API 管理网关扩展

  1. 在 Azure 门户中,导航到 Azure Arc 连接的群集。

  2. 在左侧菜单中,选择“扩展”>“+ 添加”>“API 管理网关(预览)”。

  3. 选择“创建”。

  4. 在“安装 API 管理网关”窗口中,配置网关扩展:

    • 为 API 管理实例选择订阅和资源组。
    • 在“网关详细信息”中,选择“API 管理实例”和“网关名称” 。 如果 API 管理服务层支持,请为扩展输入“命名空间”范围和(可选)多个“副本” 。
    • 在“Kubernetes 配置”中,选择群集的默认配置或其他配置。 有关选项,请参阅可用扩展配置

    在 Azure 门户中部署扩展的屏幕截图

  5. 在“监视”选项卡上,(可选)启用监视,将指标跟踪请求上传到网关和后端。 如果已启用,请选择现有 Log Analytics 工作区。

  6. 选择“查看 + 安装”,然后单击“安装” 。

可用扩展配置

Azure Arc 的自承载网关扩展提供了许多配置设置来自定义环境的扩展。 本部分列出了与 Log Analytics 集成所需的部署设置和可选设置。 有关设置的完整列表,请参阅自承载网关扩展参考

必需设置

需要下列扩展配置。

设置 说明
gateway.configuration.uri API 管理服务中用于自承载网关的配置终结点。
gateway.auth.token 用于向 API 管理服务进行身份验证的网关令牌(身份验证密钥)。 通常以 GatewayKey 开头。
service.type 网关的 Kubernetes 服务配置:LoadBalancerNodePortClusterIP

Log Analytics 设置

若要启用对自承载网关的监视,请配置以下 Log Analytics 设置:

设置 说明
monitoring.customResourceId API 管理实例的 Azure 资源管理器资源 ID。
monitoring.workspaceId Log Analytics 的工作区 ID。
monitoring.ingestionKey 使用 Log Analytics 中的引入密钥的机密。

注意

如果尚未启用 Log Analytics:

  1. 演练创建 Log Analytics 工作区快速入门。
  2. 了解在何处可以找到 Log Analytics 代理设置

后续步骤