你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
开始使用服务连接器,将 Azure Kubernetes 服务 (AKS) 群集连接到数据库、存储帐户和其他 Azure 服务。 服务连接器简化了身份验证和配置,使你能够使用工作负荷标识或其他身份验证方法连接到资源。
本文提供 Azure 门户和 Azure CLI 的分步说明。 使用上面的选项卡选择首选方法。
先决条件
- 具有活动订阅的 Azure 帐户。 免费创建帐户。
- 服务连接器支持的区域中的 AKS 群集。 如果还没有 AKS 群集,请部署 AKS 群集。
- 创建和管理服务连接 所需的权限 。
- 具有活动订阅的 Azure 帐户。 免费创建帐户。
- 服务连接器支持的区域中的 AKS 群集。 如果还没有 AKS 群集,请部署 AKS 群集。
- 创建和管理服务连接 所需的权限 。
- Azure 存储帐户。 如果还没有帐户, 请创建一个 Azure 存储帐户。
在 Azure Cloud Shell 中使用 Bash 环境。 有关详细信息,请参阅 Azure Cloud Shell 入门。
如需在本地运行 CLI 参考命令,请安装 Azure CLI。 如果在 Windows 或 macOS 上运行,请考虑在 Docker 容器中运行 Azure CLI。 有关详细信息,请参阅如何在 Docker 容器中运行 Azure CLI。
如果使用的是本地安装,请使用 az login 命令登录到 Azure CLI。 若要完成身份验证过程,请遵循终端中显示的步骤。 有关其他登录选项,请参阅 使用 Azure CLI 向 Azure 进行身份验证。
出现提示时,请在首次使用时安装 Azure CLI 扩展。 有关扩展的详细信息,请参阅 使用和管理 Azure CLI 中的扩展。
运行 az version 以查找安装的版本和依赖库。 若要升级到最新版本,请运行 az upgrade。
- 本快速入门需要 Azure CLI 版本 2.30.0 或更高版本。 若要升级到最新版本,请运行
az upgrade。 如果使用 Azure Cloud Shell,则最新版本已安装。
初始设置
如果首次使用 Service Connector,请首先运行 命令 az provider register 以注册服务连接器和 Kubernetes 配置资源提供程序。
az provider register -n Microsoft.ServiceLinkeraz provider register -n Microsoft.KubernetesConfiguration小窍门
可以通过运行命令
az provider show -n "Microsoft.ServiceLinker" --query registrationState并az provider show -n "Microsoft.KubernetesConfiguration" --query registrationState检查这些资源提供程序是否已注册。(可选)使用 Azure CLI 命令获取 AKS 群集支持的目标服务列表。
az aks connection list-support-types --output table
在 AKS 群集中创建服务连接
使用服务连接器在 Azure Kubernetes 服务(AKS)群集与 Azure Blob 存储之间创建服务连接。 此示例演示如何连接到 Blob 存储,但可以对其他受支持的 Azure 服务使用相同的过程。
选择 Azure 门户顶部的 搜索资源、服务和文档(G +/) 搜索栏,键入 AKS,然后选择 Kubernetes 服务。
选择要连接到目标资源的 AKS 群集。
从服务菜单中选择 “设置>服务连接器 ”。 然后选择“创建”。
在 “基本信息 ”选项卡上,选择或输入以下设置。
设置 示例 说明 Kubernetes 命名空间 default 群集中需要进行连接的命名空间。 服务类型 存储 - Blob 目标服务类型。 如果没有 Microsoft Blob 存储,可以创建一个,或使用其他服务类型。 连接名称 my_connection 用于标识 AKS 群集与目标服务之间的连接的连接名称。 使用服务连接器提供的连接名称或选择自己的连接名称。 订阅 我的订阅 目标服务(要连接到的服务)的订阅。 默认值为此 AKS 群集的订阅。 存储帐户 my_storage_account 要连接到的目标存储帐户。 可供选择的目标服务实例因所选服务类型而异。 客户端类型 python 用于连接到目标服务的代码语言或框架。 选择“下一步: 身份验证”以选择身份验证方法。
选择“下一步: 网络”以配置对目标服务的网络访问,然后选择“配置防火墙规则以启用对目标服务的访问”。
注意
AKS 的服务连接器目前仅支持防火墙选项。 不支持专用链接和服务终结点。
选择“下一步: 查看 + 创建”,以查看提供的信息。 然后选择“创建”,以创建服务连接。 此作可能需要一分钟才能完成。
更新容器
在 AKS 群集和目标服务之间创建连接后,需要检索连接机密并将其部署到容器中。
在 Azure 门户中,导航到 AKS 群集资源,并转到 “设置>服务连接器”。
选择新创建的连接,然后选择“YAML 代码片段”。 此操作将打开一个面板,其中显示服务连接器生成的 YAML 文件示例。
若要将连接机密设置为容器中的环境变量,有两个选项:
使用提供的 YAML 示例代码片段直接创建部署。 该代码片段包含突出显示的部分,显示将作为环境变量插入的机密对象。 选择“应用”以继续使用此方法。
或者,在“资源类型”下,选择“Kubernetes 工作负载”,然后选择现有的 Kubernetes 工作负载。 此操作将新连接的机密对象设置为所选工作负载的环境变量。 选择工作负载后,选择“应用”。
运行 az aks connection create storage-blob 命令。 可以通过两种不同的方式运行此命令:
逐步生成新连接。
az aks connection create storage-blob \ --workload-identity <user-identity-resource-id>一次性生成新连接。 将占位符替换为你自己的信息:
<source-subscription>、、<source_resource_group>、<cluster>、<target-subscription><target_resource_group>、、<account>和<user-identity-resource-id>。az aks connection create storage-blob \ --source-id /subscriptions/<source-subscription>/resourceGroups/<source_resource_group>/providers/Microsoft.ContainerService/managedClusters/<cluster> \ --target-id /subscriptions/<target-subscription>/resourceGroups/<target_resource_group>/providers/Microsoft.Storage/storageAccounts/<account>/blobServices/default \ --workload-identity <user-identity-resource-id>
小窍门
如果没有 Blob 存储帐户,请运行 az aks connection create storage-blob --new --workload-identity 以创建一个帐户,并使用工作负荷标识将其连接到应用服务。
在 AKS 群集中查看服务连接
服务连接器会显示此群集中的现有连接。
选择“网络视图”,查看网络拓扑视图中的所有服务连接。
运行 az aks connection list 命令列出所有 Azure Spring Apps 预配的连接。
将占位符 <cluster-resource-group>替换为以下命令,并将 <cluster-name>以下命令中的信息替换为自己的信息。 还可以删除该 --output table 选项以查看有关连接的详细信息。
az aks connection list --resource-group <cluster-resource-group> --name <cluster-name> --output table
输出还显示连接的预配状态。