以下是针对 mkfs.lustre 的详细用法说明及配置示例,涵盖 MGS/MGT、MDS/MDT、OSS/OST 等核心组件的配置场景。
一、基本概念
- MGS (Management Server): Lustre 系统的全局配置管理服务,存储文件系统元数据。
- MGT (Management Target): MGS 使用的存储设备(如磁盘分区)。
- MDS (Metadata Server): 管理文件系统的元数据(如目录结构、文件属性)。
- MDT (Metadata Target): MDS 使用的存储设备。
- OSS (Object Storage Server): 存储文件数据(对象)。
- OST (Object Storage Target): OSS 使用的存储设备。
二、MGS/MGT 配置
1. 创建 MGS 和 MGT
# 格式化磁盘 /dev/sdb 为 MGT
mkfs.lustre --fsname=myfs --mgs --reformat /dev/sdb
--mgs: 指定目标类型为 MGS。--fsname=myfs: 文件系统名称。--reformat: 强制重新格式化设备(若已存在 Lustre 数据)。
2. 带冗余的 MGS 配置(双节点)
# 主节点
mkfs.lustre --fsname=myfs --mgs --servicenode=192.168.1.10@tcp --servicenode=192.168.1.11@tcp /dev/sdb
# 备用节点
mkfs.lustre --fsname=myfs --mgs --servicenode=192.168.1.11@tcp --servicenode=192.168.1.10@tcp /dev/sdb
--servicenode: 指定服务节点 IP 和协议(如tcp或o2ib),实现故障转移。
三、MDS/MDT 配置
1. 单 MDS 单 MDT
# 格式化 /dev/sdc1 为 MDT
mkfs.lustre --fsname=myfs --mdt --mgsnode=192.168.1.10@tcp --index=0 /dev/sdc1
--mdt: 指定目标类型为 MDT。--mgsnode=192.168.1.10@tcp: 指向 MGS 的 IP 和协议。--index=0: MDT 的索引号(从 0 开始)。
2. 多 MDS(DNE 分布式命名空间)
# 第二个 MDT(第二个 MDS 节点)
mkfs.lustre --fsname=myfs --mdt --mgsnode=192.168.1.10@tcp --index=1 /dev/sdd1
--index=1: 第二个 MDT 的索引号,用于扩展元数据存储。
四、OSS/OST 配置
1. 单 OSS 单 OST
# 格式化 /dev/sde1 为 OST
mkfs.lustre --fsname=myfs --ost --mgsnode=192.168.1.10@tcp --index=0 /dev/sde1
--ost: 指定目标类型为 OST。--index=0: OST 的索引号(每个 OST 唯一)。
2. 单 OSS 多 OST
# 第一个 OST
mkfs.lustre --fsname=myfs --ost --mgsnode=192.168.1.10@tcp --index=0 /dev/sde1
# 第二个 OST(同一 OSS)
mkfs.lustre --fsname=myfs --ost --mgsnode=192.168.1.10@tcp --index=1 /dev/sdf1
3. 带冗余的 OSS 配置
# 主 OSS 节点
mkfs.lustre --fsname=myfs --ost --mgsnode=192.168.1.10@tcp --index=0 \
--servicenode=192.168.1.20@tcp --servicenode=192.168.1.21@tcp /dev/sde1
# 备用 OSS 节点
mkfs.lustre --fsname=myfs --ost --mgsnode=192.168.1.10@tcp --index=0 \
--servicenode=192.168.1.21@tcp --servicenode=192.168.1.20@tcp /dev/sde1
--servicenode: 指定 OSS 的主备节点实现故障转移。
五、高级配置
1. 指定网络接口
mkfs.lustre --fsname=myfs --ost --mgsnode=192.168.1.10@tcp \
--network=tcp --interface=eth1 /dev/sde1
--network=tcp: 指定使用 TCP 协议。--interface=eth1: 绑定到指定网络接口。
2. 设置存储参数
mkfs.lustre --fsname=myfs --ost --mgsnode=192.168.1.10@tcp \
--mkfsoptions="-O project_quota,big_journal" /dev/sde1
--mkfsoptions: 传递额外的mkfs参数(如启用配额)。
六、操作流程示例
-
初始化 MGS/MGT:
mkfs.lustre --fsname=myfs --mgs --reformat /dev/sdb -
创建 MDT:
mkfs.lustre --fsname=myfs --mdt --mgsnode=192.168.1.10@tcp --index=0 /dev/sdc1 -
创建多个 OST:
# OST 0 mkfs.lustre --fsname=myfs --ost --mgsnode=192.168.1.10@tcp --index=0 /dev/sde1 # OST 1 mkfs.lustre --fsname=myfs --ost --mgsnode=192.168.1.10@tcp --index=1 /dev/sdf1
七、注意事项
- 设备必须未挂载:格式化前确保设备未被使用。
- 索引唯一性:同一文件系统中 MDT/OST 的
--index必须唯一。 - 网络配置:确保 MGS、MDS、OSS 节点之间网络互通。
- 备份数据:
--reformat会清除设备原有数据。
通过上述示例,可灵活构建单节点或分布式高可用的 Lustre 文件系统。
浙公网安备 33010602011771号