适用于:开发人员 | 高级
Helm 是一种开放源打包工具,有助于安装和管理 Kubernetes 应用程序的生命周期。 Helm 允许管理 Kubernetes 图表,这些图表是预配置的 Kubernetes 资源的包。
本文介绍如何使用 Helm 将 Azure API 管理的自承载网关组件部署到 Kubernetes 群集。
先决条件
- 创建 Azure Kubernetes 群集,或有权访问现有群集。
小窍门
单节点群集非常适用于开发和评估目的。 将本地或云中的 Kubernetes 认证多节点群集用于生产工作负载。
- 创建 Azure API 管理实例。
- 在 API 管理实例中预配网关资源。
- 安装 Helm v3 或更高版本。
添加 Helm 存储库
使用以下命令将 Azure API 管理添加为新的 Helm 存储库。
helm repo add azure-apim-gateway https://azure.github.io/api-management-self-hosted-gateway/helm-charts/更新存储库以提取最新的 Helm 图表。
helm repo update通过列出所有可用图表来验证 Helm 配置。
helm search repo azure-apim-gateway以下示例显示了可用的图表。
NAME CHART VERSION APP VERSION DESCRIPTION azure-apim-gateway/azure-api-management-gateway 1.15.0 2.11.0 A Helm chart to deploy an Azure API Management ...
将自承载网关部署到 Kubernetes
小窍门
以下步骤将自承载网关部署到 Kubernetes,并使用网关访问令牌(身份验证密钥)对 API Management 实例启用身份验证。 还可以使用 Microsoft Entra ID 将自托管网关部署到 Kubernetes,并启用对 API 管理实例的身份验证。 有关详细信息,请参阅 自承载网关身份验证选项。
在 Azure 门户中,导航到 API 管理实例。
在边栏菜单中的 “部署和基础结构 ”下,选择 “自承载网关”。
选择要部署的自承载网关资源。
选择“部署”。
“令牌”文本框中的新令牌是使用默认“过期时间”和“机密密钥”值自动生成的。 根据需要调整任一或两者,然后选择“ 生成 ”以创建新令牌。
记下 令牌 和 配置网址。
使用 Helm 图表安装自托管网关。
helm install azure-api-management-gateway \ --set gateway.configuration.uri='<your configuration url>' \ --set gateway.auth.key='<your token>' \ azure-apim-gateway/azure-api-management-gateway执行命令。 该命令指示 Kubernetes 群集执行以下操作:
- 从 Microsoft Container Registry 下载自承载网关的映像并将其作为容器运行。
- 配置容器以公开 HTTP (8080) 和 HTTPS (8081) 端口。
重要
默认情况下,网关使用 ClusterIP 服务,并且仅在群集内部公开。 通过在安装过程中指定 Kubernetes 服务的类型,可以更改此内容。
例如,通过添加
--set service.type=LoadBalancer,可以通过负载均衡器将其暴露出来。