Lustre 分布式并行文件系统部署
一、Lustre简介
Lustre 是一个具有高可用、高性能、可扩展的分布式并行文件系统。主要由 Manage Server、Meta Data Server 和 Data Server 组成。详细介绍可以参见 Lustre 官网 。
常用命令
modprobe lustre:加载Lustre模块
lustre_rmmod:去除Lustre模块
lctl:通过ioctl接口直接控制Lustre属性,允许调整相关的不同配置、管理和调试等属性。
lctl lustre_build_version:显示Lustre版本
lctl list_nids:显示网络ID情况
lctl list_param:显示配置参数
lctl dl:显示所有文件系统组件
lnetctl:控制和显示网络信息
lnetctl net show:显示网络信息
lnetctl net add --net tcp0 --if eth0:添加网络
lnetctl net add --net tcp0 --if eth0:添加网络
lnetctl net del --net tcp0:删除网络
lnetctl route show:显示路由信息
lfs:主要对与文件相关的属性进行配置及查询
lfs df:客户端上运行时,显示各MDT、OST等空间占用情况
lfs mdts /home:客户端上运行时,显示/home使用的MDT情况
lfs osts /home:客户端上运行时,显示/home使用的OST情况
tunefs.lustre:在服务端运行,显示或调整mkfs.lustre生成的Lustre目标磁盘配置
tunefs.lustre /dev/mapper/mpathb:显示磁盘信息
tunefs.lustre --erase-params --param="failover.node=192.168.100.1@tcp0:192.168.100.2@tcp0" /dev/mapper/mpathb:修改配置
tunefs.lustre --writeconf /dev/mapper/mpathb:将修改后的配置写入
多挂载保护(Multiple-Mount Protection)
tune2fs -O mmp /dev/block_device:禁止块设备同时被多个节点mount
tune2fs -O ^mmp /dev/block_device:允许块设备同时被多个节点mount
强制卸载
umount -f /public :系统无进程夯住,执行强制卸载命令
umount -f /home
集群管理
这个命令必须在MGS上运行,查询Lustre文件系统中的所有节点
这个命令必须在MGS上运行,获取所有OST节点的名称和状态
lctl dl命令获取挂载的Lustre设备列表,并查看运行过程
在客户端查询挂载目录,获取所有OST节点的名称和状态
在客户端查询所有OST挂载情况及使用量
在客户端或者MDT节点上激活运行完好,状态是 INACTIVE 的OST节点,通过lctl dl 命令获取设备号
用lctl deactivate命令使完整的 OST 脱机停用
Lustre文件系统损坏,恢复操作
参考文档
https://www.cnblogs.com/zl-py/p/11274562.html
第一步获取设备列表
第二步查看损坏OST节点的配置信息
第三步修改OST节点的配置信息,把active 和max_create_count的值都设置为0
第四步再次查看状态由UP变为IN
第五步再将磁盘格式化为lustre格式
备注: --writeconf 必要参数,如果lustre版本是最新版的可以将--writeconf 替换为--replace
第六步再次挂载ost
第七步在mds节点上将active和max_create_count 恢复到原来的值
第八步在管理节点或者客户重新挂载即可
网络检测(LNet)
测试连通性
查询路由配置
二、Lustre 安装
Lustre 主要由 MGS、MDS、OSS 和 Client 组成
本次部署方案为:配置MGS, MDS为一台,9台 OSS 和36台 客户端 。
一、服务端软件安装
一、添加YUM仓库,在/etc/yum.repos.d/目录下创建 lustre.repo文件
注意:设置YUM源,需要查询关于Lustre支持的内核列表,请参阅Lustre的变动日志
IB网络版YUM源
TCP网络版YUM源
二、安装 epel 源:
三、删除相关软件包,清除yum源,更新内核
四、安装 e2fsprogs :
四、安装带Lustre补丁的内核包。通过禁用OS仓库,确保为内核包选择Lustre仓库:
重启机器:
安装LDISKFSkmod和其他Lustre软件包
加载相关的内核模块:
如有错误,排查错误日志命令:
查看安装的版本
在继续配置LNet之前,需要从内核卸载Lustre模块
二、客户端软件安装
Lustre客户端软件包括一个包含内核模块的包,以及用于管理客户端软件的用户空间工具的其他包,Lustre客户端不需要“带Lustre补丁”的内核,这简化了安装。
注意:关于Lustre支持的内核列表,请参阅Lustre的变动日志
重启机器:
查看内核版本
安装 Lustre Client 相关软件包:
加载内核模块:
查看安装的版本
验证后,从内核卸载Lustre模块:
如下步骤不是必须操作,如报错卸载重新安装可参考如下步骤参考教程:(https://blog.csdn.net/qq_25605377/article/details/85845139)
注意:卸载完成,在安装OFED后必须重启,否则配置网络无法识别o2ib内核模块
三、Lustre(LNet网络配置)
一、关闭 SELinux 和配置防火墙
二、服务端LNet网络配置步骤:
三、客户端LNet网络配置步骤:
静态配置
IB网络版
TCP网络版
三、Lustre 服务端部署
注意:所有部署操作,必须在配置完LNet网络之后进行否则导致无法连接、挂载。
一、磁盘分区
注意:MGS和MDS 节点及OSS节点分区命令一致,初始化和挂载命令不同。
分区完成后,在管理服务器上格式化磁盘为管理服务(MGS)和元数据服务(MDS)
其中
fsname指定了文件系统名称,index表示MDT的序号,每个MDT或者OST的序号必须唯一。
二、MGS和MDS 节点部署
MGS和MDS 节点同一台服务器格式化如下:
MGS和MDS 创建挂载目录,启动服务并挂载
写入开机挂载
注意:只能执行一遍,/etc/fstab 文件如有错误,可能导致无法开机
MGS和MDS 节点
三、OSS节点部署
OSS节点格式化如下,index序号需要变更:
OSS 创建挂载目录,启动服务并挂载
写入开机挂载
注意:只能执行一遍,/etc/fstab 文件如有错误,可能导致无法开机
OSS节点
四、Lustre 客户端部署
注意:所有部署操作,必须在配置LNet网络完成之后进行否则导致无法连接、挂载。
一、客户端挂载:
注意:批量挂载客户端之前,需要先手动在某一台客户端挂载,创建对应的其他下层挂载目录
写入开机挂载
注意:只能执行一遍,/etc/fstab 文件如有错误,可能导致无法开机
IB网络版
TCP网络版
五、安装批量部署工具
所有部署调试完毕,执行多台批量部署,其中一些参数,细节,记得在批量部署时记得调整
一、批量免密
二、批量修改主机名
三、批量获取主机名和IP重定向写入/etc/hosts文件
批量安装IB网络驱动程序,及初始化安装一些依赖
注意:下载驱动版本一定要下载对应系统版本否则内核无法加载,OFED驱动下载网站
IB网络数据交互测试
参考文档
https://blog.csdn.net/ljlfather/article/details/102925954
https://blog.csdn.net/bandaoyu/article/details/115798693
四、批量获取内网IP并修改IB 网段
六、常见问题处理
问题排查参考连接:
https://blog.51cto.com/u_9099998/2445847
最后更新于
这有帮助吗?