使用已启用 Azure Arc 的数据服务实现混合计算
已启用 Azure Arc 的数据服务是一项使用 Kubernetes 平台提供混合数据功能和托管服务的订阅服务。 以下已启用 Azure Arc 的数据服务可用:
- 已启用 Azure Arc 的 SQL 托管实例
- 已启用 Azure Arc 的 PostgreSQL 服务器(预览版)
了解构成已启用 Azure Arc 的数据服务的各种组件的方法之一是查看体系结构。
Kubernetes 和基础结构
已启用 Azure Arc 的数据服务体系结构都起始于你选择的基础结构和 Kubernetes 平台。 支持几种不同的 Kubernetes 发行版,包括:
- Azure Kubernetes 服务 (AKS)
- Azure Stack (HCI) 上的 Azure Kubernetes 服务
- Azure RedHat OpenShift (ARO)
- OpenShift Container Platform (OCP)
- AWS 弹性 Kubernetes 服务 (EKS)
- Google Cloud Kubernetes Engine (GKE)
- 开源上游 Kubernetes
在部署已启用 Azure Arc 的数据服务之前,应仔细规划基础结构和 Kubernetes 的资源需求。 可以在 Microsoft 文档的规划页面中找到规划指南。
Microsoft 已与多个行业合作伙伴合作,以验证特定的基础结构和 Kubernetes 解决方案。 有关详细信息,请参阅已启用 Azure Arc 的数据服务验证计划。
已启用 Azure Arc 的数据服务部署为一组基于 Kubernetes 节点中的 Microsoft Container Registry (MCR) 容器映像的 Pod。 所有服务都使用 Kubernetes 平台的关键组件之一,即 Kubernetes API。
连接模式
在部署已启用 Azure Arc 的数据服务组件之前,应确定要使用的组件。 可以在以下连接模式之间进行选择:
直接连接模式
使用直接连接模式(当前处于预览状态)时,用户可以将 Azure 资源管理器与 Azure 门户配合使用来部署和管理已启用 Azure Arc 的数据服务。 Azure 基于角色的访问控制 (RBAC) 可用于安全身份验证和控制。 此外,清单、日志、指标和账单信息会自动发送到 Azure。
间接连接模式
使用间接连接模式时,已启用 Azure Arc 的数据服务的所有部署和管理操作都使用 Azure 命令行界面 (CLI) 和 arcdata 扩展来完成。 或者,使用 kubectl 或 Azure Data Studio 等工具来完成。 这些工具会直接与 Kubernetes API 交互,以管理已启用 Azure Arc 的数据服务。 使用间接连接模式时,并不总是需要连接到 Azure。 可以使用 Azure CLI 手动导出清单和账单并将其上传到 Azure。 可以选择将日志和指标上传到 Azure Monitor。
部署后,Azure CLI、kubectl 和 Azure Data Studio 可以与 Kubernetes API 交互,以在直接和间接连接模式下管理已启用 Azure Arc 的数据服务。
可以在有关连接性的 Microsoft 文档中详细了解连接模式。
Azure Arc 数据控制器
部署所选的 Kubernetes 平台后,将首先部署 Azure Arc 数据控制器。 Azure Arc 数据控制器是一系列 Kubernetes Pod,它们使用 Kubernetes API 和自定义资源定义 (CRD) 提供已启用 Azure Arc 的数据服务的协调和业务流程。
可以使用 Azure 门户以直接连接模式部署 Azure Arc 数据控制器。 若要使用直接连接模式进行部署,必须先使用已启用 Azure Arc 的 Kubernetes 连接 Kubernetes 群集。 此连接在 Kubernetes 群集上部署 Azure Arc 代理并将其连接到 Azure。 Azure Arc 代理在直接连接模式下用于协调 Kubernetes 群集中的 Azure 资源管理器请求,并上传由 Azure Arc 数据控制器收集的清单、账单、日志和指标。 可以在有关如何连接到 Azure Arc 的 Microsoft 文档中详细了解如何连接 Kubernetes 群集。
可以使用 az CLI(使用 arcdata 扩展)、kubectl 或 Azure Data Studio 以间接连接模式部署数据控制器。
已启用 Azure Arc 的数据服务
成功部署 Azure Arc 数据控制器后,现在可以部署已启用 Azure Arc 的 SQL 托管实例或已启用 Azure Arc 的 PostgreSQL 服务器(预览版)。
已启用 Azure Arc 的数据服务基于 Kubernetes 自定义资源定义 (CRD)。 CRD 允许 Arc 数据控制器识别 Kubernetes API 请求,以部署和配置已启用 Azure Arc 的数据服务。
已启用 Azure Arc 的 SQL 托管实例
已启用 Azure Arc 的 SQL 托管实例是一个 Kubernetes StatefulSet Pod,为其提供内置的基本高可用性。 该 Pod 包含用于 SQL Server 实例、指标和日志收集的容器。 SQL Server 实例容器包含用于帮助管理功能的 SQL Server 引擎和代理。
在直接连接模式下,可以使用 Azure 门户部署和管理已启用 Azure Arc 的 SQL 托管实例。 在间接连接模式下,可以使用 Azure CLI(使用 arcdata 扩展)、kubectl 或 Azure Data Studio。
统一的 Azure 体验
使用直接连接模式时,可以通过 Azure 门户使用 Azure 资源管理器管理已启用 Azure Arc 的数据服务。 例如,可以在 Azure 门户中部署已启用 Azure Arc 的 SQL 托管实例。 Azure Arc 资源提供程序与 Kubernetes 群集中的 Azure Arc 代理和 Azure Arc 数据控制器协调请求以完成部署。 此外,Azure Arc 代理自动使用 Azure Arc 数据控制器收集的清单、指标、日志和账单,以上传到 Azure。
使用间接连接模式时,可以手动使用 Azure CLI 导出和上传由 Azure Arc 数据控制器收集的清单、指标、日志和账单。 Azure 门户可用于查看已部署的已启用 Azure Arc 的数据服务和相应的使用情况、账单、指标和日志。
连接和管理数据服务
部署已启用 Azure Arc 的数据服务后,可以使用兼容工具或客户端驱动程序来连接、查询和管理这些服务。 SQL Server Management Studio (SSMS) 和 Azure Data Studio (ADS) 是用于查询和管理已启用 Azure Arc 的 SQL 托管实例的工具示例。