目录
4.6 修改4台io节点的多路径multipath.conf 文件
8.1 客户端挂载不上,提示没有此设备,让检查模块是否加载,检查文件系统。
2. 客户端挂载不上,提示Is the MGS specification correct? Is the filesystem name correct?
IF upgrading,is the copid client log valid?
一、项目简介
本项目配置案例是由曙光4套DS800-G30磁盘阵列,4台IO服务器节点,DDN Lustre分布式文件系统商业版,共同组成曙光HPC集群共享文件系统。
二、磁盘阵列配置简介
组建每个柜子创建raid6+热备,然后创建逻辑卷如下:
注意:磁盘池创建时,勾选标准池,逻辑卷创建时,条带选择最大的一个(4M)。
建议:用2块ssd 做raid1或raid10用作mdt,ost至少raid5,建议raid6,每组raid建议8-10硬盘,raid建议不跨柜,建议每组raid创建1块或者多块专用热备(可根据现场条件选择)
2.1、第一套盘阵配置
2.2、第二套盘阵配置
2.3、第三套盘阵配置
2.4 、第四套盘阵配置
三、安装DDN Luster专用操作系统
在4台io节点上分别安装,这里使用服务器BMC安装
1.通过bmc,挂载镜像文件至虚拟光驱,直接安装即可。
镜像文件名称:es-5.0.0-server-centos-r3-x86_64.iso
安装的时候遇到硬盘选择不对的情况,在这个界面加入以下参数:install_dev=sda
安装完成后,进入操作系统,默认初始密码:DDNSolutions4U,修改成111111,方便调试,调试完成后,再改回复杂密码。
操作系统为无人值守自动安装,4台io节点安装完系统后,配置好管理网IP地址,就可以步骤文件系统了,管理网IP配置步骤不再赘述
四、安装luster文件系统前准备工作
4.1 刷新emulex HBA卡FW
FW文件名称:elxflashStandalone-linux-12.4.243.16-1.zip
刷新命令:
#unzip elxflashStandalone-linux-12.4.243.16-1.zip
#cp lancer_A12.4.243.11.grp ./elxflashStandalone-linux-12.4.243.16-1/firmware/
#cd elxflashStandalone-linux-12.4.243.16-1/
#cd lx
#./elxflash.sh /auto /up /p
4.2 检查IO节点IB驱动版本
系统自带版本4.5,注意:HPC集群客户端安装也要4.5最好。
注意:本套集群使用的一分二HDR 200转100 的光缆,需要刷新HCA卡的固件,然后配置交换机的一个参数,具体操作如下:
4.3 刷新HCA卡的固件
下载地址:
刷新方法:
#flint –d /dev/mst/mt4123_pciconf0 –i fw-ConnectX6-rel-20_26_1040-MCX653105A-ECA_Ax-UEFI-14.19.14-FlexBoot-3.5.803.bin b
#flint –d /dev/mst/ mt4123_pciconf0 q|grep PSID
4.4、配置IB交换机
当使用1分2线缆的时候,需要交换机端设置split模式,然后启动opensmd服务
4.6 编译内核启动文件
# rpm -ivh elx-lpfc-12.2.299.13-1_rhel7u6.src.rpm
#cd rpmbuild/ #########################################(/root下)
#cd SOURCES/
#tar xvzf lpfcdriver-35-12.2.299.13.tar.gz
#cd lpfcdriver-35-12.2.299.13/
#make
#cp lpfc.ko /lib/modules/3.10.0-957.12.2.el7_lustre.ddn1.x86_64/kernel/drivers/scsi/lpfc/
#cd /lib/modules/3.10.0-957.12.2.el7_lustre.ddn1.x86_64/kernel/drivers/scsi/lpfc/
#mv lpfc.ko.xz lpfc.ko.xz.orig
#xz lpfc.ko
#cd /boot/
#cp initramfs-3.10.0-957.12.2.el7_lustre.ddn1.x86_64.img initramfs-3.10.0-957.12.2.el7_lustre.ddn1.x86_64.img.bak
#vi /etc/dracut.conf
#dracut -f /boot/initramfs-3.10.0-957.12.2.el7_lustre.ddn1.x86_64.img 3.10.0-957.12.2.el7_lustre.ddn1.x86_64
#scp initramfs-3.10.0-957.12.2.el7_lustre.ddn1.x86_64.img io2:/root/
#scp initramfs-3.10.0-957.12.2.el7_lustre.ddn1.x86_64.img io3:/root/
#scp initramfs-3.10.0-957.12.2.el7_lustre.ddn1.x86_64.img io4:/root/
#reboot
4.6 修改4台io节点的多路径multipath.conf 文件
直接拷贝一份已经修改好的到/etc目录下,然后根据现场环境稍做修改即可。从86行开始,一定要对应好WWID 和alias名字,盘阵端划分卷的时候定义的名字这里就用上了。
然后每台io节点同步这个文件
4.7 修改exascaler.conf
拷贝/etc/ddn/exascaler.conf 这个文件到/etc目录下,并根据实际情况修改。然后同步到其它io节点。
本次设置的主机名分别是io1、io2、io3、io4,所以要修改这个文件中的主机名和ip地址。
这个文件里从15行往后,带有io1/2/3/4 或10.10. 字段的都修改一下,15行之前的不用改。
4.8 添加ha用户
每台io节点执行添加ha用户操作指令一遍:
原始信息:
删除原来的用户信息:
#userdel -r hacluster
创建用户信息
#mkdir /var/lib/heartbeat/cores
#groupadd hacluster -g 499
#useradd hacluster -u 499 -g 499 -c "heartbeat user" -d /var/lib/heartbeat/cores/hacluster -s /sbin/nologin
注意:准备工作基本做完了,最好重启一遍机器,再开始安装。
五、开始luster脚本安装及配置
5.1 在io节点命令行界面下直接执行:
#es_install
会出现一些交互,根据情况选择:基本都是yes,重启网络啥的可以选no,都yes也行。
每台io节点都要执行一遍。
5.2 配置corosyne的keygen,拷贝到其它机器
这步是从网上抄来的,跟据实际情况操作。我在部署的时候出现corosync服务异常,才执行的这步,可以先不用执行,跳过这步直接第3步。
5.3 在io1节点和io3节点执行以下命令:
#config_pacemark
hastatus查看 出现两个节点online 基本上就算安装成功了
5.4 启动cluster系统。
手动停止和启动HA的文件系统资源:
#cluster_resource --action start
#cluster_resource --action stop
检查mdt、ost挂载后的recovery状态:
#lustre_recovery_status.sh
查看HA工作状态:hastatus
到这里基本上server端就部署完成了。
六、客户端编译安装
HPC集群的管理、登录、计算节点都需要编译安装
- 确保ib驱动版本是4.5
- 编译客户端
6.1 Lustre客户端编译:
解压缩源码包,然后到源码包目录下执行:
#./configure --disable-server --with-linux=/usr/src/kernel/3xxxxx --with-o2ib=/usr/src/ofa_kernel/default
#make
#make rpms
编译完毕后会生成一堆rpm包,客户端只需要安装如下两个包:
补充:编译可能需要先安装以下包:
挂载命令
# mount -t lustre 12.12.12.22@o2ib:12.12.12.23@o2ib:/pfs /public
七、如何重新安装Luster
1、卸载掉所有客户端,使用umount /挂载点 就可以。
2、停止lustre服务。
#cluster resource --action stop
3、在每台io节点上执行清理命令。
#cibadmin -E -force
4、查看lvm确保里面没有相关的分区,如:mds mdt等。
#lvm
查看命令 lvdisplay、vgdisplay,删除命令 lvmove、vgmove.
注意:不要删错了系统分区,然后就可以重新es_install
八、常见问题
8.1 客户端挂载不上,提示没有此设备,让检查模块是否加载,检查文件系统。
解决思路:
按照提示检查模块是否加载,lsmod|grep lnet lsmod|grep lustre ,如未加载,用modprobe命令加载即可,如果加载模块报错,检查lustre.conf是否正确配置,如果这些都没问题,检查客户端IB驱动ofed是否同IO节点一致,如果不一致,请确保一致,因为客户端程序是在IB网络基础上编译的,确定客户端程序是在哪个ib驱动版本下编译的。更换完驱动版本以后,需要重新安装rpm包,手动加载模块后,挂载。
2. 客户端挂载不上,提示Is the MGS specification correct? Is the filesystem name correct?
IF upgrading,is the copid client log valid?
按照问题的排查思路排查lustre配置文件,lustre相关模块是否正常加载,如果还是不行,重新编译客户端安装。