tunefs.lustre 是 Lustre 文件系统中用于调整存储目标(如 MGT、MDT、OST)配置的关键工具,通常在目标设备​​卸载状态​​下操作。以下结合其核心参数分类说明使用方法及典型场景:


一、​​核心参数分类与用法​

1. ​​目标类型标识​

  • --mgs​:标识设备为管理服务(MGS)。

  • --nomgs​:关闭 MDT 上的 MGS 服务(适用于组合目标)。

  • --ost/--mdt​:指定目标类型(需与 --index 配合)。

2. ​​文件系统标识​

  • --fsname=<name>​:指定文件系统名称(≤8字符),如 --fsname=fs1。​​必需项​​(除 MGS 外)。

  • --index=<N>​:设置目标索引号(如 MDT0000 的 0)。支持十进制或十六进制(0x0)。

3. ​​MGS 节点配置​

  • --mgsnode=<NID>​:指定 MGS 的网络标识(NID),格式如 192.168.0.1@tcp0。​​OST/MDT 必需项​​。

  • --failnode=<NID>​:设置故障转移节点(互斥于 --servicenode)。

  • --servicenode=<NID>​:指定多个服务节点(负载均衡)。

4. ​​参数管理​

  • --param <key>=<value>​:设置永久参数(重启生效):

    tunefs.lustre --param="sys.timeout=50" /dev/sda1  # 修改I/O超时时间
    tunefs.lustre --param="failover.mode=failout" /dev/ost1  # 设置OST故障处理模式
    
  • --erase-param <key>​:删除单个参数。

  • --erase-params​:清除​​所有旧参数​​,需与 --param 联用重置配置:

    tunefs.lustre --erase-params --param="new_param=value" /dev/sdb
    

5. ​​高级操作​

  • --writeconf​:​​强制重建配置文件​​(修复损坏的 mountdata 等)。​​注意​​:此操作需卸载所有相关目标,可能导致配置重置。

  • --rename=<new_fsname>​:修改文件系统名称(需全局唯一)。

  • --backfstype=zfs​:指定 ZFS 后端存储,需配合池名/数据集名(如 tank/ost1)而非设备路径。


二、​​典型操作场景​

1. ​​修改 OST 故障转移节点​

tunefs.lustre --ost --fsname=fs1 --index=0 --mgsnode=192.168.0.10@tcp0 \
              --param="failover.node=192.168.0.11@tcp0" /dev/sda1

​效果​​:当主节点故障时,OST0000 自动切换到备用节点。

2. ​​修复损坏的配置文件​

tunefs.lustre --writeconf --fsname=fs1 --index=0 --mgsnode=192.168.0.10@tcp0 /dev/ost1

​场景​​:因掉电导致 OST 无法挂载时,重建 CONFIGS/ 目录下的元数据。

3. ​​调整 ZFS 后端存储参数​

tunefs.lustre --backfstype=zfs --fsname=fs1 --index=1 \
              --param="zfs.lz4_compress=1" tank/ost1

​效果​​:启用 LZ4 压缩优化存储效率。


三、​​参数使用注意事项​

  1. ​操作前提​​:目标设备必须​​卸载​​(umount),否则修改无效。

  2. ​参数继承​​:--param 设置的参数会覆盖旧值,但需重启服务生效。

  3. ​ZFS 专用语法​​:使用池名/数据集名时,需省略设备路径(如 /dev/sda)。

  4. ​风险操作​​:--writeconf--erase-params 可能导致配置丢失,操作前建议备份。


四、​​常用参数速查表​

​参数​ ​作用​ ​示例​
--param <key>=<value> 设置永久参数 --param="lov.stripesize=4M"
--erase-params 清除所有旧参数 配合 --param 重置配置
--writeconf 重建配置文件(修复用) 修复损坏的 mountdata
--failnode=<NID> 指定故障转移节点 --failnode=192.168.1.2@tcp0
--backfstype=zfs 声明 ZFS 后端存储 需搭配池名(如 tank/ost1

完整参数详见官方文档或执行 tunefs.lustre --help

posted on 2025-07-09 15:09  LeeHang  阅读(78)  评论(0)    收藏  举报