本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。

这是尚未发布的文档。 SUSE® Storage 1.12 (Dev).

配置默认节点和磁盘设置

此功能允许用户使用 Kubernetes 标签和注释,在 SUSE Storage 中为新添加的节点自定义默认磁盘和节点配置,而不是使用 SUSE Storage 用户界面或 API。

自定义磁盘和节点的默认配置对于扩展集群非常有用,因为如果节点包含多个磁盘,或者新节点的磁盘配置不同,则无需手动为每个新节点配置 SUSE Storage。

SUSE Storage 不会将节点标签或注释与当前 Longhorn 节点磁盘或标签保持同步。SUSE Storage 也不会在创建默认磁盘或标签后将节点磁盘或标签与节点、标签或注释保持同步。

为新节点添加节点标签

当节点没有标签时,您可以使用节点注释设置节点标签,作为使用 SUSE Storage 用户界面或 API 的替代方案。

  1. 扩展 Kubernetes 集群。新添加的节点没有节点标签。

  2. 为新的 Kubernetes 节点添加注释,以指定默认节点标签应是什么。注释格式为:

    node.longhorn.io/default-node-tags: <node tag list with JSON string format>

    例如:

    node.longhorn.io/default-node-tags: '["fast","storage"]'
  3. 等待 SUSE Storage 自动同步节点标签。如果节点标签列表最初为空,SUSE Storage 将使用标签列表更新节点,您将看到该节点的标签根据注释进行更新。如果节点已经有标签,您将不会看到标签列表有任何变化。

为新节点自定义默认磁盘

SUSE Storage 使用 Create Default Disk on Labeled Nodes 设置来启用默认磁盘自定义。

如果该设置被禁用,SUSE Storage 将在所有新节点上使用 setting.default-data-path 创建默认磁盘。

如果该设置被启用,SUSE Storage 将根据节点的标签值 node.longhorn.io/create-default-disk 决定是否创建默认磁盘。

  • 如果节点的标签值为 true,SUSE Storage 将在该节点上使用 settings.default-data-path 创建默认磁盘。如果节点已经有现有磁盘,SUSE Storage 将不会更改任何内容。

  • 如果节点的标签值为`config`,SUSE Storage将检查`node.longhorn.io/default-disks-config`注释并根据其创建默认磁盘。如果没有注释,或者注释无效,或者标签值无效,SUSE Storage将不会更改任何内容。

标签的值仅在设置启用时生效。

如果未设置 create-default-disk 标签,当设置启用时,默认磁盘不会在新节点上自动创建。

注释中描述的配置仅在节点上没有现有磁盘或标签时生效。

如果标签或注释未通过验证,则整个注释将被忽略。

先决条件

必须启用 SUSE Storage 设置 Create Default Disk on Labeled Nodes

  1. 向 Kubernetes 集群添加新节点。

  2. 将标签添加到节点。SUSE Storage 依赖于标签来决定如何自定义默认磁盘:

    node.longhorn.io/create-default-disk: 'config'
  3. 然后将注释添加到节点。注释用于指定默认磁盘的配置。格式为:

    node.longhorn.io/default-disks-config: <disks configuration with JSON string format>

    例如,可以在注释中指定以下磁盘配置:

    node.longhorn.io/default-disks-config:
    '[
        {
            "path":"/mnt/disk1",
            "allowScheduling":true
        },
        {
            "name":"fast-ssd-disk",
            "path":"/mnt/disk2",
            "allowScheduling":false,
            "storageReserved":10485760,
            "tags":[
                "ssd",
                "fast"
            ]
        }
    ]'

    如果为不同的磁盘指定相同的名称,则该配置将被视为无效。

  4. 等待 SUSE Storage 根据注释自动创建自定义的默认磁盘。

使用多个磁盘启动SUSE Storage。

  1. 在启动SUSE Storage之前,将标签添加到所有节点。

    node.longhorn.io/create-default-disk: 'config'
  2. 然后将磁盘配置注释添加到所有节点:

    node.longhorn.io/default-disks-config: '[ { "path":"/var/lib/longhorn", "allowScheduling":true
      }, { "name":"fast-ssd-disk", "path":"/mnt/extra", "allowScheduling":false, "storageReserved":10485760,
      "tags":[ "ssd", "fast" ] }]'
  3. 使用SUSE Storage部署`create-default-disk-labeled-nodes: true`,请查看这里以自定义SUSE Storage的默认设置。