简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

使用 Azure 受管磁盘设置 Microsoft Azure

在使用 Astra Control Service 管理 Azure Kubernetes Service 集群之前,需要执行一些步骤来准备 Microsoft Azure 订阅。如果您计划使用 Azure 托管磁盘作为存储后端,请按照以下说明进行操作。

快速开始设置 Azure

按照以下步骤快速入门,或者向下滚动到其余部分以了解完整详细信息。

查看 Azure Kubernetes Service 的 Astra Control Service 要求

确保集群运行状况良好且运行的是 Kubernetes 1.21.x 到 1.23 版,节点池已联机且运行的是 * Linux * 等。 了解有关此步骤的更多信息

注册 Microsoft Azure

创建 Microsoft Azure 帐户。 了解有关此步骤的更多信息

创建 Azure 服务主体

创建具有 " 贡献者 " 角色的 Azure 服务主体。 了解有关此步骤的更多信息

配置容器存储接口( CSI )驱动程序详细信息

您需要配置 Azure 订阅和集群以使用 CSI 驱动程序。 了解有关此步骤的更多信息

Azure Kubernetes Service 集群要求

Kubernetes 集群必须满足以下要求,才能通过 Astra Control Service 发现和管理它。

Kubernetes 版本

集群必须运行 Kubernetes 1.21.x 至 1.23 版。

映像类型

所有节点池的映像类型必须为 Linux 。

集群状态

集群必须运行状况良好,并且至少有一个联机辅助节点,并且没有处于故障状态的辅助节点。

Azure 区域

作为最佳实践,您应选择一个支持 Azure NetApp Files 的区域,即使您不将其用作存储后端也是如此。这样,如果性能要求发生变化,将来可以更轻松地将 Azure NetApp Files 用作存储后端。 "按区域查看 Azure 产品"

外部卷快照控制器

集群必须安装 CSI 卷快照控制器。默认情况下,此控制器从 K8s 1.21 版开始安装,但您需要检查运行 1.19 和 1.20 版的集群。 "了解有关用于按需卷快照的外部快照控制器的更多信息"

CSI 驱动程序

集群必须安装适当的 CSI 驱动程序。

注册 Microsoft Azure

如果您没有 Microsoft Azure 帐户,请先注册 Microsoft Azure 。

步骤
  1. 转至 "Azure 订阅页面" 订阅 Azure 服务。

  2. 选择一个计划并按照说明完成订阅。

创建 Azure 服务主体

Astra 控制服务需要分配有贡献者角色的 Azure 服务主体。Astra 控制服务使用此服务主体来代表您促进 Kubernetes 应用程序数据管理。

服务主体是指专为应用程序,服务和工具而创建的身份。为服务主体分配角色将限制对特定 Azure 资源的访问。

按照以下步骤使用 Azure 命令行界面创建服务主体。您需要将输出保存在 JSON 文件中,并稍后将其提供给 Astra Control Service 。 "有关使用 CLI 的详细信息,请参见 Azure 文档"

以下步骤假定您有权创建服务主体,并且计算机上已安装 Microsoft Azure SDK ( AZ 命令)。

要求
  • 服务主体必须使用常规身份验证。不支持证书。

  • 必须为服务主体授予对您的 Azure 订阅的贡献者或所有者访问权限。

  • 您为范围选择的订阅或资源组必须包含 AKS 集群和您的 Azure NetApp Files 帐户。

步骤
  1. 确定 AKS 集群所在的订阅和租户 ID (这些集群是您要在 Astra Control Service 中管理的集群)。

    az configure --list-defaults
    az account list --output table
  2. 根据您使用的是整个订阅还是资源组,执行以下操作之一:

    • 创建服务主体,分配 " 贡献者 " 角色,并指定集群所在的整个订阅的范围。

      az ad sp create-for-rbac --name service-principal-name --role contributor --scopes /subscriptions/SUBSCRIPTION-ID
    • 创建服务主体,分配 " 贡献者 " 角色,并指定集群所在的资源组。

      az ad sp create-for-rbac --name service-principal-name --role contributor --scopes /subscriptions/SUBSCRIPTION-ID/resourceGroups/RESOURCE-GROUP-ID
  3. 将生成的 Azure 命令行界面输出存储为 JSON 文件。

    您需要提供此文件,以便 Astra Control Service 能够发现您的 AKS 集群并管理 Kubernetes 数据管理操作。 "了解如何在 Astra Control Service 中管理凭据"

  4. 可选:将订阅 ID 添加到 JSON 文件中,以便 Astra 控制服务在您选择此文件时自动填充此 ID 。

    否则,您需要在出现提示时在 Astra Control Service 中输入订阅 ID 。

    • 示例 *

    {
      "appId": "0db3929a-bfb0-4c93-baee-aaf8",
      "displayName": "sp-example-dev-sandbox",
      "name": "http://sp-example-dev-sandbox",
      "password": "mypassword",
      "tenant": "011cdf6c-7512-4805-aaf8-7721afd8ca37",
      "subscriptionId": "99ce999a-8c99-99d9-a9d9-99cce99f99ad"
    }
  5. 可选:测试您的服务主体。根据您的服务主体使用的范围,从以下示例命令中进行选择。

    订阅范围
    az login --service-principal --username APP-ID-SERVICEPRINCIPAL --password PASSWORD --tenant TENANT-ID
    az group list --subscription SUBSCRIPTION-ID
    az aks list --subscription SUBSCRIPTION-ID
    az storage container list --subscription SUBSCRIPTION-ID
    资源组范围
    az login --service-principal --username APP-ID-SERVICEPRINCIPAL --password PASSWORD --tenant TENANT-ID
    az aks list --subscription SUBSCRIPTION-ID --resource-group RESOURCE-GROUP-ID

配置容器存储接口( CSI )驱动程序详细信息

要将 Azure 受管磁盘与 Astra Control Service 结合使用,您首先需要为低于 1.21 的 Kubernetes 版本配置 CSI 卷快照功能,并安装所需的 CSI 驱动程序。

为 Kubernetes 1.19 安装 CSI 卷快照控制器

如果您使用的是 Kubernetes 1.19 版,请按照以下说明安装卷快照控制器。

步骤
  1. 安装卷快照 CRD 。

    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/release-3.0/client/config/crd/snapshot.storage.k8s.io_volumesnapshotclasses.yaml
    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/release-3.0/client/config/crd/snapshot.storage.k8s.io_volumesnapshotcontents.yaml
    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/release-3.0/client/config/crd/snapshot.storage.k8s.io_volumesnapshots.yaml
  2. 创建快照控制器。

    如果您希望 Snapshot 控制器位于特定命名空间中,请先下载并编辑以下文件,然后再应用它们。

    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/release-3.0/deploy/kubernetes/snapshot-controller/rbac-snapshot-controller.yaml
    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/release-3.0/deploy/kubernetes/snapshot-controller/setup-snapshot-controller.yaml

为 Kubernetes 1.20 安装 CSI 卷快照控制器

如果您使用的是 Kubernetes 版本 1.20 ,请按照以下说明安装卷快照控制器。

步骤
  1. 安装卷快照 CRD 。

    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/v4.0.0/client/config/crd/snapshot.storage.k8s.io_volumesnapshotclasses.yaml
    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/v4.0.0/client/config/crd/snapshot.storage.k8s.io_volumesnapshotcontents.yaml
    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/v4.0.0/client/config/crd/snapshot.storage.k8s.io_volumesnapshots.yaml
  2. 创建快照控制器。

    如果您希望 Snapshot 控制器位于特定命名空间中,请先下载并编辑以下文件,然后再应用它们。

    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/v4.0.0/deploy/kubernetes/snapshot-controller/rbac-snapshot-controller.yaml
    kubectl apply -f https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/v4.0.0/deploy/kubernetes/snapshot-controller/setup-snapshot-controller.yaml

在 Azure 订阅中启用 CSI 驱动程序功能

在安装 CSI 驱动程序之前,您需要在 Azure 订阅中启用 CSI 驱动程序功能。

步骤
  1. 打开 Azure 命令行界面。

  2. 运行以下命令以注册驱动程序:

    az feature register --namespace "Microsoft.ContainerService" --name "EnableAzureDiskFileCSIDriver"
  3. 运行以下命令以确保更改已被禁止:

    'az provider register -n Microsoft.ContainerService

    您应看到类似于以下内容的输出:

{
"id": "/subscriptions/b200155f-001a-43be-87be-3edde83acef4/providers/Microsoft.Features/providers/Microsoft.ContainerService/features/EnableAzureDiskFileCSIDriver",
"name": "Microsoft.ContainerService/EnableAzureDiskFileCSIDriver",
"properties": {
   "state": "Registering"
},
"type": "Microsoft.Features/providers/features"
}

在 Azure Kubernetes Service 集群中安装 Azure 托管磁盘 CSI 驱动程序

您可以安装 Azure CSI 驱动程序以完成准备工作。

步骤
  1. 转至 "Microsoft CSI 驱动程序文档"

  2. 按照说明安装所需的 CSI 驱动程序。