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

准备 Linux for Edge Volumes

本文介绍如何使用 Azure Arc 启用的 AKS、边缘软件包或 Ubuntu 来准备 Linux for Edge Volumes。

注意

支持的最低 Linux 内核版本为 5.1。 目前,6.4 和 6.2 存在已知问题。

先决条件

注意

Azure Arc 启用的 Azure 容器存储仅在以下区域提供:美国东部、美国东部 2、美国西部、美国西部 2、美国西部 3、北欧、西欧。

卸载 Azure Arc 扩展启用的 Azure 容器存储的先前实例

如果以前安装了早于 2.1.0-preview 的 Azure Arc 启用的 Azure 容器存储版本,则必须卸载该先前实例才能安装较新版本。 如果安装了 1.2.0-preview 版本或更早版本,请按照以下说明操作2.1.0-preview 之后的版本可升级,不需要卸载。

  1. 若要删除旧版本的扩展,必须清理包含对旧版扩展的引用的 Kubernetes 资源。 任何挂起的资源都可能会延迟对扩展的清理。 至少有两种方法可以清理这些资源:使用 kubectl delete <resource_type> <resource_name>,或通过“取消应用”用于创建资源的 YAML 文件。 需要删除的资源通常是 Pod、引用的 PVC 和子卷 CRD(如果已配置 Cloud Ingest Edge Volume)。 或者,可以使用以下命令按指定顺序将以下四个 YAML 文件传递给 kubectl delete -f。 必须使用你的信息更新这些变量:

    • YOUR_DEPLOYMENT_FILE_NAME_HERE:添加部署文件名。 在本文中的示例中,使用的文件名为 deploymentExample.yaml。 如果已创建多个部署,则必须在单独的行中删除每个部署。
    • YOUR_PVC_FILE_NAME_HERE:添加永久性卷声明文件名。 在本文中的示例中,如果已使用 Cloud Ingest Edge Volume,则使用的文件名为 cloudIngestPVC.yaml。 如果使用本地共享的 Edge Volume,则使用的文件名为 localSharedPVC.yaml。 如果已创建多个 PVC,则必须在单独的行中删除每个 PVC。
    • YOUR_EDGE_SUBVOLUME_FILE_NAME_HERE:添加 Edge 子卷文件名。 在本文中的示例中,使用的文件名为 edgeSubvolume.yaml。 如果已创建多个子卷,则必须在单独的行中删除每个子卷。
    • YOUR_EDGE_STORAGE_CONFIGURATION_FILE_NAME_HERE:在此处添加 Edge 存储配置文件名。 在本文中的示例中,使用的文件名为 edgeConfig.yaml
    kubectl delete -f "<YOUR_DEPLOYMENT_FILE_NAME_HERE.yaml>"
    kubectl delete -f "<YOUR_PVC_FILE_NAME_HERE.yaml>"   
    kubectl delete -f "<YOUR_EDGE_SUBVOLUME_FILE_NAME_HERE.yaml>"
    kubectl delete -f "<YOUR_EDGE_STORAGE_CONFIGURATION_FILE_NAME_HERE.yaml>"
    
  2. 在上一步中删除部署、PVC、Edge 子卷和 Edge 存储配置的文件后,可以使用以下命令卸载扩展。 将 YOUR_RESOURCE_GROUP_NAME_HEREYOUR_CLUSTER_NAME_HEREYOUR_EXTENSION_NAME_HERE 分别替换为你的信息:

    az k8s-extension delete --resource-group YOUR_RESOURCE_GROUP_NAME_HERE --cluster-name YOUR_CLUSTER_NAME_HERE --cluster-type connectedClusters --name YOUR_EXTENSION_NAME_HERE
    

已连接 Arc 的 Kubernetes 群集

这些说明假定你拥有已连接 Arc 的 Kubernetes 群集。 若要将现有 Kubernetes 集群连接到 Azure Arc,请查看这些说明

若要将 Azure Arc 启用的 Azure 容器存储与 Azure IoT 操作配合使用,请遵循有关为 Azure IoT 操作创建群集的说明

单节点和多节点群集

单节点群集在设置和最低资源要求方面非常简单,因此通常用于开发或测试目的。 这些群集为开发人员提供了一个轻量级的、简单的环境来试验 Kubernetes,且免去了多节点设置的复杂性。 此外,在 CPU、内存和存储等资源受到限制的情况下,单节点群集更为实用。 它易于设置且对资源的要求最少,因此是资源受限的环境中的合适选择。

但是,单节点群集存在限制,主要表现为缺少一些功能,包括缺乏高可用性、容错、可伸缩性和性能。

由于多节点 Kubernetes 配置的诸多功能(包括高可用性、容错、可伸缩性和性能),它通常用于生产、过渡或大规模方案。 多节点群集还会带来挑战和权衡,包括复杂性、开销、成本和效率方面的考量。 例如,设置和维护多节点群集需要额外的知识、技能、工具和资源(网络、存储、计算)。 该群集必须处理节点之间的协调和通信,这可能导致延迟和错误。 此外,与运行节点群集相比,运行多节点群集需要更多资源且成本更高。 要维持群集和应用程序的效率和性能,优化节点之间的资源使用至关重要。

总之,单节点 Kubernetes 群集可能适用于开发、测试和资源约束的环境。 多节点群集更适合生产部署、高可用性、可伸缩性以及需要分布式应用程序的方案。 此选择最终取决于你的具体需求和部署目标。

最低硬件要求

单节点或 2 节点群集

  • 推荐 Standard_D8ds_v5 VM
  • 各节点的等效规范:
    • 4 个 CPU
    • 16 GB RAM

多节点群集

  • 推荐 Standard_D8as_v5 VM
  • 各节点的等效规范:
    • 8 个 CPU
    • 32 GB RAM

32 GB RAM 充当缓冲区;但是,16 GB RAM 应该足够了。 边缘软件包配置需要 8 个 CPU(每个节点 10 GB RAM),这使得 16 GB RAM 成为最低要求。

最低存储要求

Edge Volumes 要求

使用容错存储选项时,Edge Volumes 会从容错存储池中分配磁盘空间,该池由群集中的每个节点导出的存储组成。

存储池配置为使用三向复制来确保容错。 预配 Edge Volume 时,它会从存储池中分配磁盘空间,并在其中 3 个副本上分配存储。

例如,在每个节点具有 20 GB 磁盘空间的 3 节点群集中,群集的存储池为 60 GB。 但是,由于复制,其有效存储大小为 20 GB。

预配请求大小为 10 GB 的 Edge Volume 时,它会分配保留的系统卷(静态大小为 1 GB)和数据卷(大小为请求的卷大小,例如 10 GB)。 保留的系统卷在存储池中占用 3 GB(3 x 1 GB)的磁盘空间,数据卷在存储池中占用 30 GB(3 x 10 GB)的磁盘空间,总共占用 33 GB。

Cache Volumes 要求

Cache Volumes 要求的存储为每个节点至少 4 GB。 例如,如果有一个 3 节点群集,则至少需要 12 GB 的存储。

后续步骤