|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
|
这是尚未发布的文档。 SUSE® Storage 1.12 (Dev). |
节点选择器
如果您想限制 Longhorn 组件仅在特定节点集上运行,可以为所有 Longhorn 组件设置节点选择器。 例如,您想在一个同时具有 Linux 节点和 Windows 节点的集群中安装 Longhorn,但 Longhorn 不能在 Windows 节点上运行。 在这种情况下,您可以设置节点选择器以限制 Longhorn 仅在 Linux 节点上运行。
有关节点选择器如何工作的更多信息,请参阅 官方 Kubernetes 文档。
为 Longhorn 设置节点选择器
Longhorn 由用户部署的组件(例如,Longhorn 管理器、Longhorn 驱动程序和 Longhorn UI)和系统管理的组件(例如,实例管理器、备份镜像管理器、共享管理器、CSI 驱动程序和引擎镜像)组成。 您需要为这两种类型的组件设置节点选择器。请参见下面的更多详细信息。
在安装 Longhorn 时设置节点选择器
-
为用户部署的组件(例如,Longhorn 管理器、Longhorn 驱动程序和 Longhorn UI)设置节点选择器。
-
如果您通过 Rancher 安装 Longhorn,您必须将以下参数复制并粘贴到 Rancher UI 上的 YAML 中(在安装过程中点击 Edit as YAML)以将值应用于所有用户部署的组件。
global: nodeSelector: label-key1: "label-value1" -
您还可以为每个用户部署的组件指定节点选择器,它将覆盖全局设置。
longhornManager: nodeSelector: label-key1: "label-value1" longhornDriver: nodeSelector: label-key1: "label-value1" longhornUI: nodeSelector: label-key1: "label-value1" -
如果您使用
kubectl来应用 部署 YAML,则需要修改 Longhorn 管理器、Longhorn UI 和 Longhorn 驱动程序部署者的节点选择器部分。 然后应用 YAML 文件。 -
如果您使用 Helm 安装 Longhorn,可以在安装 Helm chart 之前更改
values.yaml文件中的global.nodeSelector、longhornManager.nodeSelector、longhornUI.nodeSelector、longhornDriver.nodeSelector的 Helm 值。
-
-
为系统管理的组件(例如,实例管理器、备份镜像管理器、共享管理器、CSI 驱动程序和引擎镜像)设置节点选择器。
按照 自定义默认设置 通过更改
system-managed-components-node-selector默认设置的值来设置节点选择器。由于 Rancher 2.5.x 的限制,如果您使用 Rancher UI 安装 Longhorn,您需要点击
Edit As Yaml并将设置systemManagedComponentsNodeSelector添加到defaultSettings。例如:
defaultSettings: systemManagedComponentsNodeSelector: "label-key1:label-value1"
在 Longhorn 安装后设置节点选择器
警告:
由于所有 Longhorn 组件将被重启,Longhorn 系统暂时不可用。
当所有 Longhorn 卷被分离时,自定义设置会立即应用于系统管理的组件(例如,实例管理器、CSI 驱动程序和引擎镜像)。
当一个或多个 Longhorn 卷仍然附加时,只有在没有引擎和副本实例运行时,自定义设置才会应用于实例管理器。在分离剩余卷后,您需要重新配置。或者,您可以等待下一个设置同步,这将在一小时内发生。
在节点选择器设置更新和 Longhorn 组件重启时,请勿操作 Longhorn 系统。
-
准备
-
为了确保您的首选设置立即应用,请在应用之前停止所有工作负载并分离所有 Longhorn 卷。
-
-
为用户部署的组件(例如,Longhorn 管理器、Longhorn 驱动程序和 Longhorn UI)设置节点选择器。
-
如果您通过 Rancher 安装 Longhorn,您必须将以下参数复制并粘贴到 Rancher UI 上的 YAML 中(在升级期间点击 Edit as YAML)以将值应用于所有用户部署的组件。
global: nodeSelector: label-key1: "label-value1" -
您还可以为每个用户部署的组件指定节点选择器,它将覆盖全局设置。
longhornManager: nodeSelector: label-key1: "label-value1" longhornDriver: nodeSelector: label-key1: "label-value1" longhornUI: nodeSelector: label-key1: "label-value1" -
如果您使用
kubectl来应用 部署 YAML,则需要修改 Longhorn 管理器、Longhorn UI 和 Longhorn 驱动程序部署者的节点选择器部分。 然后重新应用 YAML 文件。 -
如果您使用 Helm 安装 Longhorn,可以在
values.yaml文件中更改global.nodeSelector、longhornManager.nodeSelector、longhornUI.nodeSelector、longhornDriverDeployer.nodeSelector的 Helm 值,然后运行helm upgrade以升级到新版本的 Helm chart。
-
-
为系统管理的组件(例如,实例管理器、备份镜像管理器、共享管理器、CSI 驱动程序和引擎镜像)设置节点选择器。
节点选择器设置可以在 Longhorn UI 的 下找到。
-
清理
如果您以某种方式更改节点选择器,使得 Longhorn 无法在当前运行的某些节点上运行, 这些节点在此过程后将变为
down状态。验证这些节点上没有剩余副本。 禁用这些节点的调度,并在 Longhorn UI 中删除它们。