存储管理

存储类

概述

存储类(StorageClass)是 Kubernetes 中用于动态创建数据卷的配置模板,它定义了数据卷的属性、创建策略和所需的存储插件。

创建存储类

在ZStack Zaku主菜单,点击集群管理 > 存储管理 > 存储类。在存储类界面,点击创建存储类,弹出创建存储类界面。

支持以下两种创建方式:

  • YAML创建:输入存储类的Yaml,点击确定,即可创建。
  • 表单创建:基于本地存储池创建存储类,填写以下参数:
    • 名称:设置存储类的名称。命名规则:长度限制1-50个字符,只能包含小写字母、数字及分隔符(-),且必须以小写字母开头,数字或小写字母结尾。
    • 存储类型:本地存储。
      Note: 本地数据卷与所在节点绑定,不支持跨节点共享或迁移。本地存储不适用于纳管集群。
    • 存储池:点击选择存储池,根据存储模式和磁盘介质选择本地存储池。
      Note:
      • 异常、未知或扩容中的存储池不可用于创建存储类。
      • LVM模式支持数据卷扩容,Device模式不支持数据卷扩容。
    • 文件系统:选择通过该存储类创建的数据卷使用的文件系统,默认为ext4,也可选择xfs。ext4适合大多数场景,xfs适合大文件和高并发读写场景。
    • 回收策略:选择删除数据卷声明(PVC)后,持久卷及其存储资源的处理方式,默认为删除。
      • 删除(Delete):自动回收对应的持久卷及存储资源。
      • 保留(Retain):保留对应的持久卷和数据,需由管理员手动处理。
    配置完成后,点击确定,即可创建。
    Note: 通过表单创建的存储类采用延迟绑定(WaitForFirstConsumer),在容器组首次使用数据卷时完成绑定;访问模式为ReadWriteOnce,仅支持单节点读写。

管理存储类

在ZStack Zaku主菜单,点击集群管理 > 存储管理 > 存储类,进入存储类界面。

存储类支持以下操作:
操作 描述
创建存储类 创建一个新的存储类。
更新Yaml 通过Yaml方式对存储类进行更新。
Note: 本地存储类型的存储类仅支持查看Yaml,不支持更新。
查看Yaml 查看本地存储类型的存储类的Yaml配置。
存储类详情 点击存储类名称,查看存储类型、供应者、回收策略、卷绑定模式等基本信息,本地存储类还可查看文件系统。在数据卷页签可查看关联的数据卷,数据卷管理操作请参见管理数据卷。
删除存储类 将存储类删除。
Note:
  • 删除存储类前需确保集群内不存在基于该存储类创建的数据卷和持久卷(PersistentVolume)
  • 删除后,该存储类无法继续用于创建数据卷,如集群内无其他存储类,用户将无法创建数据卷,请谨慎操作。

本地存储

概述

本地存储将集群节点上的本地磁盘组织为存储池,通过存储类为工作负载提供持久化存储。

本地存储支持以下两种存储模式:

  • LVM:将节点上的磁盘组成卷组,按数据卷申请的容量分配存储空间,支持数据卷扩容。
  • Device:将整块磁盘分配给一个数据卷独占使用,不支持数据卷扩容。
Note:
  • admin和管理员可创建和管理本地存储,本地存储不适用于纳管集群。
  • 各节点的存储容量相互独立,本地数据卷与所在节点绑定,不支持跨节点共享或迁移。
  • 本地存储不提供多副本和故障自动恢复能力。节点或磁盘故障可能导致关联业务无法正常访问数据。

创建本地存储池

在ZStack Zaku主菜单,点击集群管理 > 存储管理 > 本地存储。在本地存储界面,选择集群,点击创建本地存储池,弹出创建本地存储池界面。

可参考以下示例输入相应内容:

  • 名称:设置本地存储池的名称。命名规则:长度限制1-50个字符,只能包含小写字母、数字及分隔符(-),且必须以小写字母开头,数字或小写字母结尾。集群内名称不可重复,创建后不可修改。
  • 简介:可选项,备注本地存储池相关信息,长度不超过256个字符。
  • 存储模式:选择本地磁盘的分配方式,支持LVM和Device。LVM按数据卷申请容量分配空间;Device将整块磁盘分配给一个数据卷独占使用。
    Note: 若提示卷组名称冲突,请修改存储池名称;如需清理原卷组,请先确认相关数据无需保留。
  • 磁盘介质:选择HDD或SSD。同一存储池使用相同的磁盘介质,HDD适合容量型存储场景,SSD适合对时延和读写性能要求较高的场景。
    Note: 同一集群、同一磁盘介质最多创建一个Device本地存储池。
  • 节点与磁盘:点击选择节点与磁盘,展开节点并选择要加入存储池的磁盘,点击确定。支持选择多个节点及每个节点上的多块磁盘。
    Note:
    • 节点需具有计算节点角色,节点状态为运行中,节点存储管理状态为正常。
    • 请选择与所选磁盘介质匹配、状态正常且未使用的非系统磁盘。没有可用磁盘时,可选择其他节点或修改磁盘介质。
    • 修改存储模式或磁盘介质后,需重新选择节点和磁盘。

配置完成后,点击确定,即可创建本地存储池。

管理本地存储

在ZStack Zaku主菜单,点击集群管理 > 存储管理 > 本地存储,进入本地存储界面,选择集群。

本地存储支持以下操作:

操作 描述
创建本地存储池 创建一个新的本地存储池。具体操作请参见创建本地存储池。
扩容 向存储池添加节点和磁盘。点击扩容,选择以下扩容方式,并在节点与磁盘中选择要添加的资源:
  • 添加节点与磁盘:选择尚未加入当前存储池的节点及其磁盘。
  • 为已有节点添加磁盘:为当前存储池中的节点添加新磁盘。
扩容时可修改简介,名称、存储模式和磁盘介质不可修改。节点与磁盘的选择要求请参见创建本地存储池。
Note:
  • 仅运行中的存储池支持扩容。
  • 仅支持添加节点和磁盘,不支持从存储池移除节点或磁盘。
  • 切换扩容方式后,需重新选择要添加的节点和磁盘。
本地存储池详情 点击存储池名称,进入详情页,可查看以下内容:
  • 总览:查看存储池状态、存储模式、磁盘介质、节点数、磁盘数等基本信息。
    Note: 存储池处于运行中状态时,仍可能存在异常节点或磁盘。请结合节点与磁盘中的资源状态确认存储池的可用情况。
  • 节点与磁盘:查看已加入存储池的节点、节点存储管理状态和存储用量,展开节点可查看其磁盘。LVM模式按节点显示已用和总容量;Device模式按节点显示已用和总磁盘数。
    Note: Device模式按整块磁盘分配,即使数据卷申请的容量小于磁盘容量,该磁盘也不能再分配给其他数据卷。
  • 存储类:查看关联的存储类。存储类的管理操作请参见管理存储类。
删除 删除本地存储池,清理存储池配置及相关磁盘上的存储信息。
Note:
  • 删除前需确保没有关联的存储类、数据卷、持久卷或快照,也没有未完成的数据卷或快照操作。如仍提示资源占用,请联系管理员处理残留的存储资源。
  • 扩容中的存储池不支持删除,请等待扩容完成。
  • 删除操作不可撤销,请确认相关数据无需保留。
  • 如存在异常或状态未知的节点、磁盘,建议恢复后再删除。若确认删除,无法访问的节点或磁盘上仍可能保留存储信息,重新使用前需由管理员清理。