你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍如何使用单节点或双节点群集准备 Linux,并假定 你已满足先决条件。
使用 Azure Arc 启用的 AKS 准备 Linux
如果在已启用 Azure Arc 的 AKS 的 Linux 上运行单节点群集或双节点群集,则无需执行任何其他步骤。
使用 AKS 边缘软件包准备 Linux
本部分介绍在运行单节点群集或双节点群集时,如何使用 AKS Edge Essentials 配置 Linux。
若要使 Edge Essentials 支持 Azure Arc 启用的 Azure IoT作和 Azure 容器存储,必须修改 Kubernetes 主机以支持更多内存。 如果你预计 Kubernetes 使用需要更多的资源,此时你还可以增加 vCPU 和磁盘的分配。
首先按照 此处的操作指南进行操作。 快速入门使用默认配置,应避免这样做。
遵循 步骤 1:单台计算机配置参数,在工作目录中有一个名为 aksedge-config.json的文件。 在记事本或其他文本编辑器中打开此文件:
"SchemaVersion": "1.11", "Version": "1.0", "DeploymentType": "SingleMachineCluster", "Init": { "ServiceIPRangeSize": 0 }, "Machines": [ { "LinuxNode": { "CpuCount": 4, "MemoryInMB": 4096, "DataSizeInGB": 10, } } ]增加
MemoryInMB至少到 16384 和DataSizeInGB至 40G。 将ServiceIPRangeSize设置为 15。 如果打算运行许多 POD,也可以增加CpuCount。 例如:"Init": { "ServiceIPRangeSize": 15 }, "Machines": [ { "LinuxNode": { "CpuCount": 4, "MemoryInMB": 16384, "DataSizeInGB": 40, } } ]继续执行从 创建单个计算机群集开始的剩余步骤。 接下来, 将 AKS Edge Essentials 群集连接到 Arc。
检查并安装本地路径预配器存储(如果尚未安装)。 通过运行以下 cmdlet 检查节点上是否已提供本地路径存储类:
kubectl get StorageClass如果本地路径存储类不可用,请运行以下命令:
kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/storage/local-path-provisioner/local-path-storage.yaml注释
local-Path-Provisioner 和 Busybox 映像不由Microsoft维护,并且是从 Rancher Labs 存储库拉取的。 Local-Path-Provisioner 和 BusyBox 仅可用作 Linux 容器映像。
如果已正确配置所有内容,应会看到以下输出:
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE local-path (default) rancher.io/local-path Delete WaitForFirstConsumer false 21h如果有多个磁盘并想要重定向路径,请使用:
kubectl edit configmap -n kube-system local-path-config运行以下命令以确定你是否将
fs.inotify.max_user_instances设置为 1024:Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "sysctl fs.inotify.max_user_instances运行此命令后,如果输出小于 1024,请运行以下命令以增加最大文件数:
Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf && sudo sysctl -p"
使用 Ubuntu 准备 Linux
本节描述了如何在Ubuntu上准备Linux,以用于运行单节点或双节点集群。
运行以下命令以确定你是否将
fs.inotify.max_user_instances设置为 1024:sysctl fs.inotify.max_user_instances运行此命令后,如果输出小于 1024,请运行以下命令以增加最大文件数并重新加载 sysctl 设置:
echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf sudo sysctl -p
使用其他平台准备 Linux
可用的平台选项是Microsoft验证的生产型环境。 这些平台不一定是 Azure Arc 启用的 Azure 容器存储能够运行的唯一环境。 在任何满足已启用 Azure Arc 的 Kubernetes 系统要求的已启用 Arc 的 Kubernetes 群集上,Azure 容器存储都可以运行。 如果在未列出的环境中运行,下面是一些建议,以增加成功安装的可能性:
运行以下命令以增加用户监视和实例限制:
echo fs.inotify.max_user_instances=8192 | sudo tee -a /etc/sysctl.conf echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf sudo sysctl -p运行以下命令以增加文件描述符限制以提高性能:
echo fs.file-max = 100000 | sudo tee -a /etc/sysctl.conf sudo sysctl -p运行以下命令以安装本地路径预配程序:
kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/storage/local-path-provisioner/local-path-storage.yaml